From 12044adadb5eb852adf0714a347d3da0111ae417 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 16:21:43 +0200 Subject: [PATCH 001/511] test commit test.txt --- test.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test.txt diff --git a/test.txt b/test.txt new file mode 100644 index 00000000..16b14f5d --- /dev/null +++ b/test.txt @@ -0,0 +1 @@ +test file From 6a1ca576a61c6068d04aba681a622c6492844e90 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 16:26:24 +0200 Subject: [PATCH 002/511] test commit 3 --- test.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100644 test.txt diff --git a/test.txt b/test.txt deleted file mode 100644 index 16b14f5d..00000000 --- a/test.txt +++ /dev/null @@ -1 +0,0 @@ -test file From d5e9268a9f888d1b466efc0582a467e88be2d6ae Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 16:48:42 +0200 Subject: [PATCH 003/511] another test commit --- test.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test.txt diff --git a/test.txt b/test.txt new file mode 100644 index 00000000..ccb839d2 --- /dev/null +++ b/test.txt @@ -0,0 +1 @@ +again a test From 9da75ae3cc5447f157a40fecfdda9f45fd5ccc08 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 17:09:57 +0200 Subject: [PATCH 004/511] test commit --- test.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/test.txt b/test.txt index ccb839d2..621f3328 100644 --- a/test.txt +++ b/test.txt @@ -1 +1,2 @@ +new name again a test From 24b43baf7b26dff9847a78e55c57f4f0d04083c6 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 17:34:19 +0200 Subject: [PATCH 005/511] testbranch commit --- test2.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test2.txt diff --git a/test2.txt b/test2.txt new file mode 100644 index 00000000..0cb1a4e3 --- /dev/null +++ b/test2.txt @@ -0,0 +1 @@ +testbranch file From 268761d2b232b89631e7953143812494b12762bb Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 17:37:59 +0200 Subject: [PATCH 006/511] commit test master --- test3.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 test3.txt diff --git a/test3.txt b/test3.txt new file mode 100644 index 00000000..2badfc2d --- /dev/null +++ b/test3.txt @@ -0,0 +1 @@ +new commit master From d562c4f2e993fec0f26dd9c9b3237500dc89c4e6 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 6 Oct 2015 18:50:08 +0200 Subject: [PATCH 007/511] starting QL advection schemes --- Csrc/momentum_advection_ql.h | 197 +++++++++++++++++++++++++++++++++++ Csrc/scalar_advection_ql.h | 141 +++++++++++++++++++++++++ MomentumAdvection_QL.pxd | 15 +++ MomentumAdvection_QL.pyx | 149 ++++++++++++++++++++++++++ ScalarAdvection_QL.pxd | 16 +++ ScalarAdvection_QL.pyx | 89 ++++++++++++++++ setup.py | 10 ++ 7 files changed, 617 insertions(+) create mode 100644 Csrc/momentum_advection_ql.h create mode 100644 Csrc/scalar_advection_ql.h create mode 100644 MomentumAdvection_QL.pxd create mode 100644 MomentumAdvection_QL.pyx create mode 100644 ScalarAdvection_QL.pxd create mode 100644 ScalarAdvection_QL.pyx diff --git a/Csrc/momentum_advection_ql.h b/Csrc/momentum_advection_ql.h new file mode 100644 index 00000000..eb2d7016 --- /dev/null +++ b/Csrc/momentum_advection_ql.h @@ -0,0 +1,197 @@ +#pragma once +#include "grid.h" +#include "advection_interpolation.h" +#include + +void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict vel_advected, double* restrict vel_advecting, + double* restrict flux, ssize_t d_advected, ssize_t d_advecting){ + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp1_ing = stencil[d_advected]; + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2 * sp1_ed ; + const ssize_t sp3_ed = 3 * sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + const ssize_t sm2_ed = -2*sp1_ed; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2 * sp1_ing; + const ssize_t sp3_ing = 3 * sp1_ing; + const ssize_t sm1_ing = -sp1_ing; + const ssize_t sm2_ing = -2*sp1_ing; + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + + if(d==2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + if(d==2){ + for(ssize_t i=imin;i Date: Thu, 21 Jan 2016 15:24:46 +0100 Subject: [PATCH 008/511] changes in MomAd_QL --- ScalarAdvection_QL.pyx | 1 + 1 file changed, 1 insertion(+) diff --git a/ScalarAdvection_QL.pyx b/ScalarAdvection_QL.pyx index b9071406..c40adbe4 100644 --- a/ScalarAdvection_QL.pyx +++ b/ScalarAdvection_QL.pyx @@ -21,6 +21,7 @@ cdef extern from "scalar_advection.h": void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil cdef extern from "scalar_advection_ql.h": void compute_eddy_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil + cdef class ScalarAdvection: def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): try: From 2402a3d596fd4981a9bc300d9246b650b22f3e71 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 21 Jan 2016 17:41:16 +0100 Subject: [PATCH 009/511] updating MomentumAdvection_QL to current version of normal advection scheme --- MomentumAdvection_QL.pyx | 73 ++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 44 deletions(-) diff --git a/MomentumAdvection_QL.pyx b/MomentumAdvection_QL.pyx index 20a97134..d7d95785 100644 --- a/MomentumAdvection_QL.pyx +++ b/MomentumAdvection_QL.pyx @@ -8,7 +8,7 @@ cimport Grid cimport PrognosticVariables cimport ParallelMPI cimport ReferenceState -from FluxDivergence cimport momentum_flux_divergence +#from FluxDivergence cimport momentum_flux_divergence from NetCDFIO cimport NetCDFIO_Stats @@ -16,11 +16,13 @@ import numpy as np cimport numpy as np cdef extern from "momentum_advection.h": - void compute_advective_fluxes_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *vel_advected, double *vel_advecting, - double *flux, Py_ssize_t d_advected, Py_ssize_t d_advecting, Py_ssize_t scheme) nogil -cdef extern from "momentum_advection_ql.h": - void compute_eddy_fluxes_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *vel_advected, double *vel_advecting, - double *flux, Py_ssize_t d_advected, Py_ssize_t d_advecting, Py_ssize_t scheme) nogil + void compute_advective_tendencies_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, + double *alpha0, double *alpha0_half, double *vel_advected, + double *vel_advecting, double *tendency, Py_ssize_t d_advected, + Py_ssize_t d_advecting, Py_ssize_t scheme) nogil +# cdef extern from "momentum_advection_ql.h": +# void compute_eddy_fluxes_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *vel_advected, double *vel_advecting, +# double *flux, Py_ssize_t d_advected, Py_ssize_t d_advecting, Py_ssize_t scheme) nogil cdef class MomentumAdvection: def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): try: @@ -34,16 +36,9 @@ cdef class MomentumAdvection: return cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.flux = np.zeros( - (PV.nv_velocities * - Gr.dims.npg * - Gr.dims.dims, - ), - dtype=np.double, - order='c') - for i in xrange(Gr.dims.dims): - NS.add_profile(PV.velocity_names_directional[i] + '_flux_z',Gr,Pa) + #for i in xrange(Gr.dims.dims): + # NS.add_profile(PV.velocity_names_directional[i] + '_flux_z',Gr,Pa) return @@ -58,9 +53,7 @@ cdef class MomentumAdvection: # Shift to beginning of advecting velocity componentin the # PV.values array Py_ssize_t shift_advecting - # Shift to the i_advecting, i_advected flux component in the - # self.flux array - Py_ssize_t shift_flux + for i_advected in xrange(Gr.dims.dims): # Compute the shift to the starting location of the advected @@ -73,37 +66,29 @@ cdef class MomentumAdvection: shift_advecting = PV.velocity_directions[ i_advecting] * Gr.dims.npg - # Compute the shift to the starting location of the advecting - # flux. - shift_flux = i_advected * Gr.dims.dims * \ - Gr.dims.npg + i_advecting * Gr.dims.npg - # Compute the fluxes - compute_advective_fluxes_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], - &PV.values[shift_advected], &PV.values[shift_advecting], &self.flux[shift_flux], - i_advected, i_advecting, self.order) - # Compute flux divergence - momentum_flux_divergence(&Gr.dims, &Rs.alpha0[0], &Rs.alpha0_half[0], &self.flux[shift_flux], - &PV.tendencies[shift_advected], i_advected, i_advecting) + compute_advective_tendencies_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], &Rs.alpha0[0], &Rs.alpha0_half[0], + &PV.values[shift_advected], &PV.values[shift_advecting], + &PV.tendencies[shift_advected], i_advected, i_advecting, self.order) return cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - cdef: - Py_ssize_t i_advected, i_advecting = 2, shift_flux, k - double[:] tmp - double [:] tmp_interp = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') - - - for i_advected in xrange(Gr.dims.dims): - shift_flux = i_advected * Gr.dims.dims* Gr.dims.npg + i_advecting * Gr.dims.npg - tmp = Pa.HorizontalMean(Gr, &self.flux[shift_flux]) - if i_advected < 2: - for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): - tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) - else: - tmp_interp[:] = tmp[:] - NS.write_profile(PV.velocity_names_directional[i_advected] + '_flux_z', tmp_interp[Gr.dims.gw:-Gr.dims.gw], Pa) + # cdef: + # Py_ssize_t i_advected, i_advecting = 2, shift_flux, k + # double[:] tmp + # double [:] tmp_interp = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + # + # + # for i_advected in xrange(Gr.dims.dims): + # shift_flux = i_advected * Gr.dims.dims* Gr.dims.npg + i_advecting * Gr.dims.npg + # tmp = Pa.HorizontalMean(Gr, &self.flux[shift_flux]) + # if i_advected < 2: + # for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): + # tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) + # else: + # tmp_interp[:] = tmp[:] + # NS.write_profile(PV.velocity_names_directional[i_advected] + '_flux_z', tmp_interp[Gr.dims.gw:-Gr.dims.gw], Pa) return From 1ad894fd747918822a354e54fdac7eb405f47574 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 21 Jan 2016 17:46:13 +0100 Subject: [PATCH 010/511] updating to current version of pressel --- Csrc/momentum_advection_ql.h | 233 +++++++++++------------------------ 1 file changed, 73 insertions(+), 160 deletions(-) diff --git a/Csrc/momentum_advection_ql.h b/Csrc/momentum_advection_ql.h index eb2d7016..6d8db2cc 100644 --- a/Csrc/momentum_advection_ql.h +++ b/Csrc/momentum_advection_ql.h @@ -1,197 +1,110 @@ #pragma once #include "grid.h" #include "advection_interpolation.h" +#include "momentum_advection_weno.h" +#include "momentum_advection_weno_pt.h" +#include "momentum_advection_central.h" +#include "momentum_advection_central_ws.h" +#include "momentum_advection_central_ml.h" +#include "momentum_advection_central_pt.h" +#include "flux_divergence.h" #include -void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict vel_advected, double* restrict vel_advecting, - double* restrict flux, ssize_t d_advected, ssize_t d_advecting){ - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp1_ing = stencil[d_advected]; - - if (d_advected != 2 && d_advecting !=2){ - for(ssize_t i=imin;inlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp2_ed = 2 * sp1_ed ; - const ssize_t sp3_ed = 3 * sp1_ed ; - const ssize_t sm1_ed = -sp1_ed ; - const ssize_t sm2_ed = -2*sp1_ed; - - const ssize_t sp1_ing = stencil[d_advected]; - const ssize_t sp2_ing = 2 * sp1_ing; - const ssize_t sp3_ing = 3 * sp1_ing; - const ssize_t sm1_ing = -sp1_ing; - const ssize_t sm2_ing = -2*sp1_ing; - - if (d_advected != 2 && d_advecting !=2){ - for(ssize_t i=imin;i Date: Fri, 22 Jan 2016 20:22:55 +0100 Subject: [PATCH 011/511] updating *Advection_QL.* files to upstream --- MomentumAdvection_QL.pxd | 1 - ScalarAdvection_QL.pxd | 9 +++-- ScalarAdvection_QL.pyx | 73 ++++++++++++++++++++++++++++++++++------ 3 files changed, 69 insertions(+), 14 deletions(-) diff --git a/MomentumAdvection_QL.pxd b/MomentumAdvection_QL.pxd index c58618f0..d0ed6bbb 100644 --- a/MomentumAdvection_QL.pxd +++ b/MomentumAdvection_QL.pxd @@ -6,7 +6,6 @@ from NetCDFIO cimport NetCDFIO_Stats cdef class MomentumAdvection: cdef: - double[:] flux Py_ssize_t order cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) diff --git a/ScalarAdvection_QL.pxd b/ScalarAdvection_QL.pxd index 6a148ebd..3b835e9b 100644 --- a/ScalarAdvection_QL.pxd +++ b/ScalarAdvection_QL.pxd @@ -2,15 +2,20 @@ cimport Grid cimport PrognosticVariables cimport ParallelMPI cimport ReferenceState +cimport DiagnosticVariables +cimport TimeStepping from NetCDFIO cimport NetCDFIO_Stats - +from Thermodynamics cimport LatentHeat cdef class ScalarAdvection: cdef: double [:] flux Py_ssize_t order + Py_ssize_t order_sedimentation + double (*L_fp)(double T, double Lambda) nogil + double (*Lambda_fp)(double T) nogil cpdef initialize(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) \ No newline at end of file diff --git a/ScalarAdvection_QL.pyx b/ScalarAdvection_QL.pyx index c40adbe4..47b64299 100644 --- a/ScalarAdvection_QL.pyx +++ b/ScalarAdvection_QL.pyx @@ -8,9 +8,12 @@ cimport Grid cimport PrognosticVariables cimport ParallelMPI cimport ReferenceState +cimport DiagnosticVariables +cimport TimeStepping from NetCDFIO cimport NetCDFIO_Stats from FluxDivergence cimport scalar_flux_divergence +from Thermodynamics cimport LatentHeat import numpy as np cimport numpy as np @@ -18,12 +21,22 @@ cimport numpy as np import cython cdef extern from "scalar_advection.h": - void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil + void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, + double *scalar, double* flux, int d, int scheme) nogil cdef extern from "scalar_advection_ql.h": void compute_eddy_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil + void compute_qt_sedimentation_s_source(Grid.DimStruct *dims, double *p0_half, double* rho0_half, double *flux, + double* qt, double* qv, double* T, double* tendency, double (*lam_fp)(double), + double (*L_fp)(double, double), double dx, Py_ssize_t d)nogil + + cdef class ScalarAdvection: - def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): + def __init__(self, namelist, LatentHeat LH, ParallelMPI.ParallelMPI Pa): + + self.L_fp = LH.L_fp + self.Lambda_fp = LH.Lambda_fp + try: self.order = namelist['scalar_transport']['order'] except: @@ -31,10 +44,16 @@ cdef class ScalarAdvection: Pa.root_print('Killing simulation now!') Pa.kill() Pa.kill() + try: + self.order_sedimentation = namelist['scalar_transport']['order_sedimentation'] + except: + self.order_sedimentation = self.order + return cpdef initialize(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + self.flux = np.zeros((PV.nv_scalars*Gr.dims.npg*Gr.dims.dims,),dtype=np.double,order='c') #Initialize output fields @@ -45,32 +64,64 @@ cdef class ScalarAdvection: return - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa): + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): cdef: Py_ssize_t d, i, vel_shift,scalar_shift, scalar_count = 0, flux_shift + Py_ssize_t s_shift = PV.get_varshift(Gr,'s') + Py_ssize_t t_shift = DV.get_varshift(Gr,'temperature') + Py_ssize_t ql_shift, qv_shift, qt_shift for i in xrange(PV.nv): #Loop over the prognostic variables if PV.var_type[i] == 1: #Only compute advection if variable i is a scalar scalar_shift = i * Gr.dims.npg + #No rescaling of fluxes for d in xrange(Gr.dims.dims): #Loop over the cardinal direction #The flux has a different shift since it is only for the scalars flux_shift = scalar_count * (Gr.dims.dims * Gr.dims.npg) + d * Gr.dims.npg #Make sure that we get the velocity components in the correct order + #Check for a scalar-specific velocity + sc_vel_name = PV.velocity_names_directional[d] + '_' + PV.index_name[i] + if sc_vel_name in DV.name_index: + vel_shift = DV.get_varshift(Gr, sc_vel_name) + if sc_vel_name == 'w_qt': + ql_shift = DV.get_varshift(Gr,'ql') + qt_shift = PV.get_varshift(Gr,'qt') + qv_shift = DV.get_varshift(Gr,'qv') + + compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], + &DV.values[ql_shift],&self.flux[flux_shift],d,self.order_sedimentation) + scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], + &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) + + compute_qt_sedimentation_s_source(&Gr.dims, &Rs.p0_half[0], &Rs.rho0_half[0], &self.flux[flux_shift], + &PV.values[qt_shift], &DV.values[qv_shift], &DV.values[t_shift], + &PV.tendencies[s_shift], self.Lambda_fp,self.L_fp, Gr.dims.dx[d],d) + else: + + # print(sc_vel_name, ' detected as sedimentation velocity') + #First get the tendency associated with the sedimentation velocity + compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], + &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) + scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], + &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) + + + # now the advective flux for all scalars vel_shift = PV.velocity_directions[d]*Gr.dims.npg - compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&PV.values[vel_shift], - &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order) - + &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order) scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], - &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) + &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) + + scalar_count += 1 return - + cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - + cdef: Py_ssize_t scalar_count = 0, i, d = 2, flux_shift, k double[:] tmp @@ -78,7 +129,7 @@ cdef class ScalarAdvection: for i in xrange(PV.nv): if PV.var_type[i] == 1: - flux_shift = scalar_count * Gr.dims.npg + d* Gr.dims.npg + flux_shift = scalar_count * (Gr.dims.dims * Gr.dims.npg) + d * Gr.dims.npg tmp = Pa.HorizontalMean(Gr, &self.flux[flux_shift]) for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) @@ -86,5 +137,5 @@ cdef class ScalarAdvection: scalar_count += 1 - + return From 6337c927da8ad9488b5e1d3c1bf268f694521bf7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 22 Jan 2016 20:34:55 +0100 Subject: [PATCH 012/511] adding Soares Case to namelist generation file --- .../MomentumAdvection_QL.pxd | 0 .../MomentumAdvection_QL.pyx | 0 .../ScalarAdvection_QL.pxd | 0 .../ScalarAdvection_QL.pyx | 0 generate_namelist.py | 85 +++++++++++++++++++ setup.py | 18 ++-- 6 files changed, 94 insertions(+), 9 deletions(-) rename MomentumAdvection_QL.pxd => BM_files/MomentumAdvection_QL.pxd (100%) rename MomentumAdvection_QL.pyx => BM_files/MomentumAdvection_QL.pyx (100%) rename ScalarAdvection_QL.pxd => BM_files/ScalarAdvection_QL.pxd (100%) rename ScalarAdvection_QL.pyx => BM_files/ScalarAdvection_QL.pyx (100%) diff --git a/MomentumAdvection_QL.pxd b/BM_files/MomentumAdvection_QL.pxd similarity index 100% rename from MomentumAdvection_QL.pxd rename to BM_files/MomentumAdvection_QL.pxd diff --git a/MomentumAdvection_QL.pyx b/BM_files/MomentumAdvection_QL.pyx similarity index 100% rename from MomentumAdvection_QL.pyx rename to BM_files/MomentumAdvection_QL.pyx diff --git a/ScalarAdvection_QL.pxd b/BM_files/ScalarAdvection_QL.pxd similarity index 100% rename from ScalarAdvection_QL.pxd rename to BM_files/ScalarAdvection_QL.pxd diff --git a/ScalarAdvection_QL.pyx b/BM_files/ScalarAdvection_QL.pyx similarity index 100% rename from ScalarAdvection_QL.pyx rename to BM_files/ScalarAdvection_QL.pyx diff --git a/generate_namelist.py b/generate_namelist.py index b19643c9..e6284e9e 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -30,6 +30,8 @@ def main(): namelist = SMOKE() elif case_name == 'Rico': namelist = Rico() + elif case_name == 'Soares': + namelist = Soares() else: print('Not a vaild case name') exit() @@ -758,6 +760,89 @@ def Rico(): return namelist + +def Soares(): + + namelist = {} + + namelist['grid'] = {} + namelist['grid']['dims'] = 3 + # Soares (2004): domain size = 6400 x 6400 m, domain height = 3000 (?) m; dx = ?, dy = ?, dz = 20 m + # Nieuwstadt: domain size = ?, domain height = 2400m; dx = dy = 60 m, dz = 50-60 m + # IOP Paper, old code: domain size = 6400 x 6400 m, domain height = 3750 m + namelist['grid']['nx'] = 256 # IOP + namelist['grid']['ny'] = 256 # IOP + namelist['grid']['nz'] = 150 # IOP + namelist['grid']['gw'] = 3 # for 2nd order + namelist['grid']['dx'] = 25.0 # IOP + namelist['grid']['dy'] = 25.0 # IOP + namelist['grid']['dz'] = 25.0 # IOP + + namelist['mpi'] = {} + namelist['mpi']['nprocx'] = 1 + namelist['mpi']['nprocy'] = 1 + namelist['mpi']['nprocz'] = 1 + + namelist['time_stepping'] = {} + namelist['time_stepping']['ts_type'] = 3 # seems to be 3 in all cases??? + namelist['time_stepping']['cfl_limit'] = 0.3 # default: 0.7; IOP: 0.3 + namelist['time_stepping']['dt_initial'] = 10.0 + namelist['time_stepping']['dt_max'] = 10.0 + namelist['time_stepping']['t_max'] = 6*3600.0 + + namelist['thermodynamics'] = {} + namelist['thermodynamics']['latentheat'] = 'constant' # seems to be constant in all cases and NOWHERE called??? + + namelist['microphysics'] = {} + namelist['microphysics']['scheme'] = 'None_Dry' # ??? + namelist['microphysics']['phase_partitioning'] = 'liquid_only' # seems to be this in all cases??? + + namelist['sgs'] = {} + namelist['sgs']['scheme'] = 'Smagorinsky' + + namelist['diffusion'] = {} + namelist['diffusion']['qt_entropy_source'] = False # seems to be set to False for all cases??? + + # 2 = second_order_m + # 32 = second_order_ml_m + namelist['momentum_transport'] = {} + namelist['momentum_transport']['order'] = 2 + # 2 = second_order_a + namelist['scalar_transport'] = {} + namelist['scalar_transport']['order'] = 2 + + namelist['damping'] = {} + namelist['damping']['scheme'] = 'Rayleigh' # no more 'DampingToDomainMean' ??? + namelist['damping']['Rayleigh'] = {} + namelist['damping']['Rayleigh']['gamma_r'] = 0.02 + namelist['damping']['Rayleigh']['z_d'] = 800.0 # ??? depth of damping layer? + + namelist['output'] = {} + namelist['output']['output_root'] = './' + + namelist['restart'] = {} + namelist['restart']['output'] = True + namelist['restart']['init_from'] = False + namelist['restart']['input_path'] = './' + namelist['restart']['frequency'] = 600.0 + + namelist['stats_io'] = {} + namelist['stats_io']['stats_dir'] = 'stats' + namelist['stats_io']['auxiliary'] = ['None'] + namelist['stats_io']['frequency'] = 900.0 + + namelist['fields_io'] = {} + namelist['fields_io']['fields_dir'] = 'fields' + namelist['fields_io']['frequency'] = 1800.0 + namelist['fields_io']['diagnostic_fields'] = ['temperature','viscosity'] # defines diagnostic variable output fields (progn. variables output in restart files?!) + + namelist['meta'] = {} + namelist['meta']['simname'] = 'Soares' + namelist['meta']['casename'] = 'Soares' + + return namelist + + def write_file(namelist): try: diff --git a/setup.py b/setup.py index 0081e992..13246d8c 100644 --- a/setup.py +++ b/setup.py @@ -102,15 +102,15 @@ runtime_library_dirs=library_dirs) extensions.append(_ext) -_ext = Extension('ScalarAdvection_QL', ['ScalarAdvection_QL.pyx'], include_dirs=include_path, - extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, - runtime_library_dirs=library_dirs) -extensions.append(_ext) - -_ext = Extension('MomentumAdvection_QL', ['MomentumAdvection_QL.pyx'], include_dirs=include_path, - extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, - runtime_library_dirs=library_dirs) -extensions.append(_ext) +# _ext = Extension('ScalarAdvection_QL', ['ScalarAdvection_QL.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('MomentumAdvection_QL', ['MomentumAdvection_QL.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) _ext = Extension('ScalarDiffusion', ['ScalarDiffusion.pyx'], include_dirs=include_path, extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, From c5e9ab54a049e542da97d44ec5b3463adc998124 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 22 Jan 2016 20:52:30 +0100 Subject: [PATCH 013/511] starting Initialization for Soares, !!! needs to be finished --- Initialization.pyx | 76 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/Initialization.pyx b/Initialization.pyx index d89cc0ff..af307748 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -37,6 +37,8 @@ def InitializationFactory(namelist): return InitSmoke elif casename == 'Rico': return InitRico + elif casename == 'Soares': + return InitSoares else: pass @@ -850,6 +852,80 @@ def InitRico(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, return + + def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, + ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): + + #Generate the reference profiles + RS.Pg = 1.0e5 #Pressure at ground (Soares) + RS.Tg = 300.0 #Temperature at ground (Soares) + RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) + RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) + RS.v0 = 0.0 # (Soares: v = 0.0 m/s) + + + ## only updated down to here!!! + + + RS.initialize(Gr, Th, NS, Pa) + + #Get the variable number for each of the velocity components + np.random.seed(Pa.rank) + cdef: + Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') + Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') + Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') + Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') + Py_ssize_t i,j,k + Py_ssize_t ishift, jshift, e_varshift + Py_ssize_t ijk + double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double t + + #Generate initial perturbations (here we are generating more than we need) + cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) + cdef double theta_pert_ + + for k in xrange(Gr.dims.nlg[2]): + if Gr.zl_half[k] <= 974.0: + theta[k] = 300.0 + elif Gr.zl_half[k] <= 1074.0: + theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 + else: + theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 + + cdef double [:] p0 = RS.p0_half + + #Now loop and set the initial condition + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[u_varshift + ijk] = 1.0 - RS.u0 + PV.values[v_varshift + ijk] = 0.0 - RS.v0 + PV.values[w_varshift + ijk] = 0.0 + + #Now set the entropy prognostic variable including a potential temperature perturbation + if Gr.zl_half[k] < 200.0: + theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 + else: + theta_pert_ = 0.0 + t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) + + PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) + if 'e' in PV.name_index: + e_varshift = PV.get_varshift(Gr, 'e') + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[e_varshift + ijk] = 0.0 + return + def AuxillaryVariables(nml, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): From 534e9858ac203d3498ab260173c282827daf35b6 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 22 Jan 2016 20:53:55 +0100 Subject: [PATCH 014/511] mod Init --- Initialization.pyx | 126 ++++++++++++++++++++++----------------------- 1 file changed, 63 insertions(+), 63 deletions(-) diff --git a/Initialization.pyx b/Initialization.pyx index af307748..6d2db46a 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -856,75 +856,75 @@ def InitRico(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): - #Generate the reference profiles - RS.Pg = 1.0e5 #Pressure at ground (Soares) - RS.Tg = 300.0 #Temperature at ground (Soares) - RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) - RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) - RS.v0 = 0.0 # (Soares: v = 0.0 m/s) - - - ## only updated down to here!!! - - - RS.initialize(Gr, Th, NS, Pa) - - #Get the variable number for each of the velocity components - np.random.seed(Pa.rank) - cdef: - Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') - Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') - Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') - Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') - Py_ssize_t i,j,k - Py_ssize_t ishift, jshift, e_varshift - Py_ssize_t ijk - double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') - double t - - #Generate initial perturbations (here we are generating more than we need) - cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) - cdef double theta_pert_ - - for k in xrange(Gr.dims.nlg[2]): - if Gr.zl_half[k] <= 974.0: - theta[k] = 300.0 - elif Gr.zl_half[k] <= 1074.0: - theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 - else: - theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 - - cdef double [:] p0 = RS.p0_half - - #Now loop and set the initial condition - for i in xrange(Gr.dims.nlg[0]): - ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] - for j in xrange(Gr.dims.nlg[1]): - jshift = j * Gr.dims.nlg[2] - for k in xrange(Gr.dims.nlg[2]): - ijk = ishift + jshift + k - PV.values[u_varshift + ijk] = 1.0 - RS.u0 - PV.values[v_varshift + ijk] = 0.0 - RS.v0 - PV.values[w_varshift + ijk] = 0.0 - - #Now set the entropy prognostic variable including a potential temperature perturbation - if Gr.zl_half[k] < 200.0: - theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 - else: - theta_pert_ = 0.0 - t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) - - PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) - if 'e' in PV.name_index: - e_varshift = PV.get_varshift(Gr, 'e') + #Generate the reference profiles + RS.Pg = 1.0e5 #Pressure at ground (Soares) + RS.Tg = 300.0 #Temperature at ground (Soares) + RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) + RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) + RS.v0 = 0.0 # (Soares: v = 0.0 m/s) + + + ## only updated down to here!!! + + + RS.initialize(Gr, Th, NS, Pa) + + #Get the variable number for each of the velocity components + np.random.seed(Pa.rank) + cdef: + Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') + Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') + Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') + Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') + Py_ssize_t i,j,k + Py_ssize_t ishift, jshift, e_varshift + Py_ssize_t ijk + double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double t + + #Generate initial perturbations (here we are generating more than we need) + cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) + cdef double theta_pert_ + + for k in xrange(Gr.dims.nlg[2]): + if Gr.zl_half[k] <= 974.0: + theta[k] = 300.0 + elif Gr.zl_half[k] <= 1074.0: + theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 + else: + theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 + + cdef double [:] p0 = RS.p0_half + + #Now loop and set the initial condition for i in xrange(Gr.dims.nlg[0]): ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] for j in xrange(Gr.dims.nlg[1]): jshift = j * Gr.dims.nlg[2] for k in xrange(Gr.dims.nlg[2]): ijk = ishift + jshift + k - PV.values[e_varshift + ijk] = 0.0 - return + PV.values[u_varshift + ijk] = 1.0 - RS.u0 + PV.values[v_varshift + ijk] = 0.0 - RS.v0 + PV.values[w_varshift + ijk] = 0.0 + + #Now set the entropy prognostic variable including a potential temperature perturbation + if Gr.zl_half[k] < 200.0: + theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 + else: + theta_pert_ = 0.0 + t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) + + PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) + if 'e' in PV.name_index: + e_varshift = PV.get_varshift(Gr, 'e') + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[e_varshift + ijk] = 0.0 + return def AuxillaryVariables(nml, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): From 3ffff417c0b2ed3bd1680ed4fbe9147d63575e56 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 22 Jan 2016 20:56:28 +0100 Subject: [PATCH 015/511] mod Init --- Initialization.pyx | 114 ++++++++++++++++++++++----------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/Initialization.pyx b/Initialization.pyx index 6d2db46a..e563e674 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -853,78 +853,78 @@ def InitRico(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, return - def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, +def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): - #Generate the reference profiles - RS.Pg = 1.0e5 #Pressure at ground (Soares) - RS.Tg = 300.0 #Temperature at ground (Soares) - RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) - RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) - RS.v0 = 0.0 # (Soares: v = 0.0 m/s) + #Generate the reference profiles + RS.Pg = 1.0e5 #Pressure at ground (Soares) + RS.Tg = 300.0 #Temperature at ground (Soares) + RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) + RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) + RS.v0 = 0.0 # (Soares: v = 0.0 m/s) ## only updated down to here!!! - RS.initialize(Gr, Th, NS, Pa) + RS.initialize(Gr, Th, NS, Pa) #Get the variable number for each of the velocity components - np.random.seed(Pa.rank) - cdef: - Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') - Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') - Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') - Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') - Py_ssize_t i,j,k - Py_ssize_t ishift, jshift, e_varshift - Py_ssize_t ijk - double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') - double t - - #Generate initial perturbations (here we are generating more than we need) - cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) - cdef double theta_pert_ - - for k in xrange(Gr.dims.nlg[2]): - if Gr.zl_half[k] <= 974.0: - theta[k] = 300.0 - elif Gr.zl_half[k] <= 1074.0: - theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 - else: - theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 - - cdef double [:] p0 = RS.p0_half - - #Now loop and set the initial condition + np.random.seed(Pa.rank) + cdef: + Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') + Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') + Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') + Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') + Py_ssize_t i,j,k + Py_ssize_t ishift, jshift, e_varshift + Py_ssize_t ijk + double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double t + + #Generate initial perturbations (here we are generating more than we need) + cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) + cdef double theta_pert_ + + for k in xrange(Gr.dims.nlg[2]): + if Gr.zl_half[k] <= 974.0: + theta[k] = 300.0 + elif Gr.zl_half[k] <= 1074.0: + theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 + else: + theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 + + cdef double [:] p0 = RS.p0_half + + #Now loop and set the initial condition + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[u_varshift + ijk] = 1.0 - RS.u0 + PV.values[v_varshift + ijk] = 0.0 - RS.v0 + PV.values[w_varshift + ijk] = 0.0 + + #Now set the entropy prognostic variable including a potential temperature perturbation + if Gr.zl_half[k] < 200.0: + theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 + else: + theta_pert_ = 0.0 + t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) + + PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) + if 'e' in PV.name_index: + e_varshift = PV.get_varshift(Gr, 'e') for i in xrange(Gr.dims.nlg[0]): ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] for j in xrange(Gr.dims.nlg[1]): jshift = j * Gr.dims.nlg[2] for k in xrange(Gr.dims.nlg[2]): ijk = ishift + jshift + k - PV.values[u_varshift + ijk] = 1.0 - RS.u0 - PV.values[v_varshift + ijk] = 0.0 - RS.v0 - PV.values[w_varshift + ijk] = 0.0 - - #Now set the entropy prognostic variable including a potential temperature perturbation - if Gr.zl_half[k] < 200.0: - theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 - else: - theta_pert_ = 0.0 - t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) - - PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) - if 'e' in PV.name_index: - e_varshift = PV.get_varshift(Gr, 'e') - for i in xrange(Gr.dims.nlg[0]): - ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] - for j in xrange(Gr.dims.nlg[1]): - jshift = j * Gr.dims.nlg[2] - for k in xrange(Gr.dims.nlg[2]): - ijk = ishift + jshift + k - PV.values[e_varshift + ijk] = 0.0 - return + PV.values[e_varshift + ijk] = 0.0 + return def AuxillaryVariables(nml, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): From 8d4070acefa440e90251cb28e0998dd622467da6 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Jan 2016 16:28:57 +0100 Subject: [PATCH 016/511] finishing Soares case Initialisation --- Initialization.pyx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Initialization.pyx b/Initialization.pyx index e563e674..2c0ce8e6 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -853,6 +853,8 @@ def InitRico(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, return + + def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): @@ -882,17 +884,17 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') double t - #Generate initial perturbations (here we are generating more than we need) + #Generate initial perturbations (here we are generating more than we need) ??? where amplitude of perturbations given? cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) cdef double theta_pert_ + # Initial theta profile (potential temperature) for k in xrange(Gr.dims.nlg[2]): - if Gr.zl_half[k] <= 974.0: - theta[k] = 300.0 - elif Gr.zl_half[k] <= 1074.0: - theta[k] = 300.0 + (Gr.zl_half[k] - 974.0) * 0.08 - else: - theta[k] = 308.0 + (Gr.zl_half[k] - 1074.0) * 0.003 + # if Gr.zl_half[k] <= 1350.0: + # theta[k] = 300.0 + # else: + # theta[k] = 300.0 + 2.0/1000.0 * (Gr.zl_half[k] - 1350.0) + theta[k] = 297.3 + 2.0/1000.0 * (Gr.zl_half[k]) cdef double [:] p0 = RS.p0_half @@ -907,7 +909,8 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, PV.values[v_varshift + ijk] = 0.0 - RS.v0 PV.values[w_varshift + ijk] = 0.0 - #Now set the entropy prognostic variable including a potential temperature perturbation + # Set the entropy prognostic variable including a potential temperature perturbation + # fluctuation height = 200m; fluctuation amplitude = 0.1 K if Gr.zl_half[k] < 200.0: theta_pert_ = (theta_pert[ijk] - 0.5)* 0.1 else: From b2f9e0749f0e56b4e2edec3b66180a3d66abe89d Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Jan 2016 16:50:05 +0100 Subject: [PATCH 017/511] adding Forcing DCBL Soares --- Forcing.pyx | 50 +++++++++++++++++++++++++++++++++++++++++++- Initialization.pyx | 2 +- generate_namelist.py | 10 ++++----- 3 files changed, 55 insertions(+), 7 deletions(-) diff --git a/Forcing.pyx b/Forcing.pyx index 670b190f..f01baedf 100644 --- a/Forcing.pyx +++ b/Forcing.pyx @@ -35,8 +35,10 @@ cdef class Forcing: self.scheme = ForcingNone() elif casename == 'Rico': self.scheme = ForcingRico() + elif casename == 'DCBLSoares': + self.scheme = ForcingSoares() else: - Pa.root_print('No focing for casename: ' + casename) + Pa.root_print('No forcing for casename: ' + casename) Pa.root_print('Killing simulation now!!!') Pa.kill() return @@ -531,6 +533,8 @@ cdef class ForcingRico: return + + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): @@ -600,7 +604,51 @@ cdef class ForcingRico: return +cdef class ForcingSoares: + def __init__(self): + return + + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + self.ug = np.ones(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s + self.vg = np.zeros(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s + # ???? how to turn off coriolis parameter? + self.coriolis_param = 0.0 #s^{-1} + +# NS.add_profile('u_coriolis_tendency', Gr, Pa) +# NS.add_profile('v_coriolis_tendency',Gr, Pa) + return + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): + # cdef: + # Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') + # Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') + +# coriolis_force(&Gr.dims,&PV.values[u_shift],&PV.values[v_shift],&PV.tendencies[u_shift], +# &PV.tendencies[v_shift],&self.ug[0], &self.vg[0],self.coriolis_param, Ref.u0, Ref.v0 ) + return + + cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + cdef: + Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') + Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') + # double [:] tmp_tendency = np.zeros((Gr.dims.npg),dtype=np.double,order='c') + # double [:] tmp_tendency_2 = np.zeros((Gr.dims.npg),dtype=np.double,order='c') + # double [:] mean_tendency = np.empty((Gr.dims.nlg[2],),dtype=np.double,order='c') + # double [:] mean_tendency_2 = np.zeros((Gr.dims.nlg[2]),dtype=np.double,order='c') + +# #Only need to output coriolis_forcing +# coriolis_force(&Gr.dims,&PV.values[u_shift],&PV.values[v_shift],&tmp_tendency[0], +# &tmp_tendency_2[0],&self.ug[0], &self.vg[0],self.coriolis_param, Ref.u0, Ref.v0) +# mean_tendency = Pa.HorizontalMean(Gr,&tmp_tendency[0]) +# mean_tendency_2 = Pa.HorizontalMean(Gr,&tmp_tendency_2[0]) +# NS.write_profile('u_coriolis_tendency',mean_tendency[Gr.dims.gw:-Gr.dims.gw],Pa) +# NS.write_profile('v_coriolis_tendency',mean_tendency_2[Gr.dims.gw:-Gr.dims.gw],Pa) +# + return cdef coriolis_force(Grid.DimStruct *dims, double *u, double *v, double *ut, double *vt, double *ug, double *vg, double coriolis_param, double u0, double v0 ): diff --git a/Initialization.pyx b/Initialization.pyx index 2c0ce8e6..aa4af9d8 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -37,7 +37,7 @@ def InitializationFactory(namelist): return InitSmoke elif casename == 'Rico': return InitRico - elif casename == 'Soares': + elif casename == 'DCBLSoares': return InitSoares else: pass diff --git a/generate_namelist.py b/generate_namelist.py index e6284e9e..bab891e4 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -30,8 +30,8 @@ def main(): namelist = SMOKE() elif case_name == 'Rico': namelist = Rico() - elif case_name == 'Soares': - namelist = Soares() + elif case_name == 'DCBLSoares': + namelist = DCBLSoares() else: print('Not a vaild case name') exit() @@ -761,7 +761,7 @@ def Rico(): -def Soares(): +def DCBLSoares(): namelist = {} @@ -837,8 +837,8 @@ def Soares(): namelist['fields_io']['diagnostic_fields'] = ['temperature','viscosity'] # defines diagnostic variable output fields (progn. variables output in restart files?!) namelist['meta'] = {} - namelist['meta']['simname'] = 'Soares' - namelist['meta']['casename'] = 'Soares' + namelist['meta']['simname'] = 'DCBLSoares' + namelist['meta']['casename'] = 'DCBLSoares' return namelist From 4b6b3bfa77d6dd2cdda7131c6bd7ac24411c7ff7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Jan 2016 16:58:05 +0100 Subject: [PATCH 018/511] starting Soares Surface file >> to be continued!!! --- Surface.pyx | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 99 insertions(+), 1 deletion(-) diff --git a/Surface.pyx b/Surface.pyx index c0ece4f5..8b81a03b 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -60,7 +60,9 @@ cdef class Surface: elif casename == 'DYCOMS_RF02': self.scheme = SurfaceDYCOMS_RF02(namelist, LH) elif casename == 'Rico': - self.scheme= SurfaceRico() + self.scheme = SurfaceRico() + elif casename == 'DCBLSoares': + self.scheme = SurfaceSoares() else: self.scheme= SurfaceNone() return @@ -749,6 +751,102 @@ cdef class SurfaceRico: +cdef class SurfaceSoares: + def __init__(self): + self.theta_flux = 0.24 # K m/s + self.z0 = 0.1 #m (Roughness length) + self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* + return + + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd + self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 + self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + + NS.add_ts('uw_surface_mean',Gr, Pa) + NS.add_ts('vw_surface_mean',Gr, Pa) + NS.add_ts('s_flux_surface_mean', Gr, Pa) + + return + + + # @cython.boundscheck(False) + # @cython.wraparound(False) + # @cython.cdivision(True) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): + # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple + + if Pa.sub_z_rank != 0: + return + + cdef: + Py_ssize_t i + Py_ssize_t j + Py_ssize_t gw = Gr.dims.gw + Py_ssize_t ijk, ij + Py_ssize_t imax = Gr.dims.nlg[0] + Py_ssize_t jmax = Gr.dims.nlg[1] + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t istride_2d = Gr.dims.nlg[1] + Py_ssize_t temp_shift = DV.get_varshift(Gr, 'temperature') + Py_ssize_t s_shift = PV.get_varshift(Gr, 's') + double dzi = 1.0/Gr.dims.dx[2] + double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi + + # # ????? Problem with nogil in this section + # #Get the scalar flux (dry entropy only) + # with nogil: + # for i in xrange(imax): + # for j in xrange(jmax): + # ijk = i * istride + j * jstride + gw + # ij = i * istride_2d + j + # self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] + # PV.tendencies[s_shift + ijk] = PV.tendencies[s_shift + ijk] + self.s_flux[ij] * tendency_factor + # + cdef: + Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') + Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') + double [:] windspeed = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1],dtype=np.double,order='c') + + compute_windspeed(&Gr.dims, &PV.values[u_shift], &PV.values[v_shift], &windspeed[0],Ref.u0, Ref.v0,self.gustiness) + + cdef : + Py_ssize_t lmo_shift = DV.get_varshift_2d(Gr, 'obukhov_length') + Py_ssize_t ustar_shift = DV.get_varshift_2d(Gr, 'friction_velocity') + + # # ??? problem with nogil in this section?? + # # Get the shear stresses + # with nogil: + # for i in xrange(1,imax): + # for j in xrange(1,jmax): + # ij = i * istride_2d + j + # DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + # DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + # for i in xrange(1,imax-1): + # for j in xrange(1,jmax-1): + # ijk = i * istride + j * jstride + gw + # ij = i * istride_2d + j + # self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) + # self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) + # PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor + # PV.tendencies[v_shift + ijk] += PV.tendencies[v_shift + ijk] + self.v_flux[ij] * tendency_factor + # + return + + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + # cdef double tmp + # + # tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) + # NS.write_ts('uw_surface_mean',tmp, Pa) + # tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) + # NS.write_ts('vw_surface_mean', tmp, Pa) + # tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) + # NS.write_ts('s_flux_surface_mean', tmp, Pa) + # + return From 6c85b75fb822f6e65f9c2ce02de017bd3d11a7fe Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 28 Jan 2016 10:23:35 +0100 Subject: [PATCH 019/511] adding Soares to Forcing.pxd --- Forcing.pxd | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Forcing.pxd b/Forcing.pxd index 1849cc2a..78d874d4 100644 --- a/Forcing.pxd +++ b/Forcing.pxd @@ -92,4 +92,17 @@ cdef class ForcingRico: PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, - NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) \ No newline at end of file + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + + +cdef class ForcingSoares: + # cdef: + # double [:] ug + # double [:] vg + # double coriolis_param + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) + cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) From 23f16d600637aa181e15f5249f46233cbb3653df Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 9 Feb 2016 10:16:10 +0100 Subject: [PATCH 020/511] updates in Soares case (Surface formulation) --- Forcing.pxd | 4 -- Forcing.pyx | 35 ++++---------- Surface.pxd | 17 +++++++ Surface.pyx | 111 +++++++++++++++++++++++++------------------ generate_namelist.py | 2 +- 5 files changed, 90 insertions(+), 79 deletions(-) diff --git a/Forcing.pxd b/Forcing.pxd index 78d874d4..95eabe6f 100644 --- a/Forcing.pxd +++ b/Forcing.pxd @@ -96,10 +96,6 @@ cdef class ForcingRico: cdef class ForcingSoares: - # cdef: - # double [:] ug - # double [:] vg - # double coriolis_param cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) diff --git a/Forcing.pyx b/Forcing.pyx index f01baedf..d04be6aa 100644 --- a/Forcing.pyx +++ b/Forcing.pyx @@ -609,47 +609,28 @@ cdef class ForcingSoares: return cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.ug = np.ones(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s - self.vg = np.zeros(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s - # ???? how to turn off coriolis parameter? - self.coriolis_param = 0.0 #s^{-1} - + # self.ug = np.ones(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s + # self.vg = np.zeros(Gr.dims.nlg[2],dtype=np.double, order='c') #m/s + # self.coriolis_param = 0.0 #s^{-1} # NS.add_profile('u_coriolis_tendency', Gr, Pa) # NS.add_profile('v_coriolis_tendency',Gr, Pa) return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): - # cdef: - # Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') - # Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') -# coriolis_force(&Gr.dims,&PV.values[u_shift],&PV.values[v_shift],&PV.tendencies[u_shift], -# &PV.tendencies[v_shift],&self.ug[0], &self.vg[0],self.coriolis_param, Ref.u0, Ref.v0 ) return cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - - cdef: - Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') - Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') - # double [:] tmp_tendency = np.zeros((Gr.dims.npg),dtype=np.double,order='c') - # double [:] tmp_tendency_2 = np.zeros((Gr.dims.npg),dtype=np.double,order='c') - # double [:] mean_tendency = np.empty((Gr.dims.nlg[2],),dtype=np.double,order='c') - # double [:] mean_tendency_2 = np.zeros((Gr.dims.nlg[2]),dtype=np.double,order='c') - -# #Only need to output coriolis_forcing -# coriolis_force(&Gr.dims,&PV.values[u_shift],&PV.values[v_shift],&tmp_tendency[0], -# &tmp_tendency_2[0],&self.ug[0], &self.vg[0],self.coriolis_param, Ref.u0, Ref.v0) -# mean_tendency = Pa.HorizontalMean(Gr,&tmp_tendency[0]) -# mean_tendency_2 = Pa.HorizontalMean(Gr,&tmp_tendency_2[0]) -# NS.write_profile('u_coriolis_tendency',mean_tendency[Gr.dims.gw:-Gr.dims.gw],Pa) -# NS.write_profile('v_coriolis_tendency',mean_tendency_2[Gr.dims.gw:-Gr.dims.gw],Pa) -# + return + + + + cdef coriolis_force(Grid.DimStruct *dims, double *u, double *v, double *ut, double *vt, double *ug, double *vg, double coriolis_param, double u0, double v0 ): cdef: diff --git a/Surface.pxd b/Surface.pxd index bd3238f3..7e504e24 100644 --- a/Surface.pxd +++ b/Surface.pxd @@ -133,6 +133,23 @@ cdef class SurfaceRico: cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) +cdef class SurfaceSoares: + cdef: + double theta_flux + double qt_flux + double z0 + double gustiness + double buoyancy_flux + double theta_surface + double qt_surface + double [:] s_flux + double [:] u_flux + double [:] v_flux + + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cdef inline double compute_z0(double z1, double windspeed) nogil diff --git a/Surface.pyx b/Surface.pyx index 8b81a03b..4741f16f 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -93,7 +93,7 @@ cdef class SurfaceNone: cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): return - +# SULLIVAN cdef class SurfaceSullivanPatton: def __init__(self): self.theta_flux = 0.24 # K m/s @@ -750,17 +750,29 @@ cdef class SurfaceRico: return - +# _____________________ +# SOARES +# like in Sullivan case: z0 is given (ustar_fixed = 'False') +# like in Bomex case: surface heat and moisture flux constant and prescribed cdef class SurfaceSoares: def __init__(self): - self.theta_flux = 0.24 # K m/s - self.z0 = 0.1 #m (Roughness length) + self.theta_flux = 0.06 # K m/s + self.qt_flux = 2.5e-5 # m/s + self.z0 = 0.001 #m (Roughness length) self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* + + self.theta_surface = 300.0 # K + self.qt_surface = 5.0e-3 # kg/kg + self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) + /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? + return + + @cython.boundscheck(False) #Turn off numpy array index bounds checking + @cython.wraparound(False) #Turn off numpy array wrap around indexing + @cython.cdivision(True) cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd - self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') @@ -771,10 +783,7 @@ cdef class SurfaceSoares: return - - # @cython.boundscheck(False) - # @cython.wraparound(False) - # @cython.cdivision(True) +# update adopted and modified from Sullivan + Bomex cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple @@ -793,59 +802,67 @@ cdef class SurfaceSoares: Py_ssize_t istride_2d = Gr.dims.nlg[1] Py_ssize_t temp_shift = DV.get_varshift(Gr, 'temperature') Py_ssize_t s_shift = PV.get_varshift(Gr, 's') + Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') + Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') double dzi = 1.0/Gr.dims.dx[2] double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi - # # ????? Problem with nogil in this section - # #Get the scalar flux (dry entropy only) - # with nogil: - # for i in xrange(imax): - # for j in xrange(jmax): - # ijk = i * istride + j * jstride + gw - # ij = i * istride_2d + j - # self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] - # PV.tendencies[s_shift + ijk] = PV.tendencies[s_shift + ijk] + self.s_flux[ij] * tendency_factor - # + # Scalar fluxes (adopted from Bomex) + with nogil: + for i in xrange(imax): + for j in xrange(jmax): + ijk = i * istride + j * jstride + gw + ij = i * istride_2d + j + # ??? ok to use entropy calc from qt?? + self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) + PV.tendencies[s_shift + ijk] += self.s_flux[ij] * tendency_factor + PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor + + # Windspeed (adopted from Sullivan, equivalent to Bomex) cdef: Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') double [:] windspeed = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1],dtype=np.double,order='c') - compute_windspeed(&Gr.dims, &PV.values[u_shift], &PV.values[v_shift], &windspeed[0],Ref.u0, Ref.v0,self.gustiness) + # Surface Values: friction velocity, obukhov lenght (adopted from Sullivan, since same Surface parameters prescribed) cdef : Py_ssize_t lmo_shift = DV.get_varshift_2d(Gr, 'obukhov_length') Py_ssize_t ustar_shift = DV.get_varshift_2d(Gr, 'friction_velocity') + with nogil: + for i in xrange(1,imax): + for j in xrange(1,jmax): + ij = i * istride_2d + j + DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + + # Get the shear stresses (adopted from Sullivan, since same Surface parameters prescribed) + for i in xrange(1,imax-1): + for j in xrange(1,jmax-1): + ijk = i * istride + j * jstride + gw + ij = i * istride_2d + j + self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) + self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) + PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor + PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor + - # # ??? problem with nogil in this section?? - # # Get the shear stresses - # with nogil: - # for i in xrange(1,imax): - # for j in xrange(1,jmax): - # ij = i * istride_2d + j - # DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) - # DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb - # for i in xrange(1,imax-1): - # for j in xrange(1,jmax-1): - # ijk = i * istride + j * jstride + gw - # ij = i * istride_2d + j - # self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) - # self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) - # PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor - # PV.tendencies[v_shift + ijk] += PV.tendencies[v_shift + ijk] + self.v_flux[ij] * tendency_factor - # return + + + + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - # cdef double tmp - # - # tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) - # NS.write_ts('uw_surface_mean',tmp, Pa) - # tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) - # NS.write_ts('vw_surface_mean', tmp, Pa) - # tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) - # NS.write_ts('s_flux_surface_mean', tmp, Pa) - # + cdef double tmp + + tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) + NS.write_ts('uw_surface_mean',tmp, Pa) + tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) + NS.write_ts('vw_surface_mean', tmp, Pa) + tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) + NS.write_ts('s_flux_surface_mean', tmp, Pa) + return diff --git a/generate_namelist.py b/generate_namelist.py index bab891e4..29d4e94f 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -791,7 +791,7 @@ def DCBLSoares(): namelist['time_stepping']['t_max'] = 6*3600.0 namelist['thermodynamics'] = {} - namelist['thermodynamics']['latentheat'] = 'constant' # seems to be constant in all cases and NOWHERE called??? + namelist['thermodynamics']['latentheat'] = 'constant' # 'constant' or 'variable', for Clausius Clapeyron calculation namelist['microphysics'] = {} namelist['microphysics']['scheme'] = 'None_Dry' # ??? From 5cf388127783b6fee15982ae0b6ecb2132c117ba Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 9 Feb 2016 10:16:52 +0100 Subject: [PATCH 021/511] cleaning of test files --- test.txt | 2 -- test2.txt | 1 - test3.txt | 1 - 3 files changed, 4 deletions(-) delete mode 100644 test.txt delete mode 100644 test2.txt delete mode 100644 test3.txt diff --git a/test.txt b/test.txt deleted file mode 100644 index 621f3328..00000000 --- a/test.txt +++ /dev/null @@ -1,2 +0,0 @@ -new name -again a test diff --git a/test2.txt b/test2.txt deleted file mode 100644 index 0cb1a4e3..00000000 --- a/test2.txt +++ /dev/null @@ -1 +0,0 @@ -testbranch file diff --git a/test3.txt b/test3.txt deleted file mode 100644 index 2badfc2d..00000000 --- a/test3.txt +++ /dev/null @@ -1 +0,0 @@ -new commit master From 42e3f9e9e4a073247d8d543da708fcdbcdba74d2 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 9 Feb 2016 11:45:00 +0100 Subject: [PATCH 022/511] little changes in Soares Initialisation --- DiagnosticVariables.pyx | 2 +- Initialization.pyx | 12 ++++-------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/DiagnosticVariables.pyx b/DiagnosticVariables.pyx index 484d6407..ae3c6773 100644 --- a/DiagnosticVariables.pyx +++ b/DiagnosticVariables.pyx @@ -11,7 +11,7 @@ import numpy as np cimport numpy as np cimport ParallelMPI from cpython.mem cimport PyMem_Malloc, PyMem_Realloc, PyMem_Free -cimport mpi4py.libmpi as mpi + cdef extern from "prognostic_variables.h": void build_buffer(int nv, int dim, int s ,Grid.DimStruct *dims, double* values, double* buffer) diff --git a/Initialization.pyx b/Initialization.pyx index aa4af9d8..73ee0f9b 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -865,13 +865,9 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) RS.v0 = 0.0 # (Soares: v = 0.0 m/s) + RS.initialize(Gr, Th, NS, Pa) # initialize reference state; done for every case - ## only updated down to here!!! - - - RS.initialize(Gr, Th, NS, Pa) - - #Get the variable number for each of the velocity components + #Get the variable number for each of the velocity components np.random.seed(Pa.rank) cdef: Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') @@ -898,14 +894,14 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, cdef double [:] p0 = RS.p0_half - #Now loop and set the initial condition + # Now loop and set the initial condition for i in xrange(Gr.dims.nlg[0]): ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] for j in xrange(Gr.dims.nlg[1]): jshift = j * Gr.dims.nlg[2] for k in xrange(Gr.dims.nlg[2]): ijk = ishift + jshift + k - PV.values[u_varshift + ijk] = 1.0 - RS.u0 + PV.values[u_varshift + ijk] = 0.0 - RS.u0 # original Soares: u = 0.1 PV.values[v_varshift + ijk] = 0.0 - RS.v0 PV.values[w_varshift + ijk] = 0.0 From 234fda6931ac46c5368844c4ad3466121ac5ace4 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 9 Feb 2016 11:46:37 +0100 Subject: [PATCH 023/511] fixing bugs of MPI --- Grid.pyx | 5 +++-- TimeStepping.pyx | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Grid.pyx b/Grid.pyx index b4abebc4..0aa121eb 100644 --- a/Grid.pyx +++ b/Grid.pyx @@ -4,7 +4,8 @@ #cython: initializedcheck=False #cython: cdivision=True -cimport mpi4py.mpi_c as mpi +cimport mpi4py.libmpi as mpi +#cimport mpi4py.mpi_c as mpi cimport ParallelMPI cimport Restart cimport numpy as np @@ -219,4 +220,4 @@ cdef class Grid: self.dims.dxi[1], self.dims.dxi[2]]) - return \ No newline at end of file + return diff --git a/TimeStepping.pyx b/TimeStepping.pyx index 85cb3afb..e2f48feb 100644 --- a/TimeStepping.pyx +++ b/TimeStepping.pyx @@ -9,7 +9,8 @@ cimport PrognosticVariables as PrognosticVariables cimport DiagnosticVariables as DiagnosticVariables cimport Grid as Grid cimport Restart -cimport mpi4py.mpi_c as mpi +#cimport mpi4py.mpi_c as mpi +cimport mpi4py.libmpi as mpi import numpy as np cimport numpy as np From 46fec70dd3cfe7b6a334a6175d36e4a5eb7f9ebf Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 9 Feb 2016 16:54:46 +0100 Subject: [PATCH 024/511] comments in Output code --- DiagnosticVariables.pyx | 1 + PrognosticVariables.pyx | 1 + generate_namelist.py | 18 +++++++++++++++++- 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/DiagnosticVariables.pyx b/DiagnosticVariables.pyx index 4b610819..3ee4edba 100644 --- a/DiagnosticVariables.pyx +++ b/DiagnosticVariables.pyx @@ -157,6 +157,7 @@ cdef class DiagnosticVariables: double tmp2 for var_name in self.name_index.keys(): + print('Diagnostic Variables: write profile: ', var_name) var_shift = self.get_varshift(Gr,var_name) #Compute and write mean diff --git a/PrognosticVariables.pyx b/PrognosticVariables.pyx index 9f28f31c..df9e2fcb 100644 --- a/PrognosticVariables.pyx +++ b/PrognosticVariables.pyx @@ -106,6 +106,7 @@ cdef class PrognosticVariables: double [:] tmp for var_name in self.name_index.keys(): + print('Prognostic Variables: write profile: ', var_name) var_shift = self.get_varshift(Gr,var_name) diff --git a/generate_namelist.py b/generate_namelist.py index 319095ff..cbf4523a 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -864,20 +864,36 @@ def DCBLSoares(): namelist['restart']['input_path'] = './' namelist['restart']['frequency'] = 600.0 + # profile outputs namelist['stats_io'] = {} namelist['stats_io']['stats_dir'] = 'stats' - namelist['stats_io']['auxiliary'] = ['None'] + namelist['stats_io']['auxiliary'] = ['None'] # AuxiliaryStatistics namelist['stats_io']['frequency'] = 900.0 + # field outputs namelist['fields_io'] = {} namelist['fields_io']['fields_dir'] = 'fields' namelist['fields_io']['frequency'] = 1800.0 namelist['fields_io']['diagnostic_fields'] = ['temperature','viscosity'] # defines diagnostic variable output fields (progn. variables output in restart files?!) + # Conditional Statistics + namelist['conditional_stats'] ={} + namelist['conditional_stats']['classes'] = ['Spectra'] + namelist['conditional_stats']['frequency'] = 600.0 + namelist['conditional_stats']['stats_dir'] = 'cond_stats' + namelist['meta'] = {} namelist['meta']['simname'] = 'DCBLSoares' namelist['meta']['casename'] = 'DCBLSoares' + namelist['restart'] = {} + namelist['restart']['output'] = False + namelist['restart']['init_from'] = False + namelist['restart']['input_path'] = './' + namelist['restart']['frequency'] = 600.0 + + + return namelist From 6750f168fc97e61b473834d54a4c64b184202aa9 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 25 Feb 2016 01:16:53 +0100 Subject: [PATCH 025/511] changing DCBLSoares case to totally dry case, tested --- DiagnosticVariables.pyx | 3 ++- Initialization.pyx | 34 +++++++++++++++++++++++++--------- PrognosticVariables.pyx | 3 ++- Surface.pxd | 3 ++- Surface.pyx | 41 +++++++++++++++++++++++------------------ generate_namelist.py | 10 ++++++---- 6 files changed, 60 insertions(+), 34 deletions(-) diff --git a/DiagnosticVariables.pyx b/DiagnosticVariables.pyx index 3ee4edba..7f933fef 100644 --- a/DiagnosticVariables.pyx +++ b/DiagnosticVariables.pyx @@ -157,7 +157,8 @@ cdef class DiagnosticVariables: double tmp2 for var_name in self.name_index.keys(): - print('Diagnostic Variables: write profile: ', var_name) + Pa.root_print('Diagnostic Variables: write profile: ' + var_name) + var_shift = self.get_varshift(Gr,var_name) #Compute and write mean diff --git a/Initialization.pyx b/Initialization.pyx index 73ee0f9b..b3004e3f 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -854,17 +854,17 @@ def InitRico(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, - def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): +# def InitSullivanPatton(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, +# ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): #Generate the reference profiles - RS.Pg = 1.0e5 #Pressure at ground (Soares) - RS.Tg = 300.0 #Temperature at ground (Soares) - RS.qtg = 0.0 #Total water mixing ratio at surface (Soares) - RS.u0 = 0.0 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) - RS.v0 = 0.0 # (Soares: v = 0.0 m/s) - + RS.Pg = 1.0e5 #Pressure at ground (Soares) + RS.Tg = 300.0 #Temperature at ground (Soares) + RS.qtg = 5e-3 #Total water mixing ratio at surface: qt = 5 g/kg (Soares) + RS.u0 = 0.01 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) + RS.v0 = 0.0 # (Soares: v = 0.0 m/s) RS.initialize(Gr, Th, NS, Pa) # initialize reference state; done for every case #Get the variable number for each of the velocity components @@ -874,17 +874,21 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') + # Py_ssize_t qt_varshift = PV.get_varshift(Gr,'qt') # !!!! Problem: if dry Microphysics scheme chosen: qt is no PV Py_ssize_t i,j,k Py_ssize_t ishift, jshift, e_varshift Py_ssize_t ijk double [:] theta = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double [:] qt = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') double t #Generate initial perturbations (here we are generating more than we need) ??? where amplitude of perturbations given? cdef double [:] theta_pert = np.random.random_sample(Gr.dims.npg) cdef double theta_pert_ - # Initial theta profile (potential temperature) + + + # Initial theta (potential temperature) profile (Soares) for k in xrange(Gr.dims.nlg[2]): # if Gr.zl_half[k] <= 1350.0: # theta[k] = 300.0 @@ -892,6 +896,13 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, # theta[k] = 300.0 + 2.0/1000.0 * (Gr.zl_half[k] - 1350.0) theta[k] = 297.3 + 2.0/1000.0 * (Gr.zl_half[k]) + # # Initial qt profile (Soares) + # --> set to zero, since no vapor Thermodynamics without condensation given + # if Gr.zl_half[k] <= 1350: + # qt[k] = 5.0e-3 - (Gr.zl_half[k]) * 3.7e-4 + # if Gr.zl_half[k] > 1350: + # qt[k] = 5.0e-3 - 1350.0 * 3.7e-4 - (Gr.zl_half[k] - 1350.0) * 9.4e-4 + cdef double [:] p0 = RS.p0_half # Now loop and set the initial condition @@ -912,8 +923,8 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, else: theta_pert_ = 0.0 t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) - PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],t,0.0,0.0,0.0) + if 'e' in PV.name_index: e_varshift = PV.get_varshift(Gr, 'e') for i in xrange(Gr.dims.nlg[0]): @@ -923,8 +934,13 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, for k in xrange(Gr.dims.nlg[2]): ijk = ishift + jshift + k PV.values[e_varshift + ijk] = 0.0 + return + + + + def AuxillaryVariables(nml, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): diff --git a/PrognosticVariables.pyx b/PrognosticVariables.pyx index df9e2fcb..f73542aa 100644 --- a/PrognosticVariables.pyx +++ b/PrognosticVariables.pyx @@ -106,7 +106,8 @@ cdef class PrognosticVariables: double [:] tmp for var_name in self.name_index.keys(): - print('Prognostic Variables: write profile: ', var_name) + Pa.root_print('Prognostic Variables: write profile: ' + var_name) + var_shift = self.get_varshift(Gr,var_name) diff --git a/Surface.pxd b/Surface.pxd index 7e504e24..24d0b96e 100644 --- a/Surface.pxd +++ b/Surface.pxd @@ -136,7 +136,7 @@ cdef class SurfaceRico: cdef class SurfaceSoares: cdef: double theta_flux - double qt_flux + # double qt_flux double z0 double gustiness double buoyancy_flux @@ -146,6 +146,7 @@ cdef class SurfaceSoares: double [:] u_flux double [:] v_flux + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) diff --git a/Surface.pyx b/Surface.pyx index 4741f16f..8faed4eb 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -757,22 +757,26 @@ cdef class SurfaceRico: cdef class SurfaceSoares: def __init__(self): self.theta_flux = 0.06 # K m/s - self.qt_flux = 2.5e-5 # m/s + # self.qt_flux = 2.5e-5 # m/s self.z0 = 0.001 #m (Roughness length) self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* self.theta_surface = 300.0 # K - self.qt_surface = 5.0e-3 # kg/kg - self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) - /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? + # self.qt_surface = 5.0e-3 # kg/kg return - @cython.boundscheck(False) #Turn off numpy array index bounds checking - @cython.wraparound(False) #Turn off numpy array wrap around indexing - @cython.cdivision(True) - cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): # Sullivan + + # Bomex: + # self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) + # /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? + # Sullivan: + T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd + self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 + self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') @@ -781,9 +785,11 @@ cdef class SurfaceSoares: NS.add_ts('vw_surface_mean',Gr, Pa) NS.add_ts('s_flux_surface_mean', Gr, Pa) + return -# update adopted and modified from Sullivan + Bomex + +# # update adopted and modified from Sullivan + Bomex cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple @@ -802,8 +808,8 @@ cdef class SurfaceSoares: Py_ssize_t istride_2d = Gr.dims.nlg[1] Py_ssize_t temp_shift = DV.get_varshift(Gr, 'temperature') Py_ssize_t s_shift = PV.get_varshift(Gr, 's') - Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') - Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') + # Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') + # Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') double dzi = 1.0/Gr.dims.dx[2] double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi @@ -813,10 +819,12 @@ cdef class SurfaceSoares: for j in xrange(jmax): ijk = i * istride + j * jstride + gw ij = i * istride_2d + j - # ??? ok to use entropy calc from qt?? - self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) + # Sullivan + self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] + # Bomex (entropy flux includes qt flux) + # self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) PV.tendencies[s_shift + ijk] += self.s_flux[ij] * tendency_factor - PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor + # PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor # Windspeed (adopted from Sullivan, equivalent to Bomex) cdef: @@ -846,13 +854,9 @@ cdef class SurfaceSoares: PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor - return - - - cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): cdef double tmp @@ -867,6 +871,7 @@ cdef class SurfaceSoares: + # Anderson, R. J., 1993: A Study of Wind Stress and Heat Flux over the Open # Ocean by the Inertial-Dissipation Method. J. Phys. Oceanogr., 23, 2153--“2161. # See also: ARPS documentation diff --git a/generate_namelist.py b/generate_namelist.py index cbf4523a..98457a20 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -706,7 +706,7 @@ def SMOKE(): return namelist -def Rico(): +def Rico(): # Rico = Rain in Cumulus Over the Ocean namelist = {} @@ -800,6 +800,9 @@ def Rico(): def DCBLSoares(): + # adopted from: "An eddy-diffusivity/mass-flux parametrization for dry and shallow cumulus convection", + # By P. M. M. SOARES, P. M. A. MIRANDA, A. P. SIEBESMA and J. TEIXEIRA, Q. J. R. Meteorol. Soc. (2004) + # modifications: qt initial profile and flux set to zero, since no dry thermodynamics without condensation given namelist = {} @@ -832,7 +835,7 @@ def DCBLSoares(): namelist['thermodynamics']['latentheat'] = 'constant' # 'constant' or 'variable', for Clausius Clapeyron calculation namelist['microphysics'] = {} - namelist['microphysics']['scheme'] = 'None_Dry' # ??? + namelist['microphysics']['scheme'] = 'None_Dry' # Bomex: 'None_SA'; options: 'None_Dry' (no qt as Progn. Var.), 'None_SA', 'SB_Liquid' namelist['microphysics']['phase_partitioning'] = 'liquid_only' # seems to be this in all cases??? namelist['sgs'] = {} @@ -892,11 +895,10 @@ def DCBLSoares(): namelist['restart']['input_path'] = './' namelist['restart']['frequency'] = 600.0 - - return namelist + def write_file(namelist): try: From 00019a1405c0261019ac80a8d89ae7441ca60974 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 25 Feb 2016 01:18:30 +0100 Subject: [PATCH 026/511] printing statements --- Simulation3d.pyx | 6 ++++++ TimeStepping.pyx | 11 ++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/Simulation3d.pyx b/Simulation3d.pyx index bbbf538b..0866fd50 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -126,6 +126,7 @@ class Simulation3d: self.Aux.initialize(namelist, self.Gr, self.PV, self.DV, self.StatsIO, self.Pa) self.CondStats.initialize(namelist, self.Gr, self.PV, self.DV, self.CondStatsIO, self.Pa) + self.Pa.root_print('Initialization completed!') return @@ -144,8 +145,11 @@ class Simulation3d: if not self.Restart.is_restart_run: self.force_io() + self.Pa.root_print('Run started') + while (self.TS.t < self.TS.t_max): time1 = time.time() + self.Pa.root_print('time: '+str(self.TS.t)) for self.TS.rk_step in xrange(self.TS.n_rk_steps): self.Ke.update(self.Gr,PV_) self.Th.update(self.Gr,self.Ref,PV_,DV_) @@ -163,9 +167,11 @@ class Simulation3d: self.TS.update(self.Gr, self.PV, self.Pa) PV_.Update_all_bcs(self.Gr, self.Pa) self.Pr.update(self.Gr, self.Ref, self.DV, self.PV, self.Pa) + self.Pa.root_print('ok until here') self.TS.adjust_timestep(self.Gr, self.PV, self.DV,self.Pa) self.io() #PV_.debug(self.Gr,self.Ref,self.StatsIO,self.Pa) + self.Pa.root_print('rk_step: '+str(self.TS.rk_step)+' (total steps: '+str(self.TS.n_rk_steps)+')') time2 = time.time() self.Pa.root_print('T = ' + str(self.TS.t) + ' dt = ' + str(self.TS.dt) + ' cfl_max = ' + str(self.TS.cfl_max) + ' walltime = ' + str(time2 - time1)) diff --git a/TimeStepping.pyx b/TimeStepping.pyx index e2f48feb..5a451749 100644 --- a/TimeStepping.pyx +++ b/TimeStepping.pyx @@ -222,7 +222,7 @@ cdef class TimeStepping: return cdef void compute_cfl_max(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): - + Pa.root_print('Computing CFL Max') cdef: double cfl_max_local = -9999.0 double [3] dxi = Gr.dims.dxi @@ -253,6 +253,15 @@ cdef class TimeStepping: w = fmax(fabs( DV.values[DV.sedv_index[isedv]*Gr.dims.npg + ijk ] + PV.values[w_shift+ijk]), w) cfl_max_local = fmax(cfl_max_local, self.dt * (fabs(PV.values[u_shift + ijk])*dxi[0] + fabs(PV.values[v_shift+ijk])*dxi[1] + w*dxi[2])) + # problem: second term is nan + Pa.root_print('cfl_max_local: '+ str(cfl_max_local)) + Pa.root_print(str(self.dt * (fabs(PV.values[u_shift + ijk])*dxi[0] + fabs(PV.values[v_shift+ijk])*dxi[1] + w*dxi[2]))) # is a nan + Pa.root_print('u: '+str(PV.values[u_shift + ijk])) + Pa.root_print('v: '+str(PV.values[v_shift+ijk])) + Pa.root_print('w: '+str(w)) + # Pa.root_print('u: '+str(fmax(PV.values))) + # Pa.root_print('w: '+str(fabs(w))) + # all three fields are nan # cfl_max_local = fmax(cfl_max_local, self.dt * (fabs(PV.values[u_shift + ijk])*dxi[0] + fabs(PV.values[v_shift+ijk])*dxi[1] + fabs(PV.values[w_shift+ijk])*dxi[2])) From f02326dfd7a6f1ae3c87a5d312dfb7eefb3a00c4 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 25 Feb 2016 01:35:35 +0100 Subject: [PATCH 027/511] changing default advection scheme for DCBL Soares to 2nd --- generate_namelist.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generate_namelist.py b/generate_namelist.py index e1a4227e..c822af7a 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -662,10 +662,10 @@ def SMOKE(): namelist['diffusion']['qt_entropy_source'] = False namelist['momentum_transport'] = {} - namelist['momentum_transport']['order'] = 7 + namelist['momentum_transport']['order'] = 2 namelist['scalar_transport'] = {} - namelist['scalar_transport']['order'] = 7 + namelist['scalar_transport']['order'] = 2 namelist['damping'] = {} From 45b22accdc579fd9eb25f122cd6a9acdfd15a87b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 25 Feb 2016 11:20:03 +0100 Subject: [PATCH 028/511] changes namelist --- generate_namelist.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generate_namelist.py b/generate_namelist.py index c822af7a..e1a4227e 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -662,10 +662,10 @@ def SMOKE(): namelist['diffusion']['qt_entropy_source'] = False namelist['momentum_transport'] = {} - namelist['momentum_transport']['order'] = 2 + namelist['momentum_transport']['order'] = 7 namelist['scalar_transport'] = {} - namelist['scalar_transport']['order'] = 2 + namelist['scalar_transport']['order'] = 7 namelist['damping'] = {} From 035e28035ca97549359ab1bc8aa5a1b8efc06215 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 25 Feb 2016 11:27:03 +0100 Subject: [PATCH 029/511] adding central scheme for QL momentum advection --- Csrc/momentum_advection_central_ql.h | 170 +++++++++++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 Csrc/momentum_advection_central_ql.h diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h new file mode 100644 index 00000000..4c15182a --- /dev/null +++ b/Csrc/momentum_advection_central_ql.h @@ -0,0 +1,170 @@ +#pragma once +#include "grid.h" +#include "advection_interpolation.h" +#include "flux_divergence.h" +#include + +// QUESTIONS / NOTES: +// need to be able to output eddy_flux??? +// how to calculate horizontal mean??? +// line 36 pp.: sp1_ed = stencil[d_advecting]; sp1_ing = stencil[d_advected]; --> confused about 'ed' vs. 'ing' + +// dimension of flux, i.e. advection of which momentum in which direction: +// --> second_order_m is called in MomentumAdvection.pyx (by calling compute_advective_tendencies_m), for a certain flux (advected and advecting velocities defined) + +// IDEA: +// (1) interpolate velocity fields (dist. btw. advecting = advected vs. advecting != advected) +// (2) average interpolated velocity fields: +// Pa.HorizontalMean(Gr, &DV.values[var_shift]), used e.g. in AuxiliaryStatistics +// (3) compute eddy flux: (vel - mean_vel)**2 AND compute total flux +// (4) compute mean eddy flux +// (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux + +void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + + // Dynamically allocate flux array + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_int_ed = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + // double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; // istride = "jump for getting to next i index" + // ssize_t: predefined type of signed integer (= signed integral type) (eqvuivalent to Py_ssize_t in python, cython) + const ssize_t jstride = dims->nlg[2]; // jstride = "jump for getting to next j index" + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; // array, containing 3 elements + // ??? ed vs ing + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp1_ing = stencil[d_advected]; // d_advecting, d_advected: given as parameters to this function + + + // (1) interpolate velocity fields + for(ssize_t i=imin;i Date: Fri, 26 Feb 2016 17:11:59 +0100 Subject: [PATCH 030/511] Adding SGS scheme UniformViscosity_cond, that takes into account the stability function, used in the Smagorinsky scheme --- Csrc/sgs.h | 14 ++++++++++ Grid.pyx | 7 +++++ ParallelMPI.pyx | 5 +++- SGS.pxd | 15 +++++++++++ SGS.pyx | 61 ++++++++++++++++++++++++++++++++++++++++++++ generate_namelist.py | 2 ++ 6 files changed, 103 insertions(+), 1 deletion(-) diff --git a/Csrc/sgs.h b/Csrc/sgs.h index 8ffb8864..8738e9ac 100644 --- a/Csrc/sgs.h +++ b/Csrc/sgs.h @@ -192,3 +192,17 @@ void tke_surface(const struct DimStruct *dims, double* e, double* lmo, double* u return; } +// Turning viscosity off for stably stratified layers +double buoyancy_adjust(const struct DimStruct *dims, double* restrict visc, double* restrict diff, +double* restrict buoy_freq, double* restrict strain_rate_mag, double prt){ + double fb = 1; + for (ssize_t i=0; inpg; i++){ +// visc[i] = cs*cs*delta*delta*strain_rate_mag[i]; + if(buoy_freq[i] > 0.0){ + fb = sqrt(fmax(1.0 - buoy_freq[i]/(prt*strain_rate_mag[i]*strain_rate_mag[i]),0.0)); +// visc[i] = visc[i] * fb; + } +// diff[i] = visc[i]/prt; + } + return fb; +} \ No newline at end of file diff --git a/Grid.pyx b/Grid.pyx index 0aa121eb..d7688e74 100644 --- a/Grid.pyx +++ b/Grid.pyx @@ -15,6 +15,13 @@ cdef class Grid: ''' A class for storing information about the LES grid. ''' + + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + + def __init__(self,namelist,Parallel): ''' diff --git a/ParallelMPI.pyx b/ParallelMPI.pyx index 6118dcfa..601d3185 100644 --- a/ParallelMPI.pyx +++ b/ParallelMPI.pyx @@ -203,7 +203,10 @@ cdef class ParallelMPI: :param values1: pointer to array of type double containing first value in product :return: memoryview type double with dimension Gr.dims.nlg[2] ''' - + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 cdef: double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') diff --git a/SGS.pxd b/SGS.pxd index 487d482a..00804f7c 100644 --- a/SGS.pxd +++ b/SGS.pxd @@ -30,6 +30,21 @@ cdef class UniformViscosity: cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) +cdef class UniformViscosity_cond: + + cdef: + double const_viscosity + double const_diffusivity + bint is_init + double fb + + cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, ParallelMPI.ParallelMPI Pa) + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + + cdef class Smagorinsky: cdef: double cs diff --git a/SGS.pyx b/SGS.pyx index cf3b0c37..3d3ef310 100644 --- a/SGS.pyx +++ b/SGS.pyx @@ -29,10 +29,17 @@ cdef extern from "sgs.h": double* strain_rate_mag, double cs, double prt) void smagorinsky_update_iles(Grid.DimStruct* dims, double* zl_half, double* visc, double* diff, double* buoy_freq, double* strain_rate_mag, double cs, double prt) + double buoyancy_adjust(Grid.DimStruct* dims, double* visc, double* diff, double* buoy_freq, + double* strain_rate_mag, double prt) + + + cdef class SGS: def __init__(self,namelist): if(namelist['sgs']['scheme'] == 'UniformViscosity'): self.scheme = UniformViscosity(namelist) + elif(namelist['sgs']['scheme'] == 'UniformViscosity_cond'): + self.scheme = UniformViscosity(namelist) elif(namelist['sgs']['scheme'] == 'Smagorinsky'): self.scheme = Smagorinsky(namelist) elif(namelist['sgs']['scheme'] == 'TKE'): @@ -101,6 +108,60 @@ cdef class UniformViscosity: return + +cdef class UniformViscosity_cond: + def __init__(self,namelist): + try: + self.const_diffusivity = namelist['sgs']['UniformViscosity']['diffusivity'] + except: + self.const_diffusivity = 0.0 + + try: + self.const_viscosity = namelist['sgs']['UniformViscosity']['viscosity'] + except: + self.const_viscosity = 0.0 + + self.is_init = False + self.prt = 1.0/3.0 + + return + + cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + return + + + cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, ParallelMPI.ParallelMPI Pa): + cdef: + Py_ssize_t diff_shift = DV.get_varshift(Gr,'diffusivity') + Py_ssize_t visc_shift = DV.get_varshift(Gr,'viscosity') + Py_ssize_t bf_shift =DV.get_varshift(Gr, 'buoyancy_frequency') + + cdef double fb = buoyancy_adjust(&Gr.dims,&DV.values[visc_shift],&DV.values[diff_shift],&DV.values[bf_shift], + &Ke.strain_rate_mag[0],self.prt) + + cdef: + #Py_ssize_t diff_shift = DV.get_varshift(Gr,'diffusivity') + #Py_ssize_t visc_shift = DV.get_varshift(Gr,'viscosity') + Py_ssize_t i + + with nogil: + if not self.is_init: + for i in xrange(Gr.dims.npg): + DV.values[diff_shift + i] = self.const_diffusivity * fb + DV.values[visc_shift + i] = self.const_viscosity * fb + self.is_init = True + + return + + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + return + + + cdef class Smagorinsky: def __init__(self,namelist): try: diff --git a/generate_namelist.py b/generate_namelist.py index 98457a20..8978dae4 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -478,6 +478,8 @@ def DYCOMS_RF01(): namelist['sgs'] = {} namelist['sgs']['scheme'] = 'Smagorinsky' + #namelist['sgs']['UniformViscosity']['diffusivity'] = 4.0 + #namelist['sgs']['UniformViscosity']['viscosity'] = 3*4.0 namelist['diffusion'] = {} namelist['diffusion']['qt_entropy_source'] = False From 616afcde9140b89a4b5303d4b29dd6f8b6a3348e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 26 Feb 2016 18:43:34 +0100 Subject: [PATCH 031/511] creating c-file for computing horizontal average (c_statistics); still do be verified; updating QL momentum advection central --- Csrc/c_statistics | 137 +++++++++++++++++++++++++++ Csrc/momentum_advection.h | 15 +++ Csrc/momentum_advection_central_ql.h | 34 +++---- Grid.pyx | 1 + MomentumAdvection.pyx | 1 + 5 files changed, 172 insertions(+), 16 deletions(-) create mode 100644 Csrc/c_statistics diff --git a/Csrc/c_statistics b/Csrc/c_statistics new file mode 100644 index 00000000..2406b108 --- /dev/null +++ b/Csrc/c_statistics @@ -0,0 +1,137 @@ +#pragma once // preprocessor statement + +#include +#include + +// how to return a double array??? +// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ +void horizontal_mean(struct DimStruct *dims, double* restrict *values){ + /* + Compute the horizontal mean of the array pointed to by values. + values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] + * Gr.dims.nlg[1]. + + :param Gr: Grid class + :param values1: pointer to array of type double containing first value in product + :return: memoryview type double with dimension Gr.dims.nlg[2] + ''' + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + */ + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); + double mean_; + double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + //int i,j,k,ijk; + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t i=imin; ing[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + + for(ssize_t k=kmin; kng[2] ?) + datatype = datatype of sendbuf + op = MPI_SUM + */ + + /* + // Example for Averaging using MPI_Allreduce: + + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Reduce all of the local sums into the global sum in order to + // calculate the mean + float global_sum; + MPI_Allreduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, + MPI_COMM_WORLD); + float mean = global_sum / (num_elements_per_proc * world_size); + */ + + + /* + // Example for Averaging from: http://mpitutorial.com/tutorials/mpi-reduce-and-allreduce/ + + float *rand_nums = NULL; + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Print the random numbers on each process + printf("Local sum for process %d - %f, avg = %f\n", + world_rank, local_sum, local_sum / num_elements_per_proc); + + // Reduce all of the local sums into the global sum + float global_sum; + MPI_Reduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, 0, + MPI_COMM_WORLD); + + // Print the result + if (world_rank == 0) { + printf("Total sum = %f, avg = %f\n", global_sum, + global_sum / (world_size * num_elements_per_proc)); + }*/ + + // in Cython: + // mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2],mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + + //return mean; + return; + +} + diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index 6d8db2cc..c3498216 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -8,6 +8,8 @@ #include "momentum_advection_central_ml.h" #include "momentum_advection_central_pt.h" #include "flux_divergence.h" + +#include "momentum_advection_central_ql.h" #include @@ -17,6 +19,7 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho double* restrict tendency, ssize_t d_advected, ssize_t d_advecting, int scheme){ switch(scheme){ + printf("scheme !!!!!!!!!!"); case 2: second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); @@ -38,6 +41,7 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho tendency, d_advected, d_advecting); break; case 7: + //printf("hihihihi"); weno_seventh_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; @@ -101,6 +105,17 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho sixth_order_ml_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + + + + case 102: + printf("hahaha"); + second_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; + + + default: // Default to second order scheme. second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 4c15182a..bf71e925 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -2,6 +2,7 @@ #include "grid.h" #include "advection_interpolation.h" #include "flux_divergence.h" +#include "c_statistics" #include // QUESTIONS / NOTES: @@ -25,6 +26,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + printf("QL Momentum Transport"); + // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -71,15 +74,23 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re // (2) average interpolated velocity fields + //vel_mean_ing = Pa.HorizontalMean(Gr, &vel_int_advecting); + if (d_advected != d_advecting){ + vel_mean_ed = vel_mean_ing; + //vel_mean_ed = Pa.HorizontalMean(Gr, &vel_int_advected); + } + else { + vel_mean_ed = vel_mean_ing; + } // ??? call function per k or globally? - for(ssize_t k=kmin;k total number of pts + # Gr.dims.ng[i] = Gr.dims.n[i] + 2*gw --> total number of pts incl. ghost points # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points # i = 0,1,2 diff --git a/MomentumAdvection.pyx b/MomentumAdvection.pyx index c47e8cd7..756039af 100644 --- a/MomentumAdvection.pyx +++ b/MomentumAdvection.pyx @@ -23,6 +23,7 @@ cdef class MomentumAdvection: def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): try: self.order = namelist['momentum_transport']['order'] + Pa.root_print('momentum transport: order: ' + np.str(self.order)) except: Pa.root_print( 'momentum_transport order not given in namelist') From cee04465c7fb558ae8fb11e4712c90c2519878b4 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 8 Mar 2016 11:01:11 +0100 Subject: [PATCH 032/511] debugging c_statistics (horizontal mean in C) --- Csrc/{c_statistics => c_statistics.h} | 6 +- Csrc/cc_statistics.h | 147 ++++++++++++++++++++++++++ Csrc/momentum_advection_central_ql.h | 2 +- test_av/test_array | 0 4 files changed, 151 insertions(+), 4 deletions(-) rename Csrc/{c_statistics => c_statistics.h} (95%) create mode 100644 Csrc/cc_statistics.h create mode 100644 test_av/test_array diff --git a/Csrc/c_statistics b/Csrc/c_statistics.h similarity index 95% rename from Csrc/c_statistics rename to Csrc/c_statistics.h index 2406b108..1cfaf514 100644 --- a/Csrc/c_statistics +++ b/Csrc/c_statistics.h @@ -5,7 +5,7 @@ // how to return a double array??? // double horizontal_mean(struct DimStruct *dims, double* restrict *values){ -void horizontal_mean(struct DimStruct *dims, double* restrict *values){ +void horizontal_mean(struct DimStruct *dims, double* restrict values){ /* Compute the horizontal mean of the array pointed to by values. values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] @@ -21,7 +21,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict *values){ # i = 0,1,2 */ - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array double mean_; double *mean = (double *)malloc(sizeof(double) * dims->n[2]); //int i,j,k,ijk; @@ -43,7 +43,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict *values){ const ssize_t jshift = j * jstride; for(ssize_t k=kmin; k +#include + +// how to return a double array??? +// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ +void horizontal_mean(struct DimStruct *dims, double* restrict values){ + /* + Compute the horizontal mean of the array pointed to by values. + values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] + * Gr.dims.nlg[1]. + + :param Gr: Grid class + :param values1: pointer to array of type double containing first value in product + :return: memoryview type double with dimension Gr.dims.nlg[2] + ''' + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + */ + + printf("values[0] = %f\n", values[0]); + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double mean_; + double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + //int i,j,k,ijk; + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t i=imin; ing[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + + for(ssize_t k=kmin; kng[2] ?) + datatype = datatype of sendbuf + op = MPI_SUM + */ + + /* + // Example for Averaging using MPI_Allreduce: + + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Reduce all of the local sums into the global sum in order to + // calculate the mean + float global_sum; + MPI_Allreduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, + MPI_COMM_WORLD); + float mean = global_sum / (num_elements_per_proc * world_size); + */ + + + /* + // Example for Averaging from: http://mpitutorial.com/tutorials/mpi-reduce-and-allreduce/ + + float *rand_nums = NULL; + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Print the random numbers on each process + printf("Local sum for process %d - %f, avg = %f\n", + world_rank, local_sum, local_sum / num_elements_per_proc); + + // Reduce all of the local sums into the global sum + float global_sum; + MPI_Reduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, 0, + MPI_COMM_WORLD); + + // Print the result + if (world_rank == 0) { + printf("Total sum = %f, avg = %f\n", global_sum, + global_sum / (world_size * num_elements_per_proc)); + }*/ + + // in Cython: + // mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2],mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + + //return mean; + return; + +} + diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index bf71e925..b666071e 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -2,7 +2,7 @@ #include "grid.h" #include "advection_interpolation.h" #include "flux_divergence.h" -#include "c_statistics" +#include "c_statistics.h" #include // QUESTIONS / NOTES: diff --git a/test_av/test_array b/test_av/test_array new file mode 100644 index 00000000..e69de29b From 139684c302185497cb9fe19de9bc07e3ab13664b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 8 Mar 2016 13:28:09 +0100 Subject: [PATCH 033/511] adding test for c_statistics to git --- test_av/DiagnosticVariables.pxd | 34 + test_av/DiagnosticVariables.pyx | 196 ++++++ test_av/Grid.pxd | 56 ++ test_av/Grid.pyx | 231 +++++++ test_av/MomentumAdvection.pyx | 131 ++++ test_av/NetCDFIO.pxd | 75 ++ test_av/NetCDFIO.pyx | 489 +++++++++++++ test_av/ParallelMPI.pxd | 73 ++ test_av/ParallelMPI.pyx | 1071 +++++++++++++++++++++++++++++ test_av/PrognosticVariables.pxd | 53 ++ test_av/PrognosticVariables.pyx | 358 ++++++++++ test_av/ReferenceState.pxd | 24 + test_av/ReferenceState.pyx | 176 +++++ test_av/Restart.pxd | 16 + test_av/Restart.pyx | 109 +++ test_av/TestArray_c.pxd | 69 ++ test_av/TestArray_c.pyx | 57 ++ test_av/TestRun.pyx | 87 +++ test_av/TimeStepping.pxd | 36 + test_av/TimeStepping.pyx | 283 ++++++++ test_av/cc_statistics.h | 147 ++++ test_av/grid.h | 24 + test_av/main.py | 64 ++ test_av/parameters.h | 27 + test_av/prognostic_variables.h | 280 ++++++++ test_av/setup.py | 233 +++++++ test_av/test_array | 0 test_av/thermodynamic_functions.h | 65 ++ 28 files changed, 4464 insertions(+) create mode 100644 test_av/DiagnosticVariables.pxd create mode 100644 test_av/DiagnosticVariables.pyx create mode 100644 test_av/Grid.pxd create mode 100644 test_av/Grid.pyx create mode 100644 test_av/MomentumAdvection.pyx create mode 100644 test_av/NetCDFIO.pxd create mode 100644 test_av/NetCDFIO.pyx create mode 100644 test_av/ParallelMPI.pxd create mode 100644 test_av/ParallelMPI.pyx create mode 100644 test_av/PrognosticVariables.pxd create mode 100644 test_av/PrognosticVariables.pyx create mode 100644 test_av/ReferenceState.pxd create mode 100644 test_av/ReferenceState.pyx create mode 100644 test_av/Restart.pxd create mode 100644 test_av/Restart.pyx create mode 100644 test_av/TestArray_c.pxd create mode 100644 test_av/TestArray_c.pyx create mode 100644 test_av/TestRun.pyx create mode 100644 test_av/TimeStepping.pxd create mode 100644 test_av/TimeStepping.pyx create mode 100644 test_av/cc_statistics.h create mode 100644 test_av/grid.h create mode 100644 test_av/main.py create mode 100644 test_av/parameters.h create mode 100644 test_av/prognostic_variables.h create mode 100644 test_av/setup.py delete mode 100644 test_av/test_array create mode 100644 test_av/thermodynamic_functions.h diff --git a/test_av/DiagnosticVariables.pxd b/test_av/DiagnosticVariables.pxd new file mode 100644 index 00000000..476c7207 --- /dev/null +++ b/test_av/DiagnosticVariables.pxd @@ -0,0 +1,34 @@ +cimport ParallelMPI +cimport Grid +from NetCDFIO cimport NetCDFIO_Stats +cdef class DiagnosticVariables: + cdef: + dict name_index + dict units + list index_name + Py_ssize_t nv + double [:] values + double [:] bc_type + long [:] sedv_index + Py_ssize_t nsedv + dict name_index_2d + dict units_2d + Py_ssize_t nv_2d + double [:] values_2d + void communicate_variable(self,Grid.Grid Gr,ParallelMPI.ParallelMPI PM, long nv) + cpdef add_variables(self, name, units, bc_type, ParallelMPI.ParallelMPI Pa) + # cpdef initialize(self,Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef get_variable_array(self,name,Grid.Grid Gr) + cdef inline int get_nv(self, str variable_name): + return self.name_index[variable_name] + cdef inline int get_varshift(self, Grid.Grid Gr, str variable_name): + return self.name_index[variable_name] * Gr.dims.npg + cpdef val_nan(self,PA,message) + # cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef add_variables_2d(self, name, units) + + cdef inline int get_nv_2d(self, str variable_name): + return self.name_index_2d[variable_name] + cdef inline int get_varshift_2d(self, Grid.Grid Gr, str variable_name): + return self.name_index_2d[variable_name] * Gr.dims.nlg[0] * Gr.dims.nlg[1] \ No newline at end of file diff --git a/test_av/DiagnosticVariables.pyx b/test_av/DiagnosticVariables.pyx new file mode 100644 index 00000000..0af75786 --- /dev/null +++ b/test_av/DiagnosticVariables.pyx @@ -0,0 +1,196 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +cimport ParallelMPI +cimport Grid +# from NetCDFIO cimport NetCDFIO_Stats +import numpy as np +cimport numpy as np +cimport ParallelMPI +from cpython.mem cimport PyMem_Malloc, PyMem_Realloc, PyMem_Free +cimport mpi4py.libmpi as mpi + +cdef extern from "prognostic_variables.h": + void build_buffer(int nv, int dim, int s ,Grid.DimStruct *dims, double* values, double* buffer) + void buffer_to_values(int dim, int s, Grid.DimStruct *dims, double* values, double* buffer) + void set_bcs( int dim, int s, double bc_factor, Grid.DimStruct *dims, double* values) + +cdef class DiagnosticVariables: + def __init__(self): + self.name_index = {} + self.index_name = [] + self.units = {} + self.nv = 0 + self.bc_type = np.array([],dtype=np.double,order='c') + + self.name_index_2d = {} + self.units_2d = {} + self.nv_2d = 0 + # keep track of which indices are associated with sedimentation velocity + self.sedv_index = np.array([],dtype=np.int,order='c') + self.nsedv = 0 + + cpdef add_variables(self, name, units,bc_type, ParallelMPI.ParallelMPI Pa): + self.name_index[name] = self.nv + self.index_name.append(name) + self.units[name] = units + #Add bc type to array + if bc_type == "sym": + self.bc_type = np.append(self.bc_type,[1.0]) + elif bc_type =="asym": + self.bc_type = np.append(self.bc_type,[-1.0]) + else: + Pa.root_print("Not a valid bc_type. Killing simulation now!") + Pa.kill() + + if name[0:2] == 'w_': + self.sedv_index = np.append(self.sedv_index,self.nv) + self.nsedv += 1 + + self.nv = len(self.name_index.keys()) + return + + cpdef add_variables_2d(self, name, units): + self.name_index_2d[name] = self.nv_2d + self.units_2d[name] = units + self.nv_2d = len(self.name_index_2d.keys()) + + return + + cdef void communicate_variable(self, Grid.Grid Gr, ParallelMPI.ParallelMPI PM, long nv): + + cdef: + double* send_buffer + double* recv_buffer + long d, s + long var_shift, buffer_var_shift + long [:] shift = np.array([-1,1],dtype=np.int,order='c') + int ierr, source_rank, dest_rank + mpi.MPI_Status status + + ierr = mpi.MPI_Comm_rank(PM.cart_comm_world,&source_rank) + + var_shift = (nv) * Gr.dims.npg + for d in xrange(Gr.dims.dims): + buffer_var_shift = 0 + #Allocate memory for send and recv buffers. + send_buffer = PyMem_Malloc(Gr.dims.nbuffer[d] * sizeof(double)) + recv_buffer = PyMem_Malloc(Gr.dims.nbuffer[d] * sizeof(double)) + for s in shift: + + #Since we are only sending one variable at a time the first argument in buld_buffer should be 0 + # let's clean this up later + build_buffer(0, d, s,&Gr.dims,&self.values[var_shift],&send_buffer[0]) + + #Determine the MPI shifts + ierr = mpi.MPI_Cart_shift(PM.cart_comm_world,d,s,&source_rank,&dest_rank) + + + #Do send and recv given shift + ierr = mpi.MPI_Sendrecv(&send_buffer[0],Gr.dims.nbuffer[d],mpi.MPI_DOUBLE,dest_rank,0, + &recv_buffer[0],Gr.dims.nbuffer[d], + mpi.MPI_DOUBLE,source_rank,0,PM.cart_comm_world,&status) + + #If communicated values are to be used copy them into the correct location + if source_rank >= 0: + buffer_to_values(d, s,&Gr.dims,&self.values[var_shift],&recv_buffer[0]) + #If communicated values are not be used, set numerical boundary consitions + else: + set_bcs(d,s,self.bc_type[nv],&Gr.dims,&self.values[var_shift]) + + + #Important: Free memory associated with memory buffer to prevent memory leak + PyMem_Free(send_buffer) + PyMem_Free(recv_buffer) + + + return + + cpdef get_variable_array(self,name,Grid.Grid Gr): + index = self.name_index[name] + view = np.array(self.values).view() + view.shape = (self.nv,Gr.dims.nlg[0],Gr.dims.nlg[1],Gr.dims.nlg[2]) + return view[index,:,:,:] + + cpdef val_nan(self,PA,message): + if np.isnan(self.values).any(): + print('Nans found in Diagnostic Variables values') + print(message) + PA.kill() + return + + # cpdef initialize(self,Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + # self.values = np.empty((self.nv*Gr.dims.npg),dtype=np.double,order='c') + # self.values_2d = np.empty((self.nv_2d*Gr.dims.nlg[0]*Gr.dims.nlg[1]),dtype=np.double,order='c' ) + cpdef initialize(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + self.values = np.empty((self.nv*Gr.dims.npg),dtype=np.double,order='c') + self.values_2d = np.empty((self.nv_2d*Gr.dims.nlg[0]*Gr.dims.nlg[1]),dtype=np.double,order='c' ) + + + # #Add prognostic variables to Statistics IO + # Pa.root_print('Setting up statistical output files for Prognostic Variables') + # for var_name in self.name_index.keys(): + # #Add mean profile + # NS.add_profile(var_name+'_mean',Gr,Pa) + # #Add mean of squares profile + # NS.add_profile(var_name+'_mean2',Gr,Pa) + # #Add mean of cubes profile + # NS.add_profile(var_name+'_mean3',Gr,Pa) + # #Add max profile + # NS.add_profile(var_name+'_max',Gr,Pa) + # #Add min profile + # NS.add_profile(var_name+'_min',Gr,Pa) + # #Add max ts + # NS.add_ts(var_name+'_max',Gr,Pa) + # #Add min ts + # NS.add_ts(var_name+'_min',Gr,Pa) + # for var_name in self.name_index_2d.keys(): + # #Add mean profile + # NS.add_ts(var_name+'_mean',Gr,Pa) + + return + + # cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + # cdef: + # int var_shift + # double [:] tmp + # double tmp2 + # + # for var_name in self.name_index.keys(): + # Pa.root_print('Diagnostic Variables: write profile: ' + var_name) + # + # var_shift = self.get_varshift(Gr,var_name) + # + # #Compute and write mean + # tmp = Pa.HorizontalMean(Gr,&self.values[var_shift]) + # NS.write_profile(var_name + '_mean',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + # + # #Compute and write mean of squres + # tmp = Pa.HorizontalMeanofSquares(Gr,&self.values[var_shift],&self.values[var_shift]) + # NS.write_profile(var_name + '_mean2',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + # + # #Compute and write mean of cubes + # tmp = Pa.HorizontalMeanofCubes(Gr,&self.values[var_shift],&self.values[var_shift],&self.values[var_shift]) + # NS.write_profile(var_name + '_mean3',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + # + # #Compute and write maxes + # tmp = Pa.HorizontalMaximum(Gr,&self.values[var_shift]) + # NS.write_profile(var_name + '_max',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + # NS.write_ts(var_name+'_max',np.amax(tmp[Gr.dims.gw:-Gr.dims.gw]),Pa) + # + # #Compute and write mins + # tmp = Pa.HorizontalMinimum(Gr,&self.values[var_shift]) + # NS.write_profile(var_name + '_min',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + # NS.write_ts(var_name+'_min',np.amin(tmp[Gr.dims.gw:-Gr.dims.gw]),Pa) + # + # for var_name in self.name_index_2d.keys(): + # var_shift = self.get_varshift_2d(Gr,var_name) + # + # #Compute and write mean + # tmp2 = Pa.HorizontalMeanSurface(Gr,&self.values_2d[var_shift]) + # NS.write_ts(var_name + '_mean',tmp2,Pa) + # + # return diff --git a/test_av/Grid.pxd b/test_av/Grid.pxd new file mode 100644 index 00000000..d09f0c94 --- /dev/null +++ b/test_av/Grid.pxd @@ -0,0 +1,56 @@ +cimport ParallelMPI +cimport Restart + +cdef extern from "grid.h": + struct DimStruct: + + int dims + + int [3] n + int [3] ng + int [3] nl + int [3] nlg + int [3] indx_lo_g + int [3] indx_lo + + int npd + int npl + int npg + int gw + + int [3] nbuffer + int [3] ghosted_stride + + double [3] dx + double [3] dxi + +cdef class Grid: + cdef: + DimStruct dims + + double [:] x + double [:] x_half + double [:] y + double [:] y_half + double [:] z + double [:] z_half + + double [:] xl + double [:] xl_half + double [:] yl + double [:] yl_half + double [:] zl + double [:] zl_half + + void compute_global_dims(self) + void compute_local_dims(self,ParallelMPI.ParallelMPI Parallel) + void compute_coordinates(self) + + cpdef extract_local(self, double [:] global_array, int dim) + + cpdef extract_local_ghosted(self, double [:] global_array, int dim) + + cpdef restart(self, Restart.Restart Re) + + + diff --git a/test_av/Grid.pyx b/test_av/Grid.pyx new file mode 100644 index 00000000..64b20919 --- /dev/null +++ b/test_av/Grid.pyx @@ -0,0 +1,231 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +cimport mpi4py.libmpi as mpi +#cimport mpi4py.mpi_c as mpi +cimport ParallelMPI +cimport Restart +cimport numpy as np +import numpy as np +import time +cdef class Grid: + ''' + A class for storing information about the LES grid. + ''' + + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.ng[i] = Gr.dims.n[i] + 2*gw --> total number of pts incl. ghost points + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + + + def __init__(self,namelist,Parallel): + ''' + + :param namelist: Namelist dictionary + :param Parallel: ParallelMPI class + :return: + ''' + + self.dims.dims = namelist['grid']['dims'] + + #Get the grid spacing + self.dims.dx[0] = namelist['grid']['dx'] + self.dims.dx[1] = namelist['grid']['dy'] + self.dims.dx[2] = namelist['grid']['dz'] + + #Set the inverse grid spacing + self.dims.dxi[0] = 1.0/self.dims.dx[0] + self.dims.dxi[1] = 1.0/self.dims.dx[1] + self.dims.dxi[2] = 1.0/self.dims.dx[2] + + #Get the grid dimensions and ghost points + self.dims.gw = namelist['grid']['gw'] + self.dims.n[0] = namelist['grid']['nx'] + self.dims.n[1] = namelist['grid']['ny'] + self.dims.n[2] = namelist['grid']['nz'] + + #Compute the global and local dims + self.compute_global_dims() + self.compute_local_dims(Parallel) + self.compute_coordinates() + + return + + cdef inline void compute_global_dims(self): + ''' + Compute the dimensions of the global of the domain, including ghost points and store the to self.dims. + :return: + ''' + cdef int i + with nogil: + for i in range(self.dims.dims): + self.dims.ng[i] = self.dims.n[i] + 2*self.dims.gw + return + + cdef inline void compute_local_dims(self,ParallelMPI.ParallelMPI Parallel): + ''' + This function computes the local dimensions of the 3D array owned by each processor. No assumption is made + about the number of cores evenly dividing the number of global grid points in each directions. If the number of + grid points is not evenly divisible, we tack one additional point from the remainder onto each rank less the + the remainder. + :param Parallel: + :return: + ''' + cdef: + int i + int ierr = 0 + int maxdims = 3 + int [3] mpi_dims + int [3] mpi_periods + int [3] mpi_coords + int remainder = 0 + + ierr = mpi.MPI_Cart_get(Parallel.cart_comm_world,maxdims,mpi_dims,mpi_periods,mpi_coords) + for i in xrange(3): #Here we loop over all three dimensions even if they are empty + self.dims.nl[i] = self.dims.n[i]//mpi_dims[i] + remainder = self.dims.n[i]%mpi_dims[i] + if remainder > 0 and mpi_coords[i] < remainder: + self.dims.nl[i] += 1 + self.dims.nlg[i] = self.dims.nl[i] + 2 * self.dims.gw + + #Now compute the high and lo indicies for this processor + for i in xrange(3): + npts = 0 + nptsg = 0 + proc = 0 + + + while proc <= mpi_coords[i]: + self.dims.indx_lo[i] = npts + self.dims.indx_lo_g[i] = nptsg + npts += self.dims.n[i]//mpi_dims[i] + nptsg += self.dims.n[i]//mpi_dims[i] + 2 * self.dims.gw + remainder = self.dims.n[i]%mpi_dims[i] + if remainder >0 and proc < remainder: + npts += 1 + nptsg += 1 + proc += 1 + + self.dims.npd = np.max([self.dims.n[0],1])*np.max([self.dims.n[1],1])*np.max([self.dims.n[2],1]) + self.dims.npl = self.dims.nl[0] * self.dims.nl[1] * self.dims.nl[2] + self.dims.npg = self.dims.nlg[0] * self.dims.nlg[1] * self.dims.nlg[2] + + + #Compute the number of ghostpoint for mpi_buffers + self.dims.nbuffer[0] = self.dims.gw * np.max([self.dims.nlg[1] * self.dims.nlg[2], + self.dims.nlg[1], self.dims.nlg[2] ]) + self.dims.nbuffer[1] = self.dims.gw * np.max([self.dims.nlg[0] * self.dims.nlg[2], + self.dims.nlg[0], self.dims.nlg[2] ]) + self.dims.nbuffer[2] = self.dims.gw * np.max([self.dims.nlg[0] * self.dims.nlg[1], + self.dims.nlg[0], self.dims.nlg[1] ]) + + + self.dims.ghosted_stride[0] = np.max([self.dims.nlg[1] * self.dims.nlg[2], self.dims.nlg[1], self.dims.nlg[2]]) + self.dims.ghosted_stride[1] = np.max([1, self.dims.nlg[0]]) + self.dims.ghosted_stride[2] = 1 + + return + + cdef void compute_coordinates(self): + ''' + Compute the dimensional (with units) of meters coordiantes. x_half, y_half and z_half are + the grid cell center and x,y,z are at the grid cell edges. + :return: + ''' + + + self.x_half = np.empty((self.dims.n[0]+2*self.dims.gw),dtype=np.double,order='c') + self.x = np.empty((self.dims.n[0]+2*self.dims.gw),dtype=np.double,order='c') + + self.y_half = np.empty((self.dims.n[1]+2*self.dims.gw),dtype=np.double,order='c') + self.y = np.empty((self.dims.n[1]+2*self.dims.gw),dtype=np.double,order='c') + + self.z_half = np.empty((self.dims.n[2]+2*self.dims.gw),dtype=np.double,order='c') + self.z = np.empty((self.dims.n[2]+2*self.dims.gw),dtype=np.double,order='c') + + cdef int i, count = 0 + for i in xrange(-self.dims.gw,self.dims.n[2]+self.dims.gw,1): + self.z[count] = (i + 1) * self.dims.dx[2] + self.z_half[count] = (i+0.5)*self.dims.dx[2] + count += 1 + + count = 0 + for i in xrange(-self.dims.gw,self.dims.n[0]+self.dims.gw,1): + self.x[count] = (i + 1) * self.dims.dx[0] + self.x_half[count] = (i+0.5)*self.dims.dx[0] + count += 1 + + count = 0 + for i in xrange(-self.dims.gw,self.dims.n[1]+self.dims.gw,1): + self.y[count] = (i + 1) * self.dims.dx[1] + self.y_half[count] = (i+0.5)*self.dims.dx[1] + count += 1 + + + #Extract just the local components of the height coordinate + self.zl = self.extract_local_ghosted(self.z,2) + self.zl_half = self.extract_local_ghosted(self.zl,2) + + #Extract just the local components of the height coordinate + self.xl = self.extract_local_ghosted(self.x,0) + self.xl_half = self.extract_local_ghosted(self.xl,0) + + #Extract just the local components of the height coordinate + self.yl = self.extract_local_ghosted(self.y,1) + self.yl_half = self.extract_local_ghosted(self.yl,1) + + return + + cpdef extract_local(self,double [:] global_array, int dim): + pass + + cpdef extract_local_ghosted(self,double [:] global_array, int dim): + cdef int start = self.dims.indx_lo_g[dim] + cdef int end = self.dims.indx_lo_g[dim] + self.dims.nlg[dim] + #Force a copy with the return statement + return np.array(global_array[start:end],dtype=np.double) + + cpdef restart(self, Restart.Restart Re): + Re.restart_data['Gr'] = {} + Re.restart_data['Gr']['dims'] = self.dims.dims + Re.restart_data['Gr']['n'] = np.array([self.dims.n[0], + self.dims.n[1], + self.dims.n[2]]) + Re.restart_data['Gr']['ng'] = np.array([self.dims.ng[0], + self.dims.ng[1], + self.dims.ng[2]]) + Re.restart_data['Gr']['nl'] = np.array([self.dims.nl[0], + self.dims.nl[1], + self.dims.nl[2]]) + Re.restart_data['Gr']['nlg'] = np.array([self.dims.nlg[0], + self.dims.nlg[1], + self.dims.nlg[2]]) + Re.restart_data['Gr']['indx_lo_g'] = np.array([self.dims.indx_lo_g[0], + self.dims.indx_lo_g[1], + self.dims.indx_lo_g[2]]) + Re.restart_data['Gr']['indx_lo'] = np.array([self.dims.indx_lo[0], + self.dims.indx_lo[1], + self.dims.indx_lo[2]]) + Re.restart_data['Gr']['npd'] = self.dims.npd + Re.restart_data['Gr']['npl'] = self.dims.npl + Re.restart_data['Gr']['npg'] = self.dims.npg + Re.restart_data['Gr']['gw'] = self.dims.gw + Re.restart_data['Gr']['nbuffer'] = np.array([self.dims.nbuffer[0], + self.dims.nbuffer[1], + self.dims.nbuffer[2]]) + Re.restart_data['Gr']['nbuffer'] = np.array([self.dims.ghosted_stride[0], + self.dims.ghosted_stride[1], + self.dims.ghosted_stride[2]]) + Re.restart_data['Gr']['dx'] = np.array([self.dims.dx[0], + self.dims.dx[1], + self.dims.dx[2]]) + Re.restart_data['Gr']['dxi'] = np.array([self.dims.dxi[0], + self.dims.dxi[1], + self.dims.dxi[2]]) + + return diff --git a/test_av/MomentumAdvection.pyx b/test_av/MomentumAdvection.pyx new file mode 100644 index 00000000..756039af --- /dev/null +++ b/test_av/MomentumAdvection.pyx @@ -0,0 +1,131 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +cimport Grid +cimport PrognosticVariables +cimport ParallelMPI +cimport ReferenceState +from NetCDFIO cimport NetCDFIO_Stats + + +import numpy as np +cimport numpy as np + +cdef extern from "momentum_advection.h": + void compute_advective_tendencies_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, + double *alpha0, double *alpha0_half, double *vel_advected, + double *vel_advecting, double *tendency, Py_ssize_t d_advected, + Py_ssize_t d_advecting, Py_ssize_t scheme) nogil +cdef class MomentumAdvection: + def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): + try: + self.order = namelist['momentum_transport']['order'] + Pa.root_print('momentum transport: order: ' + np.str(self.order)) + except: + Pa.root_print( + 'momentum_transport order not given in namelist') + Pa.root_print('Killing simulation now!') + Pa.kill() + + return + + cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + #for i in xrange(Gr.dims.dims): + # NS.add_profile(PV.velocity_names_directional[i] + '_flux_z',Gr,Pa) + + return + + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa): + + cdef: + Py_ssize_t i_advecting # Direction of advecting velocity + Py_ssize_t i_advected # Direction of momentum component + # Shift to beginning of momentum (velocity) component in the + # PV.values array + Py_ssize_t shift_advected + # Shift to beginning of advecting velocity componentin the + # PV.values array + Py_ssize_t shift_advecting + + + for i_advected in xrange(Gr.dims.dims): + # Compute the shift to the starting location of the advected + # velocity in the PV values array + shift_advected = PV.velocity_directions[i_advected] * Gr.dims.npg + for i_advecting in xrange(Gr.dims.dims): + + # Compute the shift to the starting location of the advecting + # velocity in the PV values array + shift_advecting = PV.velocity_directions[ + i_advecting] * Gr.dims.npg + + # Compute the fluxes + compute_advective_tendencies_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], &Rs.alpha0[0], &Rs.alpha0_half[0], + &PV.values[shift_advected], &PV.values[shift_advecting], + &PV.tendencies[shift_advected], i_advected, i_advecting, self.order) + return + + + cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + # cdef: + # Py_ssize_t i_advected, i_advecting = 2, shift_flux, k + # double[:] tmp + # double [:] tmp_interp = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + # + # + # for i_advected in xrange(Gr.dims.dims): + # shift_flux = i_advected * Gr.dims.dims* Gr.dims.npg + i_advecting * Gr.dims.npg + # tmp = Pa.HorizontalMean(Gr, &self.flux[shift_flux]) + # if i_advected < 2: + # for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): + # tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) + # else: + # tmp_interp[:] = tmp[:] + # NS.write_profile(PV.velocity_names_directional[i_advected] + '_flux_z', tmp_interp[Gr.dims.gw:-Gr.dims.gw], Pa) + + return + + cpdef double [:, :, :] get_flux(self, Py_ssize_t i_advected, Py_ssize_t i_advecting, Grid.Grid Gr): + ''' + Returns momentum flux tensor component. + :param i_advected: direction of advection velocity + :param i_advecting: direction of advecting velocity + :param Gr: Grid class + :return: memory view type double rank-3 + ''' + cdef: + Py_ssize_t shift_flux = i_advected * Gr.dims.dims * Gr.dims.npg + i_advecting * Gr.dims.npg + Py_ssize_t i, j, k, ijk, ishift, jshift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + + Py_ssize_t imin = 0 + Py_ssize_t jmin = 0 + Py_ssize_t kmin = 0 + + Py_ssize_t imax = Gr.dims.nlg[0] + Py_ssize_t jmax = Gr.dims.nlg[1] + Py_ssize_t kmax = Gr.dims.nlg[2] + + cdef double[:, :, :] return_flux = np.empty((Gr.dims.nlg[0], Gr.dims.nlg[1], Gr.dims.nlg[2]), dtype=np.double, order='c') + cdef double[:] flux = self.flux + + with nogil: + for i in xrange(imin, imax): + ishift = i * istride + for j in xrange(jmin, jmax): + jshift = j * jstride + for k in xrange(kmin, kmax): + return_flux[ + i, + j, + k] = flux[ + shift_flux + + ishift + + jshift + + k] + return return_flux diff --git a/test_av/NetCDFIO.pxd b/test_av/NetCDFIO.pxd new file mode 100644 index 00000000..9330ca91 --- /dev/null +++ b/test_av/NetCDFIO.pxd @@ -0,0 +1,75 @@ +cimport ParallelMPI +cimport TimeStepping +cimport PrognosticVariables +cimport DiagnosticVariables +cimport Grid +cdef class NetCDFIO_Stats: + cdef: + object root_grp + object profiles_grp + object ts_grp + + str stats_file_name + str stats_path + str output_path + str path_plus_file + str uuid + + public double last_output_time + public double frequency + public bint do_output + + cpdef initialize(self, dict namelist, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef setup_stats_file(self, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef add_profile(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef add_reference_profile(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef add_ts(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef open_files(self, ParallelMPI.ParallelMPI Pa) + cpdef close_files(self, ParallelMPI.ParallelMPI Pa) + cpdef write_profile(self, var_name, double[:] data, ParallelMPI.ParallelMPI Pa) + cpdef write_reference_profile(self, var_name, double[:] data, ParallelMPI.ParallelMPI Pa) + cpdef write_ts(self, var_name, double data, ParallelMPI.ParallelMPI Pa) + cpdef write_simulation_time(self, double t, ParallelMPI.ParallelMPI Pa) + +cdef class NetCDFIO_Fields: + cdef: + str fields_file_name + str fields_path + str output_path + str path_plus_file + str uuid + list diagnostic_fields + + public double last_output_time + public double frequency + public bint do_output + + cpdef initialize(self, dict namelist, ParallelMPI.ParallelMPI Pa) + + cpdef update(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa) + + cpdef create_fields_file(self, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + + cpdef dump_prognostic_variables(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV) + cpdef dump_diagnostic_variables(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) + + cpdef add_field(self, name) + cpdef write_field(self, name, double[:] data) + +cdef class NetCDFIO_CondStats: + cdef: + str stats_file_name + str stats_path + str output_path + str path_plus_file + str uuid + + public double last_output_time + public double frequency + public bint do_output + + cpdef initialize(self, dict namelist, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef create_condstats_group(self, str groupname, str dimname, double[:] dimval, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef add_condstat(self, str varname, str groupname, str dimname, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef write_condstat(self, varname, groupname, double[:,:] data, ParallelMPI.ParallelMPI Pa) + cpdef write_condstat_time(self, double t, ParallelMPI.ParallelMPI Pa) diff --git a/test_av/NetCDFIO.pyx b/test_av/NetCDFIO.pyx new file mode 100644 index 00000000..e9b249e6 --- /dev/null +++ b/test_av/NetCDFIO.pyx @@ -0,0 +1,489 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +import netCDF4 as nc +import os +import shutil +cimport ParallelMPI +cimport TimeStepping +cimport PrognosticVariables +cimport DiagnosticVariables +cimport Grid +import numpy as np +cimport numpy as np +import cython + +cdef class NetCDFIO_Stats: + def __init__(self): + self.root_grp = None + self.profiles_grp = None + self.ts_grp = None + return + + @cython.wraparound(True) + cpdef initialize(self, dict namelist, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + self.last_output_time = 0.0 + self.uuid = str(namelist['meta']['uuid']) + self.frequency = namelist['stats_io']['frequency'] + + # Setup the statistics output path + outpath = str(os.path.join(namelist['output']['output_root'] + 'Output.' + namelist['meta']['simname'] + '.' + self.uuid[-5:])) + + if Pa.rank == 0: + try: + os.mkdir(outpath) + except: + pass + + self.stats_path = str( os.path.join(outpath, namelist['stats_io']['stats_dir'])) + if Pa.rank == 0: + try: + os.mkdir(self.stats_path) + except: + pass + + + self.path_plus_file = str( self.stats_path + '/' + 'Stats.' + namelist['meta']['simname'] + '.nc') + if os.path.exists(self.path_plus_file): + for i in range(100): + res_name = 'Restart_'+str(i) + print "Here " + res_name + if os.path.exists(self.path_plus_file): + self.path_plus_file = str( self.stats_path + '/' + 'Stats.' + namelist['meta']['simname'] + + '.' + res_name + '.nc') + else: + break + + Pa.barrier() + + + + if Pa.rank == 0: + shutil.copyfile( + os.path.join( './', namelist['meta']['simname'] + '.in'), + os.path.join( outpath, namelist['meta']['simname'] + '.in')) + self.setup_stats_file(Gr, Pa) + return + + cpdef open_files(self, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + self.root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + self.profiles_grp = self.root_grp.groups['profiles'] + self.ts_grp = self.root_grp.groups['timeseries'] + return + + cpdef close_files(self, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + self.root_grp.close() + return + + cpdef setup_stats_file(self, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + root_grp = nc.Dataset(self.path_plus_file, 'w', format='NETCDF4') + + # Set profile dimensions + profile_grp = root_grp.createGroup('profiles') + profile_grp.createDimension('z', Gr.dims.n[2]) + profile_grp.createDimension('t', None) + z = profile_grp.createVariable('z', 'f8', ('z')) + z[:] = np.array(Gr.z[Gr.dims.gw:-Gr.dims.gw]) + profile_grp.createVariable('t', 'f8', ('t')) + del z + + reference_grp = root_grp.createGroup('reference') + reference_grp.createDimension('z', Gr.dims.n[2]) + z = reference_grp.createVariable('z', 'f8', ('z')) + z[:] = np.array(Gr.z[Gr.dims.gw:-Gr.dims.gw]) + del z + + ts_grp = root_grp.createGroup('timeseries') + ts_grp.createDimension('t', None) + ts_grp.createVariable('t', 'f8', ('t')) + + root_grp.close() + return + + cpdef add_profile(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + profile_grp = root_grp.groups['profiles'] + new_var = profile_grp.createVariable(var_name, 'f8', ('t', 'z')) + + root_grp.close() + + return + + cpdef add_reference_profile(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + ''' + Adds a profile to the reference group NetCDF Stats file. + :param var_name: name of variable + :param Gr: Grid class + :param Pa: ParallelMPI class + :return: + ''' + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + reference_grp = root_grp.groups['reference'] + new_var = reference_grp.createVariable(var_name, 'f8', ('z',)) + + root_grp.close() + + return + + cpdef add_ts(self, var_name, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + ts_grp = root_grp.groups['timeseries'] + new_var = ts_grp.createVariable(var_name, 'f8', ('t',)) + + root_grp.close() + return + + cpdef write_profile(self, var_name, double[:] data, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + #root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + #profile_grp = root_grp.groups['profiles'] + var = self.profiles_grp.variables[var_name] + var[-1, :] = np.array(data) + #root_grp.close() + return + + cpdef write_reference_profile(self, var_name, double[:] data, ParallelMPI.ParallelMPI Pa): + ''' + Writes a profile to the reference group NetCDF Stats file. The variable must have already been + added to the NetCDF file using add_reference_profile + :param var_name: name of variables + :param data: data to be written to file + :param Pa: ParallelMPI class + :return: + ''' + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + reference_grp = root_grp.groups['reference'] + var = reference_grp.variables[var_name] + var[:] = np.array(data) + root_grp.close() + return + + @cython.wraparound(True) + cpdef write_ts(self, var_name, double data, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + #root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + #ts_grp = root_grp.groups['timeseries'] + var = self.ts_grp.variables[var_name] + var[-1] = data + #root_grp.close() + return + + cpdef write_simulation_time(self, double t, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + #root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + #profile_grp = root_grp.groups['profiles'] + #ts_grp = root_grp.groups['timeseries'] + + # Write to profiles group + profile_t = self.profiles_grp.variables['t'] + profile_t[profile_t.shape[0]] = t + + # Write to timeseries group + ts_t = self.ts_grp.variables['t'] + ts_t[ts_t.shape[0]] = t + + #root_grp.close() + return + +cdef class NetCDFIO_Fields: + def __init__(self): + return + + @cython.wraparound(True) + cpdef initialize(self, dict namelist, ParallelMPI.ParallelMPI Pa): + + self.last_output_time = 0.0 + self.uuid = str(namelist['meta']['uuid']) + self.frequency = namelist['fields_io']['frequency'] + + self.diagnostic_fields = namelist['fields_io']['diagnostic_fields'] + + # Setup the statistics output path + outpath = str(os.path.join(namelist['output']['output_root'] + 'Output.' + namelist['meta']['simname'] + '.' + self.uuid[-5:])) + self.fields_path = str(os.path.join(outpath, namelist['fields_io']['fields_dir'])) + if Pa.rank == 0: + try: + os.mkdir(outpath) + except: + pass + try: + os.mkdir(self.fields_path) + except: + pass + + shutil.copyfile( os.path.join('./', namelist['meta']['simname'] + '.in'), + os.path.join( outpath, namelist['meta']['simname'] + '.in')) + return + + cpdef update(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa): + + new_dir = os.path.join( + self.fields_path, str(int(self.last_output_time))) + + if Pa.rank == 0 and not os.path.exists(new_dir): + try: + os.mkdir(new_dir) + except: + print('Problem creating fields output dir') + + Pa.barrier() + self.output_path = str(new_dir) + self.path_plus_file = str( + os.path.join( + self.output_path, str( + Pa.rank) + '.nc')) + self.create_fields_file(Gr, Pa) + self.do_output = True + return + + cpdef create_fields_file(self, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + rootgrp = nc.Dataset(self.path_plus_file, 'w', format='NETCDF4') + dimgrp = rootgrp.createGroup('dims') + fieldgrp = rootgrp.createGroup('fields') + + fieldgrp.createDimension('nl', np.int(Gr.dims.npl)) + dimgrp.createDimension('d1', 1) + + nl_0 = dimgrp.createVariable('nl_0', 'i4', ('d1')) + nl_1 = dimgrp.createVariable('nl_1', 'i4', ('d1')) + nl_2 = dimgrp.createVariable('nl_2', 'i4', ('d1')) + n_0 = dimgrp.createVariable('n_0', 'i4', ('d1')) + n_1 = dimgrp.createVariable('n_1', 'i4', ('d1')) + n_2 = dimgrp.createVariable('n_2', 'i4', ('d1')) + indx_lo_0 = dimgrp.createVariable('indx_lo_0', 'i4', ('d1')) + indx_lo_1 = dimgrp.createVariable('indx_lo_1', 'i4', ('d1')) + indx_lo_2 = dimgrp.createVariable('indx_lo_2', 'i4', ('d1')) + ng = dimgrp.createVariable('ng', 'i4', ('d1')) + + # Dimension of equivalent 3d array owned by this rank + nl_0[:] = Gr.dims.nl[0] + nl_1[:] = Gr.dims.nl[1] + nl_2[:] = Gr.dims.nl[2] + + n_0[:] = Gr.dims.n[0] + n_1[:] = Gr.dims.n[1] + n_2[:] = Gr.dims.n[2] + + # Lower Left has point in global 3d array of the equivalent 3d array + # owned by this processor + indx_lo_0[:] = Gr.dims.indx_lo[0] + indx_lo_1[:] = Gr.dims.indx_lo[1] + indx_lo_2[:] = Gr.dims.indx_lo[2] + + ng[:] = Gr.dims.npd + + rootgrp.close() + return + + cpdef dump_prognostic_variables(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV): + + cdef: + Py_ssize_t i, j, k, ijk, ishift, jshift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + Py_ssize_t var_shift + double[:] data = np.empty((Gr.dims.npl,), dtype=np.double, order='c') + Py_ssize_t count + for name in PV.name_index.keys(): + self.add_field(name) + var_shift = PV.get_varshift(Gr, name) + count = 0 + with nogil: + for i in range(imin, imax): + ishift = i * istride + for j in range(jmin, jmax): + jshift = j * jstride + for k in range(kmin, kmax): + ijk = ishift + jshift + k + data[count] = PV.values[var_shift + ijk] + count += 1 + self.write_field(name, data) + return + + + cpdef dump_diagnostic_variables(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): + + cdef: + Py_ssize_t i, j, k, ijk, ishift, jshift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + Py_ssize_t var_shift + double[:] data = np.empty((Gr.dims.npl,), dtype=np.double, order='c') + Py_ssize_t count + for name in self.diagnostic_fields: + try: + self.add_field(name) + var_shift = DV.get_varshift(Gr, str(name)) + count = 0 + with nogil: + for i in range(imin, imax): + ishift = i * istride + for j in range(jmin, jmax): + jshift = j * jstride + for k in range(kmin, kmax): + ijk = ishift + jshift + k + data[count] = DV.values[var_shift + ijk] + count += 1 + self.write_field(str(name), data) + except: + Pa.root_print('Could not output DiagnosticVariable Field: ' + name ) + return + + cpdef add_field(self, name): + rootgrp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + fieldgrp = rootgrp.groups['fields'] + fieldgrp.createVariable(name, 'f8', ('nl')) + rootgrp.close() + return + + cpdef write_field(self, name, double[:] data): + rootgrp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + fieldgrp = rootgrp.groups['fields'] + var = fieldgrp.variables[name] + var[:] = np.array(data) + rootgrp.close() + return + + + +cdef class NetCDFIO_CondStats: + def __init__(self): + + return + + @cython.wraparound(True) + cpdef initialize(self, dict namelist, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + self.last_output_time = 0.0 + self.uuid = str(namelist['meta']['uuid']) + # if a frequency is not defined for the conditional statistics, set frequency to the maximum simulation time + try: + self.frequency = namelist['conditional_stats']['frequency'] + except: + self.frequency = namelist['time_stepping']['t_max'] + + + # Setup the statistics output path + outpath = str(os.path.join(namelist['output']['output_root'] + 'Output.' + namelist['meta']['simname'] + '.' + self.uuid[-5:])) + + if Pa.rank == 0: + try: + os.mkdir(outpath) + except: + pass + + # Set a default name for the output directory if it is not defined in the namelist + try: + self.stats_path = str( os.path.join(outpath, namelist['conditional_stats']['stats_dir'])) + except: + self.stats_path = str( os.path.join(outpath, 'cond_stats')) + + if Pa.rank == 0: + try: + os.mkdir(self.stats_path) + except: + pass + + + self.path_plus_file = str( self.stats_path + '/' + 'CondStats.' + namelist['meta']['simname'] + '.nc') + if os.path.exists(self.path_plus_file): + for i in range(100): + res_name = 'Restart_'+str(i) + if os.path.exists(self.path_plus_file): + self.path_plus_file = str( self.stats_path + '/' + 'CondStats.' + namelist['meta']['simname'] + + '.' + res_name + '.nc') + else: + break + + Pa.barrier() + + + + if Pa.rank == 0: + shutil.copyfile( + os.path.join( './', namelist['meta']['simname'] + '.in'), + os.path.join( outpath, namelist['meta']['simname'] + '.in')) + return + + cpdef create_condstats_group(self, str groupname, str dimname, double [:] dimval, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'w', format='NETCDF4') + sub_grp = root_grp.createGroup(groupname) + sub_grp.createDimension('z', Gr.dims.n[2]) + sub_grp.createDimension(dimname, len(dimval)) + sub_grp.createDimension('t', None) + z = sub_grp.createVariable('z', 'f8', ('z')) + z[:] = np.array(Gr.z[Gr.dims.gw:-Gr.dims.gw]) + dim = sub_grp.createVariable(dimname, 'f8', (dimname)) + dim[:] = np.array(dimval[:]) + sub_grp.createVariable('t', 'f8', ('t')) + del z + del dim + root_grp.close() + return + + cpdef add_condstat(self, str varname, str groupname, str dimname, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + sub_grp = root_grp.groups[groupname] + new_var = sub_grp.createVariable(varname, 'f8', ('t', 'z', dimname)) + + root_grp.close() + + return + + + cpdef write_condstat(self, varname, groupname, double [:,:] data, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + sub_grp = root_grp.groups[groupname] + var = sub_grp.variables[varname] + + var[-1, :,:] = np.array(data)[:,:] + + root_grp.close() + return + + + cpdef write_condstat_time(self, double t, ParallelMPI.ParallelMPI Pa): + if Pa.rank == 0: + try: + root_grp = nc.Dataset(self.path_plus_file, 'r+', format='NETCDF4') + for groupname in root_grp.groups: + sub_grp = root_grp.groups[groupname] + + # Write to sub_grp + group_t = sub_grp.variables['t'] + group_t[group_t.shape[0]] = t + + root_grp.close() + except: + pass + return \ No newline at end of file diff --git a/test_av/ParallelMPI.pxd b/test_av/ParallelMPI.pxd new file mode 100644 index 00000000..1fab65a1 --- /dev/null +++ b/test_av/ParallelMPI.pxd @@ -0,0 +1,73 @@ +cimport mpi4py.libmpi as mpi +cimport Grid + +cdef class ParallelMPI: + cdef: + mpi.MPI_Comm comm_world + mpi.MPI_Comm cart_comm_world + mpi.MPI_Comm cart_comm_sub_x + mpi.MPI_Comm cart_comm_sub_y + mpi.MPI_Comm cart_comm_sub_z + mpi.MPI_Comm cart_comm_sub_xy + + public int rank + int size + + int sub_x_size + int sub_y_size + int sub_z_size + + int sub_x_rank + int sub_y_rank + int sub_z_rank + + void barrier(self) + + void create_sub_communicators(self) + + double domain_scalar_sum(self, double local_value) + double domain_scalar_max(self, double local_value) + double domain_scalar_min(self, double local_value) + double [:] domain_vector_sum(self, double [:] local_vector, Py_ssize_t n) + double [:] HorizontalMean(self,Grid.Grid Gr, double* values) + double [:] HorizontalMeanofSquares(self,Grid.Grid Gr, double* values1, double* values2) + double [:] HorizontalMeanofCubes(self, Grid.Grid Gr, double* values1, double* values2, double* values3) + double [:] HorizontalMaximum(self, Grid.Grid Gr, double* values) + double [:] HorizontalMinimum(self, Grid.Grid Gr, double* values) + double HorizontalMeanSurface(self, Grid.Grid Gr, double* values) + double [:] HorizontalMeanConditional(self,Grid.Grid Gr, double* values, double* mask) + double [:] HorizontalMeanofSquaresConditional(self,Grid.Grid Gr, double* values1, double* values2, double* mask) + + cpdef root_print(self, txt_output) + cpdef kill(self) + +cdef class Pencil: + + cdef: + long n_total_pencils + long n_local_pencils + long pencil_length + long [:] n_pencil_map + long [:] nl_map + long n_local_values + int [:] send_counts + int [:] recv_counts + int [:] sdispls + int [:] rdispls + int dim + int size + int rank + + cpdef initialize(self, Grid.Grid Gr, ParallelMPI Pa, int dim) + cdef double [:,:] forward_double(self, Grid.DimStruct *dims, ParallelMPI Pa, double *data) + cdef void build_buffer_double(self, Grid.DimStruct *dims, double *data, double *local_transpose) + cdef void unpack_buffer_double(self,Grid.DimStruct *dims, double *recv_buffer, double [:,:] pencils) + cdef void reverse_double(self, Grid.DimStruct *dims, ParallelMPI Pa, double [:,:] pencils, double *data) + cdef void reverse_build_buffer_double(self, Grid.DimStruct *dims, double [:,:] pencils, double *send_buffer) + cdef void reverse_unpack_buffer_double(self, Grid.DimStruct *dims, double *recv_buffer, double *data ) + cdef complex [:,:] forward_complex(self, Grid.DimStruct *dims, ParallelMPI Pa, complex *data) + cdef void build_buffer_complex(self, Grid.DimStruct *dims, complex *data, complex *local_transpose) + cdef void unpack_buffer_complex(self,Grid.DimStruct *dims, complex *recv_buffer, complex [:,:] pencils) + cdef void reverse_complex(self, Grid.DimStruct *dims, ParallelMPI Pa, complex [:,:] pencils, complex *data) + cdef void reverse_build_buffer_complex(self, Grid.DimStruct *dims, complex [:,:] pencils, complex *send_buffer) + cdef void reverse_unpack_buffer_complex(self, Grid.DimStruct *dims, complex *recv_buffer, complex *data ) \ No newline at end of file diff --git a/test_av/ParallelMPI.pyx b/test_av/ParallelMPI.pyx new file mode 100644 index 00000000..601d3185 --- /dev/null +++ b/test_av/ParallelMPI.pyx @@ -0,0 +1,1071 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +cimport mpi4py.libmpi as mpi +cimport Grid +from time import time +import sys + +import numpy as np +cimport numpy as np +import cython +from libc.math cimport fmin, fmax +cdef class ParallelMPI: + def __init__(self,namelist): + ''' + Initializes the ParallelMPI class. Calls MPI init. Sets-up MPI cartesian topologies and sub-topologies. + :param namelist: Namelist dictionary. + :return: + ''' + + cdef: + int is_initialized + int ierr = 0 + + #Check to see if MPI_Init has been called if not do so + ierr = mpi.MPI_Initialized(&is_initialized) + if not is_initialized: + from mpi4py import MPI + self.comm_world = mpi.MPI_COMM_WORLD + ierr = mpi.MPI_Comm_rank(mpi.MPI_COMM_WORLD, &self.rank) + ierr = mpi.MPI_Comm_size(mpi.MPI_COMM_WORLD, &self.size) + + cdef: + int [3] cart_dims + int [3] cyclic + int ndims = 3 + int reorder = 1 + + cart_dims[0] = namelist['mpi']['nprocx'] + cart_dims[1] = namelist['mpi']['nprocy'] + cart_dims[2] = namelist['mpi']['nprocz'] + + #Check to make sure that cart dimensions are consistent with MPI global size + if cart_dims[0] * cart_dims[1] * cart_dims[2] != self.size: + self.root_print('MPI global size: ' + str(self.size) + + 'does not equal nprocx * nprocy * nprocz: ' + + str(cart_dims[0] * cart_dims[1] * cart_dims[2])) + self.root_print('Killing simulation NOW!') + self.kill() + + cyclic[0] = 1 + cyclic[1] = 1 + cyclic[2] = 0 + + #Create the cartesian world commmunicator + ierr = mpi.MPI_Cart_create(self.comm_world,ndims, cart_dims, cyclic, reorder,&self.cart_comm_world) + self.barrier() + + #Create the cartesian sub-communicators + self.create_sub_communicators() + self.barrier() + + return + + cpdef root_print(self,txt_output): + ''' + Print only from the root process. + :param txt_output: Output + :return: + ''' + if self.rank==0: + print(txt_output) + return + + cpdef kill(self): + ''' + Call MPI_Abort. + :return: + ''' + cdef int ierr = 0 + self.root_print("Terminating MPI!") + ierr = mpi.MPI_Abort(self.comm_world,1) + sys.exit() + return + + cdef void barrier(self): + ''' + Call MPI_Barrier on global MPI communicator. + :return: + ''' + mpi.MPI_Barrier(self.comm_world) + return + + cdef void create_sub_communicators(self): + ''' + :return: Sets up cartesian sub topologies from cart_comm_world. + ''' + cdef: + int ierr = 0 + int [3] remains + + #Create the sub-communicator where x-dimension remains + remains[0] = 1 + remains[1] = 0 + remains[2] = 0 + ierr = mpi.MPI_Cart_sub(self.cart_comm_world,remains, &self.cart_comm_sub_x) + ierr = mpi.MPI_Comm_size(self.cart_comm_sub_x, &self.sub_x_size) + ierr = mpi.MPI_Comm_rank(self.cart_comm_sub_x, &self.sub_x_rank) + + #Create the sub-communicator where the y-dimension remains + remains[0] = 0 + remains[1] = 1 + remains[2] = 0 + ierr = mpi.MPI_Cart_sub(self.cart_comm_world,remains, &self.cart_comm_sub_y) + ierr = mpi.MPI_Comm_size(self.cart_comm_sub_y, &self.sub_y_size) + ierr = mpi.MPI_Comm_rank(self.cart_comm_sub_y, &self.sub_y_rank) + + #Create the sub communicator where the z-dimension remains + remains[0] = 0 + remains[1] = 0 + remains[2] = 1 + ierr = mpi.MPI_Cart_sub(self.cart_comm_world,remains, &self.cart_comm_sub_z) + ierr = mpi.MPI_Comm_size(self.cart_comm_sub_z, &self.sub_z_size) + ierr = mpi.MPI_Comm_rank(self.cart_comm_sub_z, &self.sub_z_rank) + + #Create the sub communicator where x and y-dimension still remains + remains[0] = 1 + remains[1] = 1 + remains[2] = 0 + ierr = mpi.MPI_Cart_sub(self.cart_comm_world,remains, &self.cart_comm_sub_xy) + + + return + + cdef double domain_scalar_sum(self, double local_value): + ''' + Compute the sum over all mpi ranks of a single scalar of type double. + :param local_value: the value to be summed over the ranks + :return: sum of local values on all processes + ''' + + cdef: + double global_sum + + mpi.MPI_Allreduce(&local_value, &global_sum,1,mpi.MPI_DOUBLE,mpi.MPI_SUM,self.comm_world) + + return global_sum + + + + cdef double domain_scalar_max(self, double local_value): + ''' + Compute the maximum over all mpi ranks of a single scalar of type double. + :param local_value: the value to be maxed over the ranks + :return: maximum of local values on all processes + ''' + + cdef: + double global_max + + mpi.MPI_Allreduce(&local_value, &global_max,1,mpi.MPI_DOUBLE,mpi.MPI_MAX,self.comm_world) + + return global_max + + cdef double domain_scalar_min(self, double local_value): + ''' + Compute the minimum over all mpi ranks of a single scalar of type double. + :param local_value: the value to be min-ed over the ranks + :return: sum of local values on all processes + ''' + + cdef: + double global_min + + mpi.MPI_Allreduce(&local_value, &global_min,1,mpi.MPI_DOUBLE,mpi.MPI_MIN,self.comm_world) + + return global_min + + cdef double [:] domain_vector_sum(self, double [:] local_vector, Py_ssize_t n): + ''' + Compute the sum over all mpi ranks of a vector of type double. + :param local_vector: the value to be summed over the ranks + :return: sum of local vectors on all processes + ''' + + cdef: + double [:] global_sum = np.empty((n,),dtype=np.double,order='c') + + mpi.MPI_Allreduce(&local_vector[0], &global_sum[0],n,mpi.MPI_DOUBLE,mpi.MPI_SUM,self.comm_world) + + return global_sum + + cdef double [:] HorizontalMean(self, Grid.Grid Gr, double *values): + ''' + Compute the horizontal mean of the array pointed to by values. + values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] + * Gr.dims.nlg[1]. + + :param Gr: Grid class + :param values1: pointer to array of type double containing first value in product + :return: memoryview type double with dimension Gr.dims.nlg[2] + ''' + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + cdef: + double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + mean_local[k] += values[ijk] + + + #Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among + #processes with the the same vertical rank + + mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + for i in xrange(Gr.dims.nlg[2]): + mean[i] = mean[i]*n_horizontal_i + + return mean + + cdef double [:] HorizontalMeanofSquares(self, Grid.Grid Gr, const double *values1, const double *values2): + ''' + Compute the horizontal mean of the product of two variables (values1 and values2). values1 and values2 are + passed in as pointers of type double. These should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] + * Gr.dims.nlg[1]. + + :param Gr: Grid class + :param values1: pointer to array of type double containing first value in product + :param values2: pointer to array of type double containing second value in product + :return: memoryview type double with dimension Gr.dims.nlg[2] + ''' + + cdef: + double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + mean_local[k] += values1[ijk]*values2[ijk] + + + + #Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among + #processes with the the same vertical rank + + mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + for i in xrange(Gr.dims.nlg[2]): + mean[i] = mean[i]*n_horizontal_i + return mean + + cdef double [:] HorizontalMeanofCubes(self,Grid.Grid Gr,const double *values1,const double *values2, const double *values3): + + cdef: + double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + mean_local[k] += values1[ijk]*values2[ijk]*values3[ijk] + #Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among + #processes with the the same vertical rank + + mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + for i in xrange(Gr.dims.nlg[2]): + mean[i] = mean[i]*n_horizontal_i + + return mean + + cdef double [:] HorizontalMaximum(self, Grid.Grid Gr, double *values): + cdef: + double [:] max_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] max = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for k in xrange(kmin,kmax): + max_local[k] = -9e12 + + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + max_local[k] = fmax(max_local[k],values[ijk]) + + mpi.MPI_Allreduce(&max_local[0],&max[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_MAX,self.cart_comm_sub_xy) + return max + + cdef double [:] HorizontalMinimum(self, Grid.Grid Gr, double *values): + cdef: + double [:] min_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] min = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for k in xrange(kmin,kmax): + min_local[k] = 9e12 + + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + min_local[k] = fmin(min_local[k],values[ijk]) + + mpi.MPI_Allreduce(&min_local[0],&min[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_MIN,self.cart_comm_sub_xy) + return min + + cdef double HorizontalMeanSurface(self,Grid.Grid Gr,double *values): + # Some assumptions for using this function: + #--the array is defined for all processors + #-- = 0 on all processors for which zrank !=0 + # this is necessary to ensure that the root processor has the correct mean + + cdef: + double mean_local = 0.0 + double mean = 0.0 + int i,j,ij + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int gw = Gr.dims.gw + int istride_2d = Gr.dims.nlg[1] + int ishift, jshift + double n_horizontal_i = 1.0/np.double(Gr.dims.n[1]*Gr.dims.n[0]) + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride_2d + for j in xrange(jmin,jmax): + ij = ishift + j + mean_local += values[ij] + + + + mpi.MPI_Allreduce(&mean_local,&mean,1, + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.comm_world) + + mean = mean*n_horizontal_i + + + return mean + + + + + cdef double [:] HorizontalMeanConditional(self,Grid.Grid Gr,double *values, double *mask): + ''' + This function computes horizontal means given a binary conditional. For example, it can be used to compute + mean profiles within cloudy air. The mask must be pre-computed. + :param Gr: Grid class + :param values: variable array to be averaged. Contains ghost points + :param mask: array of 1's (condition=true) and 0's (condition = false). Contains ghost points, but mask values + of ghost points do not have to be correct (they are not used in this routine). + :return: vertical profile of the conditional average of array values + ''' + + cdef: + double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] sum_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] sum = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + mean_local[k] += values[ijk]*mask[ijk] + sum_local[k] += mask[ijk] + + + #Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among + #processes with the the same vertical rank + + mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + mpi.MPI_Allreduce(&sum_local[0],&sum[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + for i in xrange(Gr.dims.nlg[2]): + mean[i] = mean[i]/np.maximum(sum[i], 1.0) + + return mean + + + cdef double [:] HorizontalMeanofSquaresConditional(self,Grid.Grid Gr,double *values1,double *values2, double *mask): + ''' + This function computes horizontal means of the product of two array given a binary conditional. + For example, it can be used to compute mean-square profiles within cloudy air. The mask must be pre-computed. + :param Gr: Grid class + :param values1: 1st of the variable arrays to be multiplied. Contains ghost points + :param values2: 2nd of the variable arrays to be multiplied. Contains ghost points + :param mask: array of 1's (condition=true) and 0's (condition = false). Contains ghost points, but mask values + of ghost points do not have to be correct (they are not used in this routine). + :return: vertical profile of the conditional average of array values + ''' + + + + cdef: + double [:] mean_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] mean = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] sum_local = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + double [:] sum = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') + + int i,j,k,ijk + int imin = Gr.dims.gw + int jmin = Gr.dims.gw + int kmin = 0 + int imax = Gr.dims.nlg[0] - Gr.dims.gw + int jmax = Gr.dims.nlg[1] - Gr.dims.gw + int kmax = Gr.dims.nlg[2] + int istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + int jstride = Gr.dims.nlg[2] + int ishift, jshift + + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + mean_local[k] += values1[ijk]*values2[ijk]*mask[ijk] + sum_local[k] += mask[ijk] + + + #Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among + #processes with the the same vertical rank + + mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + mpi.MPI_Allreduce(&sum_local[0],&sum[0],Gr.dims.nlg[2], + mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + for i in xrange(Gr.dims.nlg[2]): + mean[i] = mean[i]/np.maximum(sum[i], 1.0) + + return mean + +cdef class Pencil: + + + def __init__(self): + pass + + cpdef initialize(self, Grid.Grid Gr, ParallelMPI Pa, int dim): + + self.dim = dim + self.n_local_values = Gr.dims.npl + + cdef: + int remainder = 0 + int i + + if dim==0: + self.size = Pa.sub_x_size + self.rank = Pa.sub_x_rank + self.n_total_pencils = Gr.dims.nl[1] * Gr.dims.nl[2] + self.pencil_length = Gr.dims.n[0] + elif dim==1: + self.size = Pa.sub_y_size + self.rank = Pa.sub_y_rank + self.n_total_pencils = Gr.dims.nl[0] * Gr.dims.nl[2] + self.pencil_length = Gr.dims.n[1] + elif dim==2: + self.size = Pa.sub_z_size + self.rank = Pa.sub_z_rank + self.n_total_pencils = Gr.dims.nl[0] * Gr.dims.nl[1] + self.pencil_length = Gr.dims.n[2] + else: + Pa.root_print('Pencil dim='+ str(dim) + 'not valid') + Pa.root_print('Killing simuulation') + Pa.kill() + + remainder = self.n_total_pencils%self.size + self.n_pencil_map = np.empty((self.size,),dtype=np.int,order='c') + self.n_pencil_map[:] = self.n_total_pencils//self.size + for i in xrange(self.size): + if i < remainder: + self.n_pencil_map[i] += 1 + + self.n_local_pencils = self.n_pencil_map[self.rank] #Number of pencils locally + self.nl_map = np.empty((self.size),dtype=np.int,order='c') #Number of local grid points in pencild dir + self.send_counts = np.empty((self.size),dtype=np.intc,order='c') #Total number of points to send to each rank + self.recv_counts = np.empty((self.size),dtype=np.intc,order='c') #Total numer of points to recv from each rank + self.rdispls = np.zeros((self.size),dtype=np.intc,order='c') #Where to put received points + self.sdispls = np.zeros((self.size),dtype=np.intc,order='c') #Where to get sent points + + #Now need to communicate number of local points on each process + if self.dim==0: + #Gather the number of points on in direction dim for each rank + mpi.MPI_Allgather(&Gr.dims.nl[0],1,mpi.MPI_LONG,&self.nl_map[0],1,mpi.MPI_LONG,Pa.cart_comm_sub_x) + + #Now compute the send counts + for i in xrange(self.size): + self.send_counts[i] = Gr.dims.nl[0] * self.n_pencil_map[i] + self.recv_counts[i] = self.n_local_pencils * self.nl_map[i] + + elif self.dim==1: + mpi.MPI_Allgather(&Gr.dims.nl[1],1,mpi.MPI_LONG,&self.nl_map[0],1,mpi.MPI_LONG,Pa.cart_comm_sub_y) + #Now compute the send counts + for i in xrange(self.size): + self.send_counts[i] = Gr.dims.nl[1] * self.n_pencil_map[i] + self.recv_counts[i] = self.n_local_pencils * self.nl_map[i] + else: + mpi.MPI_Allgather(&Gr.dims.nl[2],1,mpi.MPI_LONG,&self.nl_map[0],1,mpi.MPI_LONG,Pa.cart_comm_sub_z) + #Now compute the send counts + for i in xrange(self.size): + self.send_counts[i] = Gr.dims.nl[2] * self.n_pencil_map[i] + self.recv_counts[i] = self.n_local_pencils * self.nl_map[i] + + #Compute the send and receive displacments + for i in xrange(self.size-1): + self.sdispls[i+1] = self.sdispls[i] + self.send_counts[i] + self.rdispls[i+1] = self.rdispls[i] + self.recv_counts[i] + + Pa.barrier() + return + + cdef double [:,:] forward_double(self, Grid.DimStruct *dims, ParallelMPI Pa ,double *data): + + cdef: + double [:] local_transpose = np.empty((dims.npl,),dtype=np.double,order='c') + double [:] recv_buffer = np.empty((self.n_local_pencils * self.pencil_length),dtype=np.double,order='c') + double [:,:] pencils = np.empty((self.n_local_pencils,self.pencil_length),dtype=np.double,order='c') + + #Build send buffer + self.build_buffer_double(dims, data, &local_transpose[0]) + + if(self.size > 1): + #Do all to all communication + if self.dim == 0: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_x) + elif self.dim==1: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_y) + else: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_z) + + self.unpack_buffer_double(dims,&recv_buffer[0],pencils) + + else: + self.unpack_buffer_double(dims,&local_transpose[0],pencils) + + + return pencils + + cdef void build_buffer_double(self, Grid.DimStruct *dims, double *data, double *local_transpose ): + ''' + A method to build a send buffer for Pencils of type double. The function has no return value but does + have side effects the memory pointed to by *local_transpose. + + :param dims: pointer to dims structure + :param data: pointer to 1D array + :param local_transpose: pointer to the transposed data ready for Pencil communication. + :return: + ''' + + cdef: + long imin = dims.gw + long jmin = dims.gw + long kmin = dims.gw + long imax = dims.nlg[0] - dims.gw + long jmax = dims.nlg[1] - dims.gw + long kmax = dims.nlg[2] - dims.gw + long istride, jstride, kstride + long istride_nogw, jstride_nogw, kstride_nogw + long ishift, jshift, kshift + long ishift_nogw, jshift_nogw, kshift_nogw + long i,j,k,ijk,ijk_no_gw + + ''' + Determine the strides, first for the un-transposed data (including ghost points), and then for the transposed + data. In the case of the transposed data, the strides are such that the fastest changing 3D index is in + then self.dim direction. + ''' + if self.dim == 0: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = 1 + jstride_nogw = dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + elif self.dim ==1: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] + jstride_nogw = 1 + kstride_nogw = dims.nl[0] * dims.nl[1] + else: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] * dims.nl[2] + jstride_nogw = dims.nl[2] + kstride_nogw = 1 + + ''' + Transpose the data given the strides above. The indicies i, j, k are for the un-transposed data including + ghost points. For the transposed data, excluding ghost points we must stubrtact gw. + ''' + with nogil: + for i in xrange(imin,imax): + ishift = i*istride + ishift_nogw = (i-dims.gw) * istride_nogw + for j in xrange(jmin,jmax): + jshift = j * jstride + jshift_nogw = (j-dims.gw) * jstride_nogw + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + ijk_no_gw = ishift_nogw + jshift_nogw+ (k-dims.gw)*kstride_nogw + local_transpose[ijk_no_gw] = data[ijk] + return + + cdef void unpack_buffer_double(self,Grid.DimStruct *dims, double *recv_buffer, double [:,:] pencils): + + cdef: + long m, p, i + long nl_shift, count + + + #Loop over the number of processors in the rank + count = 0 + for m in xrange(self.size): + + if m == 0: + nl_shift = 0 + else: + nl_shift += self.nl_map[m-1] + + #Loop over the number of local pencils + with nogil: + for p in xrange(self.n_local_pencils): + #Now loop over the number of points in each pencil from the m-th processor + for i in xrange(self.nl_map[m]): + pencils[p,nl_shift + i] = recv_buffer[count] + count += 1 + return + + cdef void reverse_double(self, Grid.DimStruct *dims, ParallelMPI Pa, double [:,:] pencils, double *data): + + cdef: + double [:] send_buffer = np.empty(self.n_local_pencils * self.pencil_length,dtype=np.double,order='c') + double [:] recv_buffer = np.empty(dims.npl,dtype=np.double,order='c') + + #This is exactly the inverse operation to forward_double so that the send_counts can be used as the recv_counts + #and vice versa + + self.reverse_build_buffer_double(dims,pencils,&send_buffer[0]) + + if(self.size > 1): + #Do all to all communication + if self.dim == 0: + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_x) + elif self.dim==1: + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_y) + else: + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE,Pa.cart_comm_sub_z) + + self.reverse_unpack_buffer_double(dims,&recv_buffer[0],&data[0]) + + else: + self.reverse_unpack_buffer_double(dims,&send_buffer[0],&data[0]) + + return + + cdef void reverse_build_buffer_double(self, Grid.DimStruct *dims, double [:,:] pencils, double *send_buffer): + cdef: + long m, p, i + long nl_shift, count + #Loop over the number of processors in the rank + count = 0 + for m in xrange(self.size): + + if m == 0: + nl_shift = 0 + else: + nl_shift += self.nl_map[m-1] + + #Loop over the number of local pencils + with nogil: + for p in xrange(self.n_local_pencils): + #Now loop over the number of points in each pencil from the m-th processor + for i in xrange(self.nl_map[m]): + send_buffer[count] = pencils[p,nl_shift + i] + count += 1 + return + + cdef void reverse_unpack_buffer_double(self, Grid.DimStruct *dims, double *recv_buffer, double *data ): + + cdef: + long imin = dims.gw + long jmin = dims.gw + long kmin = dims.gw + long imax = dims.nlg[0] - dims.gw + long jmax = dims.nlg[1] - dims.gw + long kmax = dims.nlg[2] - dims.gw + long istride, jstride, kstride + long istride_nogw, jstride_nogw, kstride_nogw + long ishift, jshift, kshift + long ishift_nogw, jshift_nogw, kshift_nogw + long i,j,k,ijk,ijk_no_gw + + if self.dim == 0: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = 1 + jstride_nogw = dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + elif self.dim ==1: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] + jstride_nogw = 1 #dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + else: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] * dims.nl[2] + jstride_nogw = dims.nl[2] + kstride_nogw = 1 + + + #Build the local buffer + with nogil: + for i in xrange(imin,imax): + ishift = i*istride + ishift_nogw = (i-dims.gw) * istride_nogw + for j in xrange(jmin,jmax): + jshift = j * jstride + jshift_nogw = (j-dims.gw) * jstride_nogw + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + ijk_no_gw = ishift_nogw + jshift_nogw+ (k-dims.gw)*kstride_nogw + data[ijk] = recv_buffer[ijk_no_gw] + return + + cdef void build_buffer_complex(self, Grid.DimStruct *dims, complex *data, complex *local_transpose ): + + cdef: + long imin = dims.gw + long jmin = dims.gw + long kmin = dims.gw + long imax = dims.nlg[0] - dims.gw + long jmax = dims.nlg[1] - dims.gw + long kmax = dims.nlg[2] - dims.gw + long istride, jstride, kstride + long istride_nogw, jstride_nogw, kstride_nogw + long ishift, jshift, kshift + long ishift_nogw, jshift_nogw, kshift_nogw + long i,j,k,ijk,ijk_no_gw + + if self.dim == 0: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = 1 + jstride_nogw = dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + elif self.dim ==1: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] + jstride_nogw = 1 #dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + else: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] * dims.nl[2] + jstride_nogw = dims.nl[2] + kstride_nogw = 1 + + #Build the local buffer + with nogil: + for i in xrange(imin,imax): + ishift = i*istride + ishift_nogw = (i-dims.gw) * istride_nogw + for j in xrange(jmin,jmax): + jshift = j * jstride + jshift_nogw = (j-dims.gw) * jstride_nogw + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + ijk_no_gw = ishift_nogw + jshift_nogw+ (k-dims.gw)*kstride_nogw + local_transpose[ijk_no_gw] = data[ijk] + return + + cdef void unpack_buffer_complex(self,Grid.DimStruct *dims, complex *recv_buffer, complex [:,:] pencils): + + cdef: + long m, p, i + long nl_shift, count + + #Loop over the number of processors in the rank + count = 0 + for m in xrange(self.size): + + if m == 0: + nl_shift = 0 + else: + nl_shift += self.nl_map[m-1] + + #Loop over the number of local pencils + with nogil: + for p in xrange(self.n_local_pencils): + #Now loop over the number of points in each pencil from the m-th processor + for i in xrange(self.nl_map[m]): + pencils[p,nl_shift + i] = recv_buffer[count] + count += 1 + return + + cdef complex [:,:] forward_complex(self, Grid.DimStruct *dims, ParallelMPI Pa ,complex *data): + + cdef: + complex [:] local_transpose = np.empty((dims.npl,),dtype=np.complex,order='c') + complex [:] recv_buffer = np.empty((self.n_local_pencils * self.pencil_length),dtype=np.complex,order='c') + complex [:,:] pencils = np.empty((self.n_local_pencils,self.pencil_length),dtype=np.complex,order='c') + + #Build send buffer + self.build_buffer_complex(dims, data, &local_transpose[0]) + + if(self.size > 1): + #Do all to all communication + if self.dim == 0: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_x) + elif self.dim==1: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_y) + else: + mpi.MPI_Alltoallv(&local_transpose[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_z) + + + self.unpack_buffer_complex(dims,&recv_buffer[0],pencils) + + else: + self.unpack_buffer_complex(dims,&local_transpose[0],pencils) + + return pencils + + cdef void reverse_complex(self, Grid.DimStruct *dims, ParallelMPI Pa, complex [:,:] pencils, complex *data): + + cdef: + complex [:] send_buffer = np.empty(self.n_local_pencils * self.pencil_length,dtype=np.complex,order='c') + complex [:] recv_buffer = np.empty(dims.npl,dtype=np.complex,order='c') + + #This is exactly the inverse operation to forward_double so that the send_counts can be used as the recv_counts + #and vice versa + self.reverse_build_buffer_complex(dims,pencils,&send_buffer[0]) + if(self.size > 1): + #Do all to all communication + if self.dim == 0: + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_x) + elif self.dim==1: + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_y) + else: + + mpi.MPI_Alltoallv(&send_buffer[0], &self.recv_counts[0], &self.rdispls[0],mpi.MPI_DOUBLE_COMPLEX, + &recv_buffer[0], &self.send_counts[0], &self.sdispls[0],mpi.MPI_DOUBLE_COMPLEX,Pa.cart_comm_sub_z) + self.reverse_unpack_buffer_complex(dims,&recv_buffer[0],data) + else: + self.reverse_unpack_buffer_complex(dims,&send_buffer[0],data) + + return + + + cdef void reverse_build_buffer_complex(self, Grid.DimStruct *dims, complex [:,:] pencils, complex *send_buffer): + cdef: + long m, p, i + long nl_shift, count + + #Loop over the number of processors in the rank + count = 0 + for m in xrange(self.size): + + if m == 0: + nl_shift = 0 + else: + nl_shift += self.nl_map[m-1] + + #Loop over the number of local pencils + with nogil: + for p in xrange(self.n_local_pencils): + #Now loop over the number of points in each pencil from the m-th processor + for i in xrange(self.nl_map[m]): + send_buffer[count] = pencils[p,nl_shift + i] + count += 1 + return + + cdef void reverse_unpack_buffer_complex(self, Grid.DimStruct *dims, complex *recv_buffer, complex *data ): + + cdef: + long imin = dims.gw + long jmin = dims.gw + long kmin = dims.gw + long imax = dims.nlg[0] - dims.gw + long jmax = dims.nlg[1] - dims.gw + long kmax = dims.nlg[2] - dims.gw + long istride, jstride, kstride + long istride_nogw, jstride_nogw, kstride_nogw + long ishift, jshift, kshift + long ishift_nogw, jshift_nogw, kshift_nogw + + long i,j,k,ijk,ijk_no_gw + + if self.dim == 0: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = 1 + jstride_nogw = dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + elif self.dim ==1: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] + jstride_nogw = 1 #dims.nl[0] + kstride_nogw = dims.nl[0] * dims.nl[1] + else: + istride = dims.nlg[1] * dims.nlg[2] + jstride = dims.nlg[2] + kstride = 1 + + istride_nogw = dims.nl[1] * dims.nl[2] + jstride_nogw = dims.nl[2] + kstride_nogw = 1 + + #Build the local buffer + with nogil: + for i in xrange(imin,imax): + ishift = i*istride + ishift_nogw = (i-dims.gw) * istride_nogw + for j in xrange(jmin,jmax): + jshift = j * jstride + jshift_nogw = (j-dims.gw) * jstride_nogw + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + ijk_no_gw = ishift_nogw + jshift_nogw+ (k-dims.gw)*kstride_nogw + data[ijk] = recv_buffer[ijk_no_gw] + return + diff --git a/test_av/PrognosticVariables.pxd b/test_av/PrognosticVariables.pxd new file mode 100644 index 00000000..a7026f05 --- /dev/null +++ b/test_av/PrognosticVariables.pxd @@ -0,0 +1,53 @@ +from NetCDFIO cimport NetCDFIO_Stats +cimport Grid +cimport ParallelMPI +cimport ReferenceState +cimport Restart + +cdef extern from "prognostic_variables.h": + struct VelocityDofs: + Py_ssize_t u + Py_ssize_t v + Py_ssize_t w + +cdef extern from "prognostic_variables.h": + void build_buffer(Py_ssize_t nv, Py_ssize_t dim, Py_ssize_t s ,Grid.DimStruct *dims, double* values, double* buffer) + void buffer_to_values(Py_ssize_t dim, Py_ssize_t s, Grid.DimStruct *dims, double* values, double* buffer) + void set_bcs(Py_ssize_t dim, Py_ssize_t s, double bc_factor, Grid.DimStruct *dims, double* values) + void set_to_zero(Py_ssize_t nv, Grid.DimStruct *dims, double* values ) + +cdef class PrognosticVariables: + cdef: + dict name_index + dict units + list index_name + Py_ssize_t nv + Py_ssize_t nv_scalars + Py_ssize_t nv_velocities + cdef double [:] bc_type + cdef long [:] var_type + cdef double [:] values + cdef double [:] tendencies + cdef long [:] velocity_directions + list velocity_names_directional + + cpdef add_variable(self,name,units,bc_type,var_type,ParallelMPI.ParallelMPI Pa) + # cpdef initialize(self,Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cdef: + void update_all_bcs(self, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef Update_all_bcs(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef debug(self, Grid.Grid Gr, ReferenceState.ReferenceState RS ,NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef set_velocity_direction(self,name,Py_ssize_t direction,ParallelMPI.ParallelMPI Pa) + cdef inline Py_ssize_t get_nv(self, str variable_name): + return self.name_index[variable_name] + cdef inline Py_ssize_t get_varshift(self, Grid.Grid Gr, str variable_name): + return self.name_index[variable_name] * Gr.dims.npg + cpdef get_variable_array(self,name,Grid.Grid Gr) + cpdef get_tendency_array(self,name,Grid.Grid Gr) + cpdef tend_nan(self,PA,message) + cpdef val_nan(self,PA,message) + cpdef val_bounds(self,var_name,Grid.Grid Gr) + cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState RS, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef restart(self, Grid.Grid Gr, Restart.Restart Re) + cpdef init_from_restart(self, Grid.Grid Gr, Restart.Restart Re) \ No newline at end of file diff --git a/test_av/PrognosticVariables.pyx b/test_av/PrognosticVariables.pyx new file mode 100644 index 00000000..f186e41d --- /dev/null +++ b/test_av/PrognosticVariables.pyx @@ -0,0 +1,358 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +from cpython.mem cimport PyMem_Malloc, PyMem_Realloc, PyMem_Free +import numpy as np +cimport numpy as np +cimport mpi4py.libmpi as mpi +from NetCDFIO cimport NetCDFIO_Stats + +cimport Grid +cimport ParallelMPI +cimport ReferenceState +cimport Restart + +cdef class PrognosticVariables: + def __init__(self, Grid.Grid Gr): + self.name_index = {} + self.index_name = [] + self.units = {} + self.nv = 0 + self.nv_scalars = 0 + self.nv_velocities = 0 + self.bc_type = np.array([],dtype=np.double,order='c') + self.var_type = np.array([],dtype=np.int,order='c') + self.velocity_directions = np.zeros((Gr.dims.dims,),dtype=np.int,order='c') + self.velocity_names_directional = ["" for dim in range(Gr.dims.dims)] + return + + cpdef add_variable(self,name,units,bc_type,var_type,ParallelMPI.ParallelMPI Pa): + + #Store names and units + self.name_index[name] = self.nv + self.index_name.append(name) + self.units[name] = units + self.nv = len(self.name_index.keys()) + + #Add bc type to array + if bc_type == "sym": + self.bc_type = np.append(self.bc_type,[1.0]) + elif bc_type =="asym": + self.bc_type = np.append(self.bc_type,[-1.0]) + else: + Pa.root_print("Not a valid bc_type. Killing simulation now!") + Pa.kill() + + #Set the type of the variable being added 0=velocity; 1=scalars + if var_type == "velocity": + self.var_type = np.append(self.var_type,0) + self.nv_velocities += 1 + elif var_type == "scalar": + self.var_type = np.append(self.var_type,1) + self.nv_scalars += 1 + else: + Pa.root_print("Not a valid var_type. Killing simulation now!") + Pa.kill() + + return + + cpdef set_velocity_direction(self,name,Py_ssize_t direction,ParallelMPI.ParallelMPI Pa): + try: + self.velocity_directions[direction] = self.get_nv(name) + except: + Pa.root_print('problem setting velocity '+ name+' to direction '+ str(direction)) + Pa.root_print('Killing simulation now!') + Pa.kill() + + self.velocity_names_directional[direction] = name + return + + # cpdef initialize(self,Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + # self.values = np.empty((self.nv*Gr.dims.npg),dtype=np.double,order='c') + # self.tendencies = np.zeros((self.nv*Gr.dims.npg),dtype=np.double,order='c') + cpdef initialize(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + self.values = np.empty((self.nv*Gr.dims.npg),dtype=np.double,order='c') + self.tendencies = np.zeros((self.nv*Gr.dims.npg),dtype=np.double,order='c') + + # #Add prognostic variables to Statistics IO + # Pa.root_print('Setting up statistical output files for Prognostic Variables') + # for var_name in self.name_index.keys(): + # #Add mean profile + # NS.add_profile(var_name+'_mean',Gr,Pa) + # + # if var_name == 'u' or var_name == 'v': + # NS.add_profile(var_name+'_translational_mean',Gr,Pa) + # + # #Add mean of squares profile + # NS.add_profile(var_name+'_mean2',Gr,Pa) + # #Add mean of cubes profile + # NS.add_profile(var_name+'_mean3',Gr,Pa) + # #Add max profile + # NS.add_profile(var_name+'_max',Gr,Pa) + # #Add min profile + # NS.add_profile(var_name+'_min',Gr,Pa) + # #Add max ts + # NS.add_ts(var_name+'_max',Gr,Pa) + # #Add min ts + # NS.add_ts(var_name+'_min',Gr,Pa) + # + # if 'qt' in self.name_index.keys() and 's' in self.name_index.keys(): + # NS.add_profile('qt_s_product_mean', Gr, Pa) + return + + cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState RS ,NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + cdef: + Py_ssize_t var_shift, var_shift2 + double [:] tmp + + for var_name in self.name_index.keys(): + Pa.root_print('Prognostic Variables: write profile: ' + var_name) + + var_shift = self.get_varshift(Gr,var_name) + + + #Compute and write mean + tmp = Pa.HorizontalMean(Gr,&self.values[var_shift]) + NS.write_profile(var_name + '_mean',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + + # Also output the velocities with the translational velocity included + if var_name == 'u': + NS.write_profile(var_name + '_translational_mean',np.array(tmp[Gr.dims.gw:-Gr.dims.gw]) + RS.u0,Pa) + elif var_name == 'v': + NS.write_profile(var_name + '_translational_mean',np.array(tmp[Gr.dims.gw:-Gr.dims.gw]) + RS.v0,Pa) + + + #Compute and write mean of squres + tmp = Pa.HorizontalMeanofSquares(Gr,&self.values[var_shift],&self.values[var_shift]) + NS.write_profile(var_name + '_mean2',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + #Compute and write mean of cubes + tmp = Pa.HorizontalMeanofCubes(Gr,&self.values[var_shift],&self.values[var_shift],&self.values[var_shift]) + NS.write_profile(var_name + '_mean3',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + + #Compute and write maxes + tmp = Pa.HorizontalMaximum(Gr,&self.values[var_shift]) + NS.write_profile(var_name + '_max',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + NS.write_ts(var_name+'_max',np.amax(tmp[Gr.dims.gw:-Gr.dims.gw]),Pa) + + #Compute and write mins + tmp = Pa.HorizontalMinimum(Gr,&self.values[var_shift]) + NS.write_profile(var_name + '_min',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + NS.write_ts(var_name+'_min',np.amin(tmp[Gr.dims.gw:-Gr.dims.gw]),Pa) + + if 'qt' in self.name_index.keys() and 's' in self.name_index.keys(): + var_shift = self.get_varshift(Gr,'qt') + var_shift2 = self.get_varshift(Gr,'s') + tmp = Pa.HorizontalMeanofSquares(Gr,&self.values[var_shift],&self.values[var_shift2]) + NS.write_profile('qt_s_product_mean',tmp[Gr.dims.gw:-Gr.dims.gw],Pa) + + return + + cpdef debug(self, Grid.Grid Gr, ReferenceState.ReferenceState RS ,NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + ''' + + This function is for debugging purpuses. It prints the maximum and minimum of each variable and their + tendencies stored in the PrognosticVariables class. + + :param Gr: + :param RS: + :param NS: + :param Pa: + :return: + ''' + + cdef: + Py_ssize_t var_shift + + for var_name in self.name_index.keys(): + var_shift = self.get_varshift(Gr,var_name) + + v_max = np.amax(Pa.HorizontalMaximum(Gr,&self.values[var_shift])[Gr.dims.gw:-Gr.dims.gw]) + v_min = np.amin(Pa.HorizontalMinimum(Gr,&self.values[var_shift])[Gr.dims.gw:-Gr.dims.gw]) + + t_max = np.amax(Pa.HorizontalMaximum(Gr,&self.tendencies[var_shift])[Gr.dims.gw:-Gr.dims.gw]) + t_min = np.amin(Pa.HorizontalMinimum(Gr,&self.tendencies[var_shift])[Gr.dims.gw:-Gr.dims.gw]) + + message = var_name + ': ' + ' value min: ' + str(v_min) + ' value max: ' + str(v_max) + ' tend min: ' + str(t_min) + ' tend_max: ' + str(t_max) + Pa.root_print(message) + + + return + + + + cdef void update_all_bcs(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + + cdef double* send_buffer + cdef double* recv_buffer + cdef double a =0 + cdef double b = 0 + cdef Py_ssize_t [:] shift = np.array([-1,1],dtype=np.int,order='c') + cdef Py_ssize_t d, i, s + cdef Py_ssize_t ierr + cdef int dest_rank, source_rank + cdef mpi.MPI_Status status + + #Get this processors rank in the cart_comm_world communicator + ierr = mpi.MPI_Comm_rank(Pa.cart_comm_world,&source_rank) + cdef Py_ssize_t j,k,var_shift,ishift, jshift, buffer_var_shift + + #Loop over dimensions sending buffers for each + for d in xrange(Gr.dims.dims): + + #Allocate memory for send buffer using python memory manager for safety + send_buffer = PyMem_Malloc(self.nv * Gr.dims.nbuffer[d] * sizeof(double)) + recv_buffer = PyMem_Malloc(self.nv * Gr.dims.nbuffer[d] * sizeof(double)) + #Loop over shifts (this should only be -1 or 1) + for s in shift: + #Now loop over variables and store in send buffer + + for i in xrange(self.nv): + buffer_var_shift = Gr.dims.nbuffer[d] * i + var_shift = i * Gr.dims.npg + build_buffer(i, d, s,&Gr.dims,&self.values[0],&send_buffer[0]) + + #Compute the mpi shifts (lower and upper) in the world communicator for dimeniosn d + ierr = mpi.MPI_Cart_shift(Pa.cart_comm_world,d,s,&source_rank,&dest_rank) + + ierr = mpi.MPI_Sendrecv(&send_buffer[0],self.nv*Gr.dims.nbuffer[d],mpi.MPI_DOUBLE,dest_rank,0, + &recv_buffer[0],self.nv*Gr.dims.nbuffer[d], + mpi.MPI_DOUBLE,source_rank,0,Pa.cart_comm_world,&status) + + + for i in xrange(self.nv): + buffer_var_shift = Gr.dims.nbuffer[d] * i + var_shift = i * Gr.dims.npg + if source_rank >= 0: + buffer_to_values(d, s,&Gr.dims,&self.values[var_shift],&recv_buffer[buffer_var_shift]) + else: + set_bcs(d,s,self.bc_type[i],&Gr.dims,&self.values[var_shift]) + + #Important: Free memory associated with memory buffer to prevent memory leak + PyMem_Free(send_buffer) + PyMem_Free(recv_buffer) + return + + cpdef Update_all_bcs(self,Grid.Grid Gr, ParallelMPI.ParallelMPI Pa ): + self.update_all_bcs(Gr, Pa) + return + + cpdef get_variable_array(self,name,Grid.Grid Gr): + index = self.name_index[name] + view = np.array(self.values).view() + view.shape = (self.nv,Gr.dims.nlg[0],Gr.dims.nlg[1],Gr.dims.nlg[2]) + return view[index,:,:,:] + + cpdef get_tendency_array(self,name,Grid.Grid Gr): + index = self.name_index[name] + view = np.array(self.tendencies).view() + view.shape = (self.nv,Gr.dims.nlg[0],Gr.dims.nlg[1],Gr.dims.nlg[2]) + return view[index,:,:,:] + + cpdef tend_nan(self,PA,message): + if np.isnan(self.tendencies).any(): + print('Nans found in tendencies') + print(message) + PA.kill() + return + + cpdef val_nan(self,PA,message): + if np.isnan(self.values).any(): + print('Nans found in Prognostic Variables values') + print(message) + PA.kill() + return + + cpdef val_bounds(self,var_name,Grid.Grid Gr): + var_array = self.get_variable_array(var_name, Gr) + return np.amin(var_array), np.amax(var_array) + + cpdef restart(self, Grid.Grid Gr, Restart.Restart Re): + + Re.restart_data['PV'] = {} + Re.restart_data['PV']['name_index'] = self.name_index + Re.restart_data['PV']['units'] = self.units + Re.restart_data['PV']['index_name'] = self.index_name + Re.restart_data['PV']['nv'] = self.nv + Re.restart_data['PV']['nv_scalars'] = self.nv_scalars + Re.restart_data['PV']['nv_velocities'] = self.nv_velocities + Re.restart_data['PV']['bc_type'] = np.array(self.bc_type) + Re.restart_data['PV']['var_type'] = np.array(self.var_type) + Re.restart_data['PV']['velocity_directions'] = np.array(self.velocity_directions) + Re.restart_data['PV']['velocity_names_directional'] = self.velocity_names_directional + + cdef: + double [:] values = np.empty((self.nv * Gr.dims.npl),dtype=np.double,order='c') + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + Py_ssize_t i, j, k, count, ijk, n, v_shift + Py_ssize_t ishift, jshift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + + with nogil: + count = 0 + for n in xrange(self.nv): + v_shift = Gr.dims.nlg[0] * Gr.dims.nlg[1] * Gr.dims.nlg[2] * n + for i in xrange(imin, imax): + ishift = istride * i + for j in xrange(jmin, jmax): + jshift = jstride * j + for k in xrange(kmin, kmax): + ijk = v_shift + ishift + jshift + k + values[count] = self.values[ijk] + count += 1 + + Re.restart_data['PV']['values'] = np.array(values) + + return + + + cpdef init_from_restart(self, Grid.Grid Gr, Restart.Restart Re): + + self.name_index = Re.restart_data['PV']['name_index'] + self.units = Re.restart_data['PV']['units'] + self.index_name = Re.restart_data['PV']['index_name'] + self.nv = Re.restart_data['PV']['nv'] + self.nv_scalars = Re.restart_data['PV']['nv_scalars'] + self.nv_velocities = Re.restart_data['PV']['nv_velocities'] + self.bc_type = Re.restart_data['PV']['bc_type'] + self.var_type = Re.restart_data['PV']['var_type'] + self.velocity_directions = Re.restart_data['PV']['velocity_directions'] + self.velocity_names_directional = Re.restart_data['PV']['velocity_names_directional'] + + + cdef: + double [:] values = Re.restart_data['PV']['values'] + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + Py_ssize_t i, j, k, count, ijk, n + Py_ssize_t ishift, jshift, v_shift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + + + with nogil: + count = 0 + for n in xrange(self.nv): + v_shift = Gr.dims.nlg[0] * Gr.dims.nlg[1] * Gr.dims.nlg[2] * n + for i in xrange(imin, imax): + ishift = istride * i + for j in xrange(jmin, jmax): + jshift = jstride * j + for k in xrange(kmin, kmax): + ijk = v_shift + ishift + jshift + k + self.values[ijk] = values[count] + count += 1 + + return diff --git a/test_av/ReferenceState.pxd b/test_av/ReferenceState.pxd new file mode 100644 index 00000000..c7f9ec3d --- /dev/null +++ b/test_av/ReferenceState.pxd @@ -0,0 +1,24 @@ +cimport Grid +cimport Restart +cdef class ReferenceState: + cdef: + public double [:] p0 + public double [:] p0_half + public double [:] alpha0 + public double [:] alpha0_half + public double [:] rho0 + public double [:] rho0_half + + double sg + + cdef public: + #These public values should be set in the case initialization routine + double Tg #Temperature at ground level + double Pg #Pressure at ground level + double qtg #Surface total water mixing ratio + double u0 #u velocity removed in Galilean transformation + double v0 #v velocity removed in Galilean transformation + + cpdef restart(self, Grid.Grid Gr, Restart.Restart Re) + cpdef init_from_restart(self, Grid.Grid Gr, Restart.Restart Re) + diff --git a/test_av/ReferenceState.pyx b/test_av/ReferenceState.pyx new file mode 100644 index 00000000..ff5116b9 --- /dev/null +++ b/test_av/ReferenceState.pyx @@ -0,0 +1,176 @@ +#!python +# cython: boundscheck=False +# cython: wraparound=True +# cython: initializedcheck=False +# cython: cdivision=True + +cimport Grid +cimport Restart +cimport numpy as np +import numpy as np +from NetCDFIO cimport NetCDFIO_Stats +cimport ParallelMPI +from scipy.integrate import odeint +include 'parameters.pxi' + +cdef extern from "thermodynamic_functions.h": + inline double qt_from_pv(double p0, double pv) + +cdef class ReferenceState: + def __init__(self, Grid.Grid Gr ): + + self.p0 = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + self.p0_half = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + self.alpha0 = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + self.alpha0_half = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + self.rho0 = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + self.rho0_half = np.zeros(Gr.dims.nlg[2], dtype=np.double, order='c') + + return + + def initialize(self, Grid.Grid Gr, Thermodynamics, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + ''' + Initilize the reference profiles. The function is typically called from the case specific initialization + fucntion defined in Initialization.pyx + :param Gr: Grid class + :param Thermodynamics: Thermodynamics class + :param NS: StatsIO class + :param Pa: ParallelMPI class + :return: + ''' + + + + + self.sg = Thermodynamics.entropy(self.Pg, self.Tg, self.qtg, 0.0, 0.0) + + # Form a right hand side for integrating the hydrostatic equation to + # determine the reference pressure + def rhs(p, z): + T, ql, qi = Thermodynamics.eos(np.exp(p), self.sg, self.qtg) + return -g / (Rd * T * (1.0 - self.qtg + eps_vi * (self.qtg - ql - qi))) + + # Construct arrays for integration points + z = np.array(Gr.z[Gr.dims.gw - 1:-Gr.dims.gw + 1]) + z_half = np.append([0.0], np.array(Gr.z_half[Gr.dims.gw:-Gr.dims.gw])) + + # We are integrating the log pressure so need to take the log of the + # surface pressure + p0 = np.log(self.Pg) + + p = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + p_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + + # Perform the integration + p[Gr.dims.gw - 1:-Gr.dims.gw +1] = odeint(rhs, p0, z, hmax=1.0)[:, 0] + p_half[Gr.dims.gw:-Gr.dims.gw] = odeint(rhs, p0, z_half, hmax=1.0)[1:, 0] + + # Set boundary conditions + p[:Gr.dims.gw - 1] = p[2 * Gr.dims.gw - 2:Gr.dims.gw - 1:-1] + p[-Gr.dims.gw + 1:] = p[-Gr.dims.gw - 1:-2 * Gr.dims.gw:-1] + + p_half[:Gr.dims.gw] = p_half[2 * Gr.dims.gw - 1:Gr.dims.gw - 1:-1] + p_half[-Gr.dims.gw:] = p_half[-Gr.dims.gw - 1:-2 * Gr.dims.gw - 1:-1] + + p = np.exp(p) + p_half = np.exp(p_half) + + cdef double[:] p_ = p + cdef double[:] p_half_ = p_half + cdef double[:] temperature = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] temperature_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] alpha = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] alpha_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + + cdef double[:] ql = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] qi = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] qv = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + + cdef double[:] ql_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] qi_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + cdef double[:] qv_half = np.zeros(Gr.dims.ng[2], dtype=np.double, order='c') + + # Compute reference state thermodynamic profiles + for k in xrange(Gr.dims.ng[2]): + temperature[k], ql[k], qi[k] = Thermodynamics.eos(p_[k], self.sg, self.qtg) + qv[k] = self.qtg - (ql[k] + qi[k]) + alpha[k] = Thermodynamics.alpha(p_[k], temperature[k], self.qtg, qv[k]) + + temperature_half[k], ql_half[k], qi_half[k] = Thermodynamics.eos(p_half_[k], self.sg, self.qtg) + qv_half[k] = self.qtg - (ql_half[k] + qi_half[k]) + alpha_half[k] = Thermodynamics.alpha(p_half_[k], temperature_half[k], self.qtg, qv_half[k]) + + # Now do a sanity check to make sure that the Reference State entropy profile is uniform following + # saturation adjustment + cdef double s + for k in xrange(Gr.dims.ng[2]): + s = Thermodynamics.entropy(p_half[k],temperature_half[k],self.qtg,ql_half[k],qi_half[k]) + if np.abs(s - self.sg)/self.sg > 0.01: + Pa.root_print('Error in reference profiles entropy not constant !') + Pa.root_print('Likely error in saturation adjustment') + Pa.root_print('Kill Simulation Now!') + Pa.kill() + + + # print(np.array(Gr.extract_local_ghosted(alpha_half,2))) + self.alpha0_half = Gr.extract_local_ghosted(alpha_half, 2) + self.alpha0 = Gr.extract_local_ghosted(alpha, 2) + self.p0 = Gr.extract_local_ghosted(p_, 2) + self.p0_half = Gr.extract_local_ghosted(p_half, 2) + self.rho0 = 1.0 / np.array(self.alpha0) + self.rho0_half = 1.0 / np.array(self.alpha0_half) + + # Write reference profiles to StatsIO + NS.add_reference_profile('alpha0', Gr, Pa) + NS.write_reference_profile('alpha0', alpha_half[Gr.dims.gw:-Gr.dims.gw], Pa) + NS.add_reference_profile('p0', Gr, Pa) + NS.write_reference_profile('p0', p_half[Gr.dims.gw:-Gr.dims.gw], Pa) + NS.add_reference_profile('rho0', Gr, Pa) + NS.write_reference_profile('rho0', 1.0 / np.array(alpha_half[Gr.dims.gw:-Gr.dims.gw]), Pa) + NS.add_reference_profile('temperature0', Gr, Pa) + NS.write_reference_profile('temperature0', temperature_half[Gr.dims.gw:-Gr.dims.gw], Pa) + NS.add_reference_profile('ql0', Gr, Pa) + NS.write_reference_profile('ql0', ql_half[Gr.dims.gw:-Gr.dims.gw], Pa) + NS.add_reference_profile('qv0', Gr, Pa) + NS.write_reference_profile('qv0', qv_half[Gr.dims.gw:-Gr.dims.gw], Pa) + NS.add_reference_profile('qi0', Gr, Pa) + NS.write_reference_profile('qi0', qi_half[Gr.dims.gw:-Gr.dims.gw], Pa) + + return + + cpdef restart(self, Grid.Grid Gr, Restart.Restart Re): + Re.restart_data['Ref'] = {} + + Re.restart_data['Ref']['p0'] = np.array(self.p0) + Re.restart_data['Ref']['p0_half'] = np.array(self.p0_half) + Re.restart_data['Ref']['alpha0'] = np.array(self.alpha0) + Re.restart_data['Ref']['alpha0_half'] = np.array(self.alpha0_half) + + Re.restart_data['Ref']['Tg'] = self.Tg + Re.restart_data['Ref']['Pg'] = self.Pg + Re.restart_data['Ref']['sg'] = self.sg + Re.restart_data['Ref']['qtg'] = self.qtg + Re.restart_data['Ref']['u0'] = self.u0 + Re.restart_data['Ref']['v0'] = self.v0 + + return + + + cpdef init_from_restart(self, Grid.Grid Gr, Restart.Restart Re): + + self.Tg = Re.restart_data['Ref']['Tg'] + self.Pg = Re.restart_data['Ref']['Pg'] + self.sg = Re.restart_data['Ref']['sg'] + self.qtg = Re.restart_data['Ref']['qtg'] + self.u0 = Re.restart_data['Ref']['u0'] + self.v0 = Re.restart_data['Ref']['v0'] + + self.p0 = Re.restart_data['Ref']['p0'] + self.p0_half = Re.restart_data['Ref']['p0_half'] + self.alpha0 = Re.restart_data['Ref']['alpha0'] + self.alpha0_half = Re.restart_data['Ref']['alpha0_half'] + self.rho0 = 1.0 / Re.restart_data['Ref']['alpha0'] + self.rho0_half = 1.0 / Re.restart_data['Ref']['alpha0_half'] + + return + diff --git a/test_av/Restart.pxd b/test_av/Restart.pxd new file mode 100644 index 00000000..01285e1a --- /dev/null +++ b/test_av/Restart.pxd @@ -0,0 +1,16 @@ +cimport ParallelMPI + +cdef class Restart: + cdef: + public dict restart_data + str restart_path + str input_path + public bint is_restart_run + str uuid + public double last_restart_time + public double frequency + + cpdef initialize(self) + cpdef write(self, ParallelMPI.ParallelMPI Pa) + cpdef read(self, ParallelMPI.ParallelMPI Pa) + cpdef free_memory(self) \ No newline at end of file diff --git a/test_av/Restart.pyx b/test_av/Restart.pyx new file mode 100644 index 00000000..0cc32676 --- /dev/null +++ b/test_av/Restart.pyx @@ -0,0 +1,109 @@ +import numpy as np +import os +try: + import cPickle as pickle +except: + import pickle as pickle # for Python 3 users + +cimport ParallelMPI + +cdef class Restart: + def __init__(self, dict namelist, ParallelMPI.ParallelMPI Pa): + ''' + Init method for Restart class. Take the namelist dictionary as an argument and determines the output path + for the restart files. If one cannot be constructed from the namelist information the restart files are placed + into the directory containing main.py. The uuid is also stored to make sure the restart files remain unique. + + :param namelist: + :return: + ''' + + self.uuid = str(namelist['meta']['uuid']) + + try: + outpath = str(os.path.join(str(namelist['output']['output_root']) + + 'Output.' + str(namelist['meta']['simname']) + '.' + self.uuid[-5:])) + self.restart_path = os.path.join(outpath, 'Restart') + except: + self.restart_path = './restart.' + self.uuid[-5:] + + if Pa.rank == 0: + try: + os.mkdir(outpath) + except: + pass + try: + os.mkdir(self.restart_path) + except: + pass + + + try: + self.frequency = namelist['restart']['frequency'] + except: + self.frequency = 30.0 + + try: + if namelist['restart']['init_from']: + self.input_path = str(namelist['restart']['input_path']) + self.is_restart_run = True + Pa.root_print('This run is restarting from data :' + self.input_path ) + else: + Pa.root_print('Not a restarted simulation.') + except: + Pa.root_print('Not a restarted simulation.') + + + return + + + cpdef initialize(self): + self.restart_data = {} + self.last_restart_time = 0.0 + + + return + + + cpdef write(self, ParallelMPI.ParallelMPI Pa): + + self.restart_data['last_restart_time'] = self.last_restart_time + + #Set up path for writing restar files + path = self.restart_path + '/' + str(np.int(self.last_restart_time)) + + if Pa.rank == 0: + if os.path.exists(path): + Pa.root_print("Restart path exits for safety not overwriting.") + self.free_memory() + return + else: + Pa.root_print("Creating directory: " + path + " for restart files.") + os.mkdir(path) + Pa.barrier() + + with open(path+ '/' + str(Pa.rank) + '.pkl', 'wb') as f: + pickle.dump(self.restart_data, f,protocol=2) + + # No point keeping data in dictionary so empty it now + self.free_memory() + + return + + cpdef read(self, ParallelMPI.ParallelMPI Pa): + + with open(self.input_path + '/' + str(Pa.rank) + '.pkl', 'rb') as f: + self.restart_data = pickle.load(f) + + return + + + cpdef free_memory(self): + ''' + Free memory associated with restart_data dictionary. + :return: + ''' + + self.restart_data = {} + + return diff --git a/test_av/TestArray_c.pxd b/test_av/TestArray_c.pxd new file mode 100644 index 00000000..05d0576b --- /dev/null +++ b/test_av/TestArray_c.pxd @@ -0,0 +1,69 @@ +cimport ParallelMPI +cimport Grid +cimport Restart +cimport PrognosticVariables + +# cdef extern from "grid.h": +# struct DimStruct: +# +# int dims +# +# int [3] n +# int [3] ng +# int [3] nl +# int [3] nlg +# int [3] indx_lo_g +# int [3] indx_lo +# +# int npd +# int npl +# int npg +# int gw +# +# int [3] nbuffer +# int [3] ghosted_stride +# +# double [3] dx +# double [3] dxi +# +cdef class TestArray: + cdef: + int k + int m + double [:] b + + # double array(self) + cpdef array_c(self) + + cpdef array_mean(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) + + + + # double [:] x + # double [:] x_half + # double [:] y + # double [:] y_half + # double [:] z + # double [:] z_half + # + # double [:] xl + # double [:] xl_half + # double [:] yl + # double [:] yl_half + # double [:] zl + # double [:] zl_half + # + # void compute_global_dims(self) + # void compute_local_dims(self,ParallelMPI.ParallelMPI Parallel) + # void compute_coordinates(self) + + + + # cpdef extract_local(self, double [:] global_array, int dim) + # + # cpdef extract_local_ghosted(self, double [:] global_array, int dim) + # + # cpdef restart(self, Restart.Restart Re) + + + diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx new file mode 100644 index 00000000..226d1ab9 --- /dev/null +++ b/test_av/TestArray_c.pyx @@ -0,0 +1,57 @@ +import numpy as np +cimport numpy as np + +# cdef extern from "momentum_advection.h": +# void compute_advective_tendencies_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, +# double *alpha0, double *alpha0_half, double *vel_advected, +# double *vel_advecting, double *tendency, Py_ssize_t d_advected, +# Py_ssize_t d_advecting, Py_ssize_t scheme) +cimport Grid +cimport ParallelMPI +cimport PrognosticVariables + +cdef extern from "cc_statistics.h": + void horizontal_mean(Grid.DimStruct *dims, double *values) + +cdef class TestArray: + def __init__(self,namelist): + print('initialising TestArray_c') + return + + # def initialize(self): + def initialize(self, namelist): + # self.Pa = ParallelMPI.ParallelMPI(namelist) + # self.Gr = Grid.Grid(self.Pa) + # self.Gr = Grid.Grid(namelist, self.Pa) + return + + cpdef array_c(self): + k = 2 + m = 10 + b = np.empty((k,m)) + # self.array_mean() + return b + + cpdef array_mean(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr): + print('calling TestArray_c.array_mean') + # # horizontal_mean() + # cdef dims = Gr.dims + # print(dims) + # cdef nxg = dims.ng[0] + # cdef nyg = dims.ng[1] + # cdef nzg = dims.ng[2] + + # # cdef double [:,:,:,:] b = self.array_c + + cdef Py_ssize_t shift_u = PV.velocity_directions[0] * Gr.dims.npg + horizontal_mean(&Gr.dims, &PV.values[shift_u]) + + cdef int i + for i in range(Gr.dims.npg): + PV.values[i] = 2 + + return + +# compute_advective_tendencies_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], &Rs.alpha0[0], &Rs.alpha0_half[0], +# &PV.values[shift_advected], &PV.values[shift_advecting], +# &PV.tendencies[shift_advected], i_advected, i_advecting, self.order) diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx new file mode 100644 index 00000000..a1277101 --- /dev/null +++ b/test_av/TestRun.pyx @@ -0,0 +1,87 @@ +import numpy as np +cimport numpy as np + +cimport TestArray_c + +cimport Grid +cimport ParallelMPI +cimport PrognosticVariables + +# cdef extern from "momentum_advection.h": +# void compute_advective_tendencies_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, +# double *alpha0, double *alpha0_half, double *vel_advected, +# double *vel_advecting, double *tendency, Py_ssize_t d_advected, +# Py_ssize_t d_advecting, Py_ssize_t scheme) nogil +cdef extern from "cc_statistics.h": + void horizontal_mean(Grid.DimStruct *dims, double *values) + +class TestRun: + def __init__(self,namelist): + print('initialising TestArray') + return + + # def initialize(self): + def initialize(self, namelist): + # a = ParallelMPI.ParallelMPI(namelist) + self.Pa = ParallelMPI.ParallelMPI(namelist) + self.Gr = Grid.Grid(namelist, self.Pa) + self.PV = PrognosticVariables.PrognosticVariables(self.Gr) + + return + + def array(self): # does NOT work with cdef + k = 2 + m = 10 + b = np.empty((k,m)) + + aux = np.linspace(0,m-1,m) + b[0,:] = aux + b[1,:] = aux + + print(b[0,:]) + return b + + + def array_mean(self, namelist): + k = 2 + m = 10 + cdef double [:,:] b = np.empty((k,m)) + cdef double [:] aux = np.linspace(0,m-1,m) + b[0,:] = aux + b[1,:] = aux + # print(*b[0,:]) + + # cdef dims = self.Gr.dims + # cdef nxg = dims.ng[0] + # cdef nyg = dims.ng[1] + # cdef nzg = dims.ng[2] + self.PV.add_variable('u', 'm/s', "sym", "velocity", self.Pa) + self.PV.set_velocity_direction('u', 0, self.Pa) + self.PV.initialize(self.Gr, self.Pa) + u_val = self.PV.get_variable_array('u', self.Gr) + print('u shape: ', u_val.shape) + + # d = self.PV.velocity_directions[0] + + mean = TestArray_c.TestArray(namelist) + mean.array_mean(self.PV, self.Gr) + + # cdef Py_ssize_t shift_u = self.PV.velocity_directions[0] * self.Gr.dims.npg # cannot take the address of a Python variable + # horizontal_mean(&self.Gr.dims, &self.PV.values[shift_u]) + + # print(np.shape(self.PV.values)) + # cdef dims = Grid.Grid.dims + # dims = self.Gr.dims + # horizontal_mean(&dims, &b) + # compute_advective_tendencies_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], &Rs.alpha0[0], &Rs.alpha0_half[0], + # &PV.values[shift_advected], &PV.values[shift_advecting], + # &PV.tendencies[shift_advected], i_advected, i_advecting, self.order) + return + + def hor_mean(self,namelist): + print('hor mean') + mean = TestArray_c.TestArray(namelist) + b = mean.array_c() + mean.array_mean(self.PV, self.Gr) + + return \ No newline at end of file diff --git a/test_av/TimeStepping.pxd b/test_av/TimeStepping.pxd new file mode 100644 index 00000000..91829135 --- /dev/null +++ b/test_av/TimeStepping.pxd @@ -0,0 +1,36 @@ +cimport ParallelMPI as ParallelMPI +cimport PrognosticVariables as PrognosticVariables +cimport DiagnosticVariables as DiagnosticVariables +cimport Grid as Grid +cimport Restart + +cdef class TimeStepping: + cdef: + public double dt + public double t + public double cfl_max + public double cfl_limit + public double dt_max + public double dt_initial + public double t_max + double [:,:] value_copies + double [:,:] tendency_copies + public Py_ssize_t rk_step + public Py_ssize_t n_rk_steps + public Py_ssize_t ts_type + void initialize_second(self,PrognosticVariables.PrognosticVariables PV) + void initialize_third(self,PrognosticVariables.PrognosticVariables PV) + void initialize_fourth(self,PrognosticVariables.PrognosticVariables PV) + + + cpdef initialize(self, namelist, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa) + cpdef update(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa) + cpdef update_second(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV) + cpdef update_third(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV) + cpdef update_fourth(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV) + + cpdef adjust_timestep(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) + cdef void compute_cfl_max(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV,ParallelMPI.ParallelMPI Pa) + cpdef restart(self, Restart.Restart Re) + + cdef inline double cfl_time_step(self) \ No newline at end of file diff --git a/test_av/TimeStepping.pyx b/test_av/TimeStepping.pyx new file mode 100644 index 00000000..c25b56bc --- /dev/null +++ b/test_av/TimeStepping.pyx @@ -0,0 +1,283 @@ +#!python +#cython: boundscheck=False +#cython: wraparound=False +#cython: initializedcheck=False +#cython: cdivision=True + +cimport ParallelMPI as ParallelMPI +cimport PrognosticVariables as PrognosticVariables +cimport DiagnosticVariables as DiagnosticVariables +cimport Grid as Grid +cimport Restart +#cimport mpi4py.mpi_c as mpi +cimport mpi4py.libmpi as mpi + +import numpy as np +cimport numpy as np + +from libc.math cimport fmin, fmax, fabs + +cdef class TimeStepping: + + def __init__(self): + + return + + cpdef initialize(self,namelist,PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa): + + #Get the time stepping potions from the name list + try: + self.ts_type = namelist['time_stepping']['ts_type'] + except: + Pa.root_print('ts_type not given in namelist') + Pa.root_print('Killing simulation now') + Pa.kill() + + try: + self.dt = namelist['time_stepping']['dt_initial'] + except: + Pa.root_print('dt_initial (initial time step) not given in namelist so taking defualt value dt_initail = 1.0') + self.dt = 1.0 + + try: + self.dt_max = namelist['time_stepping']['dt_max'] + except: + Pa.root_print('dt_max (maximum permissible time step) not given in namelist so taking default value dt_max =10.0') + self.dt_max = 10.0 + + try: + self.t = namelist['time_stepping']['t'] + except: + Pa.root_print('t (initial time) not given in namelist so taking default value t = 0') + self.t = 0.0 + + try: + self.cfl_limit = namelist['time_stepping']['cfl_limit'] + except: + Pa.root_print('cfl_limit (maximum permissible cfl number) not given in namelist so taking default value cfl_max=0.7') + self.cfl_limit = 0.7 + + try: + self.t_max = namelist['time_stepping']['t_max'] + except: + Pa.root_print('t_max (time at end of simulation) not given in name list! Killing Simulation Now') + Pa.kill() + + #Now initialize the correct time stepping routine + if self.ts_type == 2: + self.initialize_second(PV) + elif self.ts_type == 3: + self.initialize_third(PV) + elif self.ts_type == 4: + self.initialize_fourth(PV) + else: + Pa.root_print('Invalid ts_type: ' + str(self.ts_type)) + Pa.root_print('Killing simulation now') + Pa.kill() + + return + + + cpdef update(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa): + + if self.ts_type == 2: + self.update_second(Gr,PV) + elif self.ts_type == 3: + self.update_third(Gr,PV) + elif self.ts_type == 4: + self.update_fourth(Gr,PV) + else: + Pa.root_print('Time stepping option not found ts_type = ' + str(self.ts_type)) + Pa.root_print('Killing Simulation Now!') + Pa.kill() + return + + cpdef adjust_timestep(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): + #Compute the CFL number and diffusive stability criterion + if self.rk_step == self.n_rk_steps - 1: + self.compute_cfl_max(Gr, PV,DV, Pa) + self.dt = self.cfl_time_step() + + #Diffusive limiting not yet implemented + if self.t + self.dt > self.t_max: + self.dt = self.t_max - self.t + + if self.dt < 0.0: + Pa.root_print('dt = '+ str(self.dt)+ " killing simulation!") + Pa.kill() + + return + + + cpdef update_second(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV): + + cdef: + Py_ssize_t i + + with nogil: + if self.rk_step == 0: + for i in xrange(Gr.dims.npg*PV.nv): + self.value_copies[0,i] = PV.values[i] + PV.values[i] += PV.tendencies[i]*self.dt + PV.tendencies[i] = 0.0 + else: + for i in xrange(Gr.dims.npg*PV.nv): + PV.values[i] = 0.5 * (self.value_copies[0,i] + PV.values[i] + PV.tendencies[i] * self.dt) + PV.tendencies[i] = 0.0 + self.t += self.dt + + return + + + cpdef update_third(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV): + cdef: + Py_ssize_t i + + with nogil: + if self.rk_step == 0: + for i in xrange(Gr.dims.npg*PV.nv): + self.value_copies[0,i] = PV.values[i] + PV.values[i] += PV.tendencies[i]*self.dt + PV.tendencies[i] = 0.0 + elif self.rk_step == 1: + for i in xrange(Gr.dims.npg*PV.nv): + PV.values[i] = 0.75 * self.value_copies[0,i] + 0.25*(PV.values[i] + PV.tendencies[i]*self.dt) + PV.tendencies[i] = 0.0 + else: + for i in xrange(Gr.dims.npg*PV.nv): + PV.values[i] = (1.0/3.0) * self.value_copies[0,i] + (2.0/3.0)*(PV.values[i] + PV.tendencies[i]*self.dt) + PV.tendencies[i] = 0.0 + self.t += self.dt + + return + + cpdef update_fourth(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV): + cdef: + Py_ssize_t i + + with nogil: + if self.rk_step == 0: + for i in xrange(Gr.dims.npg*PV.nv): + self.value_copies[0,i] = PV.values[i] + PV.values[i] += 0.391752226571890 * PV.tendencies[i]*self.dt + PV.tendencies[i] = 0.0 + elif self.rk_step == 1: + for i in xrange(Gr.dims.npg*PV.nv): + PV.values[i] = (0.444370493651235*self.value_copies[0,i] + 0.555629506348765*PV.values[i] + + 0.368410593050371*PV.tendencies[i]*self.dt ) + PV.tendencies[i] = 0.0 + elif self.rk_step == 2: + for i in xrange(Gr.dims.npg*PV.nv): + self.value_copies[1,i] = PV.values[i] + PV.values[i] = (0.620101851488403*self.value_copies[0,i] + 0.379898148511597*PV.values[i] + + 0.251891774271694*PV.tendencies[i]*self.dt) + PV.tendencies[i] = 0.0 + elif self.rk_step == 3: + for i in xrange(Gr.dims.npg*PV.nv): + self.value_copies[2,i] = PV.values[i] + self.tendency_copies[0,i] = PV.tendencies[i] + PV.values[i] = (0.178079954393132*self.value_copies[0,i] + 0.821920045606868*PV.values[i] + + 0.544974750228521*PV.tendencies[i]*self.dt) + PV.tendencies[i] = 0.0 + else: + for i in xrange(Gr.dims.npg*PV.nv): + PV.values[i] = (0.517231671970585*self.value_copies[1,i] + + 0.096059710526147*self.value_copies[2,i] +0.063692468666290*self.tendency_copies[0,i]*self.dt + + 0.386708617503269*PV.values[i] + 0.226007483236906*PV.tendencies[i]*self.dt) + PV.tendencies[i] = 0.0 + self.t += self.dt + return + + cdef void initialize_second(self,PrognosticVariables.PrognosticVariables PV): + + self.rk_step = 0 + self.n_rk_steps = 2 + + #Initialize storage + self.value_copies = np.zeros((1,PV.values.shape[0]),dtype=np.double,order='c') + self.tendency_copies = None + + return + + cdef void initialize_third(self,PrognosticVariables.PrognosticVariables PV): + + self.rk_step = 0 + self.n_rk_steps = 3 + + #Initialize storage + self.value_copies = np.zeros((1,PV.values.shape[0]),dtype=np.double,order='c') + self.tendency_copies = None + + return + + cdef void initialize_fourth(self,PrognosticVariables.PrognosticVariables PV): + self.rk_step = 0 + self.n_rk_steps = 5 + + #Initialize storage + self.value_copies = np.zeros((3,PV.values.shape[0]),dtype=np.double,order='c') + self.tendency_copies = np.zeros((1,PV.values.shape[0]),dtype=np.double,order='c') + + return + + cdef void compute_cfl_max(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): + Pa.root_print('Computing CFL Max') + cdef: + double cfl_max_local = -9999.0 + double [3] dxi = Gr.dims.dxi + Py_ssize_t u_shift = PV.get_varshift(Gr,'u') + Py_ssize_t v_shift = PV.get_varshift(Gr,'v') + Py_ssize_t w_shift = PV.get_varshift(Gr,'w') + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t i,j,k, ijk, ishift, jshift + double w + Py_ssize_t isedv + + with nogil: + for i in xrange(imin,imax): + ishift = i * istride + for j in xrange(jmin,jmax): + jshift = j * jstride + for k in xrange(kmin,kmax): + ijk = ishift + jshift + k + w = fabs(PV.values[w_shift+ijk]) + for isedv in xrange(DV.nsedv): + w = fmax(fabs( DV.values[DV.sedv_index[isedv]*Gr.dims.npg + ijk ] + PV.values[w_shift+ijk]), w) + + cfl_max_local = fmax(cfl_max_local, self.dt * (fabs(PV.values[u_shift + ijk])*dxi[0] + fabs(PV.values[v_shift+ijk])*dxi[1] + w*dxi[2])) + # problem: second term is nan + Pa.root_print('cfl_max_local: '+ str(cfl_max_local)) + Pa.root_print(str(self.dt * (fabs(PV.values[u_shift + ijk])*dxi[0] + fabs(PV.values[v_shift+ijk])*dxi[1] + w*dxi[2]))) # is a nan + Pa.root_print('u: '+str(PV.values[u_shift + ijk])) + Pa.root_print('v: '+str(PV.values[v_shift+ijk])) + Pa.root_print('w: '+str(w)) + # Pa.root_print('u: '+str(fmax(PV.values))) + # Pa.root_print('w: '+str(fabs(w))) + # all three fields are nan + + mpi.MPI_Allreduce(&cfl_max_local,&self.cfl_max,1, + mpi.MPI_DOUBLE,mpi.MPI_MAX,Pa.comm_world) + + self.cfl_max += 1e-11 + + if self.cfl_max < 0.0: + Pa.root_print('CFL_MAX = '+ str(self.cfl_max)+ " killing simulation!") + Pa.kill() + return + + cdef inline double cfl_time_step(self): + return fmin(self.dt_max,self.cfl_limit/(self.cfl_max/self.dt)) + + cpdef restart(self, Restart.Restart Re): + Re.restart_data['TS'] = {} + Re.restart_data['TS']['t'] = self.t + Re.restart_data['TS']['dt'] = self.dt + + return diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h new file mode 100644 index 00000000..41aa9d06 --- /dev/null +++ b/test_av/cc_statistics.h @@ -0,0 +1,147 @@ +#pragma once // preprocessor statement + +#include +#include + +// how to return a double array??? +// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ +void horizontal_mean(struct DimStruct *dims, double* restrict values){ + /* + Compute the horizontal mean of the array pointed to by values. + values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] + * Gr.dims.nlg[1]. + + :param Gr: Grid class + :param values1: pointer to array of type double containing first value in product + :return: memoryview type double with dimension Gr.dims.nlg[2] + ''' + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points + # i = 0,1,2 + */ + + printf("values[0] = %f\n", values[0]); + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double mean_; + double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + //int i,j,k,ijk; + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t i=imin; ing[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + + for(ssize_t k=kmin; kng[2] ?) + datatype = datatype of sendbuf + op = MPI_SUM + */ + + /* + // Example for Averaging using MPI_Allreduce: + + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Reduce all of the local sums into the global sum in order to + // calculate the mean + float global_sum; + MPI_Allreduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, + MPI_COMM_WORLD); + float mean = global_sum / (num_elements_per_proc * world_size); + */ + + + /* + // Example for Averaging from: http://mpitutorial.com/tutorials/mpi-reduce-and-allreduce/ + + float *rand_nums = NULL; + rand_nums = create_rand_nums(num_elements_per_proc); + + // Sum the numbers locally + float local_sum = 0; + int i; + for (i = 0; i < num_elements_per_proc; i++) { + local_sum += rand_nums[i]; + } + + // Print the random numbers on each process + printf("Local sum for process %d - %f, avg = %f\n", + world_rank, local_sum, local_sum / num_elements_per_proc); + + // Reduce all of the local sums into the global sum + float global_sum; + MPI_Reduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, 0, + MPI_COMM_WORLD); + + // Print the result + if (world_rank == 0) { + printf("Total sum = %f, avg = %f\n", global_sum, + global_sum / (world_size * num_elements_per_proc)); + }*/ + + // in Cython: + // mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2],mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) + + + //return mean; + return; + +} + diff --git a/test_av/grid.h b/test_av/grid.h new file mode 100644 index 00000000..08c44afe --- /dev/null +++ b/test_av/grid.h @@ -0,0 +1,24 @@ +#pragma once +struct DimStruct { + + long dims; /// number of physical dimensions + + long n[3]; /// Total number of grid points in grid direction + long ng[3]; /// "" "" "" including ghost points + long nl[3]; /// Total number of local grid points in grid direction owned by local MPI rank + long nlg[3]; /// "" "" "" including ghost points + + long npd; /// Total grid points in domain not including ghost points + long npl; /// Number of grid points not including ghost points owned by local MPI rank + long npg; /// Number of grid points including ghost point owned by local MPI rank + long gw; /// Number of ghost/halo points + + long indx_lo[3]; /// Lower left hand point (globally numbered) of subgrid owned by local MPI rank + long indx_lo_g[3];/// Lower left hand point (globally numbered ) of subgrid owned by local MPI rank including ghostpoints + + long nbuffer[3]; /// Number of points in buffer for ghostpoint update + long ghosted_stride[3]; + + double dx[3]; /// Grid spacing in grid direction + double dxi[3]; // Inverse gird spacing in grid direction + }; diff --git a/test_av/main.py b/test_av/main.py new file mode 100644 index 00000000..14f226ca --- /dev/null +++ b/test_av/main.py @@ -0,0 +1,64 @@ +import argparse +import json +import numpy as np + + +def main(): + print('hello') + + # Parse information from the command line + parser = argparse.ArgumentParser(prog='PyCLES') + parser.add_argument("namelist") + args = parser.parse_args() + + file_namelist = open(args.namelist).read() + namelist = json.loads(file_namelist) + del file_namelist + + + + a = np.linspace(0,99,100) + print(a[0:5]) + + k = 2 + m = 10 + b = np.ones((k,m)) + + import TestRun + Arr = TestRun.TestRun(namelist) + a = Arr.array() + + + + if namelist['grid']['dims'] == 3: + main3d(namelist) + + return + + +def main3d(namelist): + print('calling main3d') + + # import TestArray_c + # import Simulation3d + import TestRun + + # test = TestArray_c.TestArray(namelist) + # Simulation = Simulation3d.Simulation3d(namelist) + test = TestRun.TestRun(namelist) + + #Simulation.initialize(namelist) + test.initialize(namelist) + + #Simulation.run() + # test.array_c() + test.array() + test.array_mean(namelist) + test.hor_mean(namelist) + + + return + + +if __name__ == "__main__": + main() diff --git a/test_av/parameters.h b/test_av/parameters.h new file mode 100644 index 00000000..cf7a058a --- /dev/null +++ b/test_av/parameters.h @@ -0,0 +1,27 @@ +//Generated code! Absolutely DO NOT modify this file, parameters should be modified in generate_parameters.py +#define pi 3.141592653589793 +#define g 9.80665 +#define Rd 287.1 +#define Rv 461.5 +#define eps_v 0.6221018418201517 +#define eps_vi 1.6074538488331591 +#define cpd 1004.0 +#define cpv 1859.0 +#define cl 4218.0 +#define ci 2106.0 +#define kappa 0.2859561752988048 +#define Tf 273.15 +#define Tt 273.16 +#define T_tilde 298.15 +#define p_tilde 100000.0 +#define pv_star_t 611.7 +#define sd_tilde 6864.8 +#define sv_tilde 10513.6 +#define omega 7.2921151467064e-05 +#define vkb 0.35 +#define Pr0 0.74 +#define beta_m 4.7 +#define beta_h 6.351351351351352 +#define gamma_m 15.0 +#define gamma_h 9.0 +//End generated code \ No newline at end of file diff --git a/test_av/prognostic_variables.h b/test_av/prognostic_variables.h new file mode 100644 index 00000000..de9170c4 --- /dev/null +++ b/test_av/prognostic_variables.h @@ -0,0 +1,280 @@ +#pragma once +#include "grid.h" +#include + +struct VelocityDofs { +long u; +long v; +long w; +}; + +void build_buffer(long nv, long dim, long s ,struct DimStruct *dims, + double* restrict values, double* restrict buffer){ + + + long i,j,k; + + const long istride = dims->nlg[1] * dims->nlg[2]; + const long jstride = dims->nlg[2]; + long var_shift = dims->npg * nv ; + long buffer_var_shift ,b_istride, b_jstride, b_ishift, b_jshift; + long shift_offset ; + + if (dim == 0){ + if( s == 1){ + // The shift offset insures that correct values are build into buffer for positive (s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[0]-2*dims->gw; + } + else{ + shift_offset = dims->gw; + } + b_istride = istride; + b_jstride = jstride; + buffer_var_shift = dims->nbuffer[0] * nv ; + for (i=0; igw; i++){ + const long ishift = (i + shift_offset) * istride ; + b_ishift = i * b_istride; + for (j=0; jnlg[1];j++){ + const long jshift = j * jstride ; + b_jshift = j * b_jstride; + for (k=0;knlg[2];k++){ + buffer[buffer_var_shift + b_ishift + b_jshift + k] = values[var_shift + ishift + jshift + k]; + }; + }; + }; + + return; + } + else if (dim == 1){ + if( s == 1){ + // The shift offset insures that correct values are build into buffer for positive(s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[1] - 2*dims->gw; + } + else{ + shift_offset = dims->gw; + } + //Compute the strides in i and j for the buffer arrays + b_istride = dims->gw * dims->nlg[2]; + b_jstride = dims->nlg[2]; + + //Compute the variable array shift + buffer_var_shift = dims->nbuffer[1] * nv ; + + + for (i=0; inlg[0]; i++){ + const long ishift = i * istride; + b_ishift = i * b_istride; + for (j=0; jgw;j++){ + const long jshift = (j + shift_offset) * jstride; + b_jshift = j * b_jstride; + for (k=0;knlg[2];k++){ + buffer[buffer_var_shift + b_ishift + b_jshift + k] = values[var_shift + ishift + jshift + k]; + }; + }; + }; + + return; + } + else { + if(s == 1){ + // The shift offset insures that correct values are build into buffer for positive (s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[2]-2*dims->gw; + } + else{ + shift_offset = dims->gw; + } + b_istride = dims->gw * dims->nlg[1]; + b_jstride = dims->gw; + buffer_var_shift = dims->nbuffer[2] * nv ; + for (i=0; inlg[0]; i++){ + const long ishift = i * istride; + b_ishift = i * b_istride; + for (j=0; jnlg[1];j++){ + const long jshift = j * jstride; + b_jshift = j * b_jstride; + for (k=0;kgw;k++){ + buffer[buffer_var_shift + b_ishift + b_jshift + k] = values[var_shift + ishift + jshift + k + shift_offset]; + }; + }; + }; + + + return; + } + + +} + +void buffer_to_values(ssize_t dim, ssize_t s, struct DimStruct *dims, + double* restrict values, double* restrict buffer){ + + ssize_t i,j,k; + + ssize_t istride = dims->nlg[1] * dims->nlg[2]; + ssize_t jstride = dims->nlg[2]; + ssize_t buffer_var_shift ; + ssize_t shift_offset; + + if (dim == 0){ + if( s == -1){ + // The shift offset insures that correct values are build into buffer for positive (s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[0] - dims->gw; + } + else{ + shift_offset = 0; + } + + const ssize_t b_istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t b_jstride = dims->nlg[2]; + + for (i=0; igw; i++){ + const ssize_t ishift =(i+shift_offset)*istride; + const ssize_t b_ishift = i*b_istride; + for (j=0; jnlg[1]; j++){ + const ssize_t jshift = j*jstride ; + const ssize_t b_jshift = j*b_jstride; + for (k=0; knlg[2]; k++){ + values[ishift + jshift + k] = buffer[b_ishift + b_jshift +k]; + } + } + + } + + return; + } + else if (dim == 1){ + if( s == -1){ + // The shift offset insures that correct values are build into buffer for positive(s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[1] - dims->gw; + } + else{ + shift_offset = 0; + } + + const ssize_t b_istride = dims->gw * dims->nlg[2]; + const ssize_t b_jstride = dims->nlg[2]; + for (i=0; inlg[0]; i++){ + const ssize_t ishift = i * istride; + const ssize_t b_ishift = i * b_istride; + for (j=0; jgw;j++){ + const ssize_t jshift = (j + shift_offset) * jstride; + const ssize_t b_jshift = j * b_jstride; + for (k=0;knlg[2];k++){ + values[ishift + jshift + k] = buffer[b_ishift + b_jshift + k] ; + }; + }; + }; + + return; + } + else { + if(s == -1){ + // The shift offset insures that correct values are build into buffer for positive (s = 1) and + // negative (s = -1) MPI SendRecv shifts. + shift_offset = dims->nlg[2] - dims->gw; + } + else{ + shift_offset = 0; + } + const ssize_t b_istride = dims->gw * dims->nlg[1]; + const ssize_t b_jstride = dims->gw; + for (i=0; inlg[0]; i++){ + const ssize_t ishift = i * istride; + const ssize_t b_ishift = i * b_istride; + for (j=0; jnlg[1];j++){ + const ssize_t jshift = j * jstride; + const ssize_t b_jshift = j * b_jstride; + for (k=0;kgw;k++){ + values[ishift + jshift + k + shift_offset] = buffer[b_ishift + b_jshift + k ]; + }; + }; + }; + + + return; + }; + + return; +} + +void set_bcs(ssize_t dim, ssize_t s, double bc_factor ,struct DimStruct *dims, + double* restrict values){ + + ssize_t i,j,k; + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + if(dim==2){ + if(s==-1){ + const ssize_t bc_start = dims->nlg[2] - dims->gw; // This is the index of the first boundary point + for (i=0; inlg[0]; i++){ + const ssize_t ishift = i * istride; + for(j=0;jnlg[1];j++){ + const ssize_t jshift = j * jstride; + if(bc_factor == 1.0){ + for(k=0;kgw;k++){ + values[ishift + jshift + bc_start +k ] = values[ishift + jshift + bc_start - k -1 ]; + } + } + else if(bc_factor == 2.0){ + for(k=0;kgw;k++){ + values[ishift + jshift + bc_start +k ] = values[ishift + jshift + bc_start -1 ]; + } + } + else{ + values[ishift + jshift + bc_start ] = 0.0; + for(k=1;kgw;k++){ + values[ishift + jshift + bc_start + k] = bc_factor * values[ishift + jshift + bc_start - k ]; + } + } + } + } + + } + else{ + const ssize_t bc_start = dims->gw-1; + for (i=0; inlg[0]; i++){ + const ssize_t ishift = i * istride; + for(j=0;jnlg[1];j++){ + const ssize_t jshift = j * jstride; + if(bc_factor == 1.0){ + for(k=0;kgw;k++){ + values[ishift + jshift + bc_start -k ] = values[ishift + jshift + bc_start + k + 1]; + } + } + else if(bc_factor == 2.0){ + for(k=0;kgw;k++){ + values[ishift + jshift + bc_start -k ] = values[ishift + jshift + bc_start + 1]; + } + } + else{ + values[ishift + jshift + bc_start ] = 0.0; + for(k=1;kgw;k++){ + values[ishift + jshift + bc_start - k] = bc_factor * values[ishift + jshift + bc_start +k ]; + } + } + } + } + } + } + else{ + printf("%s\n","PrognocitVariables.set_bcs only implemented for dim=2"); + } + return; +} + + +void set_to_zero(ssize_t nv, struct DimStruct *dims, double* restrict array){ + + ssize_t i; + for (i = 0; inpg*nv; i++){ + array[i] = 0; + }; + return; +} diff --git a/test_av/setup.py b/test_av/setup.py new file mode 100644 index 00000000..131428b7 --- /dev/null +++ b/test_av/setup.py @@ -0,0 +1,233 @@ +from distutils.core import setup +from Cython.Build import cythonize +from distutils.extension import Extension +import numpy as np +import mpi4py as mpi4py +import sys +import platform + + +# Now get include paths from relevant python modules +include_path = [mpi4py.get_include()] +include_path += [np.get_include()] +include_path += ['./Csrc'] + +if sys.platform == 'darwin': + #Compile flags for MacOSX + library_dirs = [] + libraries = [] + extensions = [] + extra_compile_args = [] + extra_compile_args += ['-O3', '-march=native', '-Wno-unused', '-Wno-#warnings'] +elif 'euler' in platform.node(): + #Compile flags for euler @ ETHZ + library_dirs = ['/cluster/apps/openmpi/1.6.5/x86_64/gcc_4.8.2/lib/'] + libraries = [] + libraries.append('mpi') + extensions = [] + extra_compile_args=[] + extra_compile_args+=['-std=c99', '-O3', '-march=native', '-Wno-unused', + '-Wno-#warnings', '-Wno-maybe-uninitialized', '-Wno-cpp', '-Wno-array-bounds'] +else: + print('Unknown system platform: ' + sys.platform + 'or unknown system name: ' + platform.node()) + sys.exit() + +_ext = Extension('TestRun', ['TestRun.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) + +_ext = Extension('TestArray_c', ['TestArray_c.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) + +_ext = Extension('Grid', ['Grid.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) + +# _ext = Extension('Initialization', ['Initialization.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Microphysics', ['Microphysics.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('thermodynamic_functions', ['thermodynamic_functions.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Thermodynamics', ['Thermodynamics.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('ThermodynamicsDry', ['ThermodynamicsDry.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('ThermodynamicsSA', ['ThermodynamicsSA.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) + +_ext = Extension('ReferenceState', ['ReferenceState.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) +# +# _ext = Extension('Simulation3d', ['Simulation3d.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +_ext = Extension('ParallelMPI', ['ParallelMPI.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) + +_ext = Extension('PrognosticVariables', ['PrognosticVariables.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) + +_ext = Extension('DiagnosticVariables', ['DiagnosticVariables.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) +# +# _ext = Extension('ScalarAdvection', ['ScalarAdvection.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('MomentumAdvection', ['MomentumAdvection.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# # _ext = Extension('ScalarAdvection_QL', ['ScalarAdvection_QL.pyx'], include_dirs=include_path, +# # extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# # runtime_library_dirs=library_dirs) +# # extensions.append(_ext) +# # +# # _ext = Extension('MomentumAdvection_QL', ['MomentumAdvection_QL.pyx'], include_dirs=include_path, +# # extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# # runtime_library_dirs=library_dirs) +# # extensions.append(_ext) +# +# _ext = Extension('ScalarDiffusion', ['ScalarDiffusion.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('MomentumDiffusion', ['MomentumDiffusion.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('FluxDivergence', ['FluxDivergence.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('PressureSolver', ['PressureSolver.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('PressureFFTSerial', ['PressureFFTSerial.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('PressureFFTParallel', ['PressureFFTParallel.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('SparseSolvers', ['SparseSolvers.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('SGS', ['SGS.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) + +_ext = Extension('TimeStepping', ['TimeStepping.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) +# +# _ext = Extension('Kinematics', ['Kinematics.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Lookup', ['Lookup.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) + +_ext = Extension('NetCDFIO', ['NetCDFIO.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) +# +# _ext = Extension('Surface', ['Surface.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Damping', ['Damping.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Forcing', ['Forcing.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('entropies', ['entropies.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('Radiation', ['Radiation.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('AuxiliaryStatistics', ['AuxiliaryStatistics.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# _ext = Extension('ConditionalStatistics', ['ConditionalStatistics.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) +# +# +_ext = Extension('Restart', ['Restart.pyx'], include_dirs=include_path, + extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, + runtime_library_dirs=library_dirs) +extensions.append(_ext) +# +# _ext = Extension('VisualizationOutput', ['VisualizationOutput.pyx'], include_dirs=include_path, +# extra_compile_args=extra_compile_args, libraries=libraries, library_dirs=library_dirs, +# runtime_library_dirs=library_dirs) +# extensions.append(_ext) + +setup( + ext_modules=cythonize(extensions, verbose=1, include_path=include_path) +) diff --git a/test_av/test_array b/test_av/test_array deleted file mode 100644 index e69de29b..00000000 diff --git a/test_av/thermodynamic_functions.h b/test_av/thermodynamic_functions.h new file mode 100644 index 00000000..e7893a06 --- /dev/null +++ b/test_av/thermodynamic_functions.h @@ -0,0 +1,65 @@ +#pragma once +#include "parameters.h" +#include + +inline double exner_c(const double p0){ + return pow((p0/p_tilde),kappa); +} + +inline double theta_c(const double p0, const double T){ + // Dry potential temperature + return T / exner_c(p0); +} + +inline double thetali_c(const double p0, const double T, const double qt, const double ql, const double qi, const double L){ + // Liquid ice potential temperature consistent with Triopoli and Cotton (1981) + return theta_c(p0, T) * exp(-L*(ql/(1.0 - qt) + qi/(1.0 -qt))/(T*cpd)); +} + +inline double pd_c(const double p0,const double qt, const double qv){ + return p0*(1.0-qt)/(1.0 - qt + eps_vi * qv); +} + +inline double pv_c(const double p0, const double qt, const double qv){ + return p0 * eps_vi * qv /(1.0 - qt + eps_vi * qv); +} + +inline double density_temperature_c(const double T, const double qt, const double qv){ + return T * (1.0 - qt + eps_vi * qv); +} + +inline double theta_rho_c(const double p0, const double T, const double qt, const double qv){ + return density_temperature_c(T,qt,qv)/exner_c(p0); +} + +inline double cpm_c(const double qt){ + return (1.0-qt) * cpd + qt * cpv; +} + +inline double thetas_c(const double s, const double qt){ + return T_tilde*exp((s-(1.0-qt)*sd_tilde - qt*sv_tilde)/cpm_c(qt)); +} + +inline double thetas_t_c(const double p0, const double T, const double qt, const double qv, const double qc, const double L){ + const double qd = 1.0 - qt; + const double pd = pd_c(p0,qt,qt-qc); + const double pv = pv_c(p0,qt,qt-qc); + const double cpm = cpm_c(qt); + return T * pow(p_tilde/pd,qd * Rd/cpm)*pow(p_tilde/pv,qt*Rv/cpm)*exp(-L * qc/(cpm*T)); +} + +inline double entropy_from_thetas_c(const double thetas, const double qt){ + return cpm_c(qt) * log(thetas/T_tilde) + (1.0 - qt)*sd_tilde + qt * sv_tilde; +} + +inline double buoyancy_c(const double alpha0, const double alpha){ + return g * (alpha - alpha0)/alpha0; +} + +inline double qv_star_c(const double p0, const double qt, const double pv){ + return eps_v * (1.0 - qt) * pv / (p0 - pv) ; +} + +inline double alpha_c(double p0, double T, double qt, double qv){ + return (Rd * T)/p0 * (1.0 - qt + eps_vi * qv); +} From 99be548cf5019d832df94b3cc4e1e2a00291357c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 8 Mar 2016 13:48:03 +0100 Subject: [PATCH 034/511] debugging MPI --- test_av/TestArray_c.pyx | 2 +- test_av/TestRun.pyx | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index 226d1ab9..fe13a5ff 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -48,7 +48,7 @@ cdef class TestArray: cdef int i for i in range(Gr.dims.npg): - PV.values[i] = 2 + PV.values[i] = 2.0 return diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx index a1277101..7dde1f29 100644 --- a/test_av/TestRun.pyx +++ b/test_av/TestRun.pyx @@ -38,7 +38,7 @@ class TestRun: b[0,:] = aux b[1,:] = aux - print(b[0,:]) + # print(b[0,:]) return b @@ -84,4 +84,5 @@ class TestRun: b = mean.array_c() mean.array_mean(self.PV, self.Gr) + print('finished TestRun') return \ No newline at end of file From 301df3e99b1168041d5bfb6e1af6afdc42f719b7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 8 Mar 2016 14:44:46 +0100 Subject: [PATCH 035/511] debugging cc_statistics MPI communication --- test_av/cc_statistics.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index 41aa9d06..e05424ef 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -24,7 +24,8 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("values[0] = %f\n", values[0]); double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double mean_; +// double mean_; + double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); double *mean = (double *)malloc(sizeof(double) * dims->n[2]); //int i,j,k,ijk; int ijk; @@ -62,10 +63,13 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ // MPI_Reduce(&mean_local, &mean, dims->ng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + printf("Done"); for(ssize_t k=kmin; k Date: Tue, 8 Mar 2016 14:56:29 +0100 Subject: [PATCH 036/511] changing default advection scheme for DCBL Soares to 2nd --- Csrc/cc_statistics.h | 13 ++++++++----- test_av/cc_statistics.h | 1 - 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index 41aa9d06..8b804e77 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -24,7 +24,8 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("values[0] = %f\n", values[0]); double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double mean_; +// double mean_; + double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); double *mean = (double *)malloc(sizeof(double) * dims->n[2]); //int i,j,k,ijk; int ijk; @@ -62,10 +63,13 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ // MPI_Reduce(&mean_local, &mean, dims->ng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + printf("Done"); for(ssize_t k=kmin; k Date: Tue, 8 Mar 2016 14:57:16 +0100 Subject: [PATCH 037/511] debugging cc_statistics --- test_av/cc_statistics.h | 1 - 1 file changed, 1 deletion(-) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index 8b804e77..fff943c4 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -94,7 +94,6 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ // Example for Averaging using MPI_Allreduce: rand_nums = create_rand_nums(num_elements_per_proc); - // Sum the numbers locally float local_sum = 0; int i; From 568478179cdc2c834f8fcdff737887b50ad9fbdd Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 8 Mar 2016 15:03:19 +0100 Subject: [PATCH 038/511] debugging cc_statistics --- Csrc/cc_statistics.h | 11 +++++------ test_av/cc_statistics.h | 10 +++++----- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index 8b804e77..ab4b12e7 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -23,10 +23,13 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("values[0] = %f\n", values[0]); +// double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array // double mean_; - double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); - double *mean = (double *)malloc(sizeof(double) * dims->n[2]); +// double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); +// double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); //int i,j,k,ijk; int ijk; const ssize_t imin = dims->gw; @@ -57,12 +60,9 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("mean_local[0] = %f\n", mean_local[0]); printf("mean_local[10] = %f\n", mean_local[0]); - //#Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among //#processes with the the same vertical rank - // MPI_Reduce(&mean_local, &mean, dims->ng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); printf("Done"); for(ssize_t k=kmin; kn[2]); // Dynamically allocate array double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array // double mean_; - double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); - double *mean = (double *)malloc(sizeof(double) * dims->n[2]); +// double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); +// double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); //int i,j,k,ijk; int ijk; const ssize_t imin = dims->gw; @@ -57,12 +60,9 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("mean_local[0] = %f\n", mean_local[0]); printf("mean_local[10] = %f\n", mean_local[0]); - //#Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among //#processes with the the same vertical rank - // MPI_Reduce(&mean_local, &mean, dims->ng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); printf("Done"); for(ssize_t k=kmin; k Date: Tue, 8 Mar 2016 15:23:01 +0100 Subject: [PATCH 039/511] debuging cc_statistics --- test_av/cc_statistics.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index ab4b12e7..c1e04831 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -64,7 +64,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ //#processes with the the same vertical rank // MPI_Reduce(&mean_local, &mean, dims->ng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - printf("Done"); + printf("Done \n"); for(ssize_t k=kmin; k Date: Tue, 8 Mar 2016 15:29:12 +0100 Subject: [PATCH 040/511] fixed MPI problem in cc_statistics.h --- Csrc/cc_statistics.h | 18 +++++------------- test_av/cc_statistics.h | 16 ++++------------ 2 files changed, 9 insertions(+), 25 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index ab4b12e7..ca3f7354 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -24,10 +24,9 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ printf("values[0] = %f\n", values[0]); // double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array -// double mean_; // double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); // double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); //int i,j,k,ijk; @@ -49,10 +48,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ const ssize_t jshift = j * jstride; for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - printf("Done"); + printf("Done \n"); for(ssize_t k=kmin; kn[2]); // Dynamically allocate array - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array -// double mean_; // double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); // double *mean = (double *)malloc(sizeof(double) * dims->n[2]); + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); //int i,j,k,ijk; @@ -49,10 +48,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ const ssize_t jshift = j * jstride; for(ssize_t k=kmin; k Date: Tue, 8 Mar 2016 23:32:18 +0100 Subject: [PATCH 041/511] debugging cc_statistics.h; computing mean velocities and eddy mean flux in mom_adv_central_ql.h --- Csrc/c_statistics.h | 137 --------------------------- Csrc/cc_statistics.h | 84 ++++++++++++++-- Csrc/momentum_advection.h | 1 - Csrc/momentum_advection_central_ql.h | 36 +++---- test_av/PrognosticVariables.pyx | 2 +- test_av/TestArray_c.pxd | 30 +----- test_av/TestArray_c.pyx | 60 +++++++++++- test_av/TestRun.pyx | 53 +++++++---- test_av/cc_statistics.h | 83 +++++++++++++++- test_av/main.py | 13 ++- 10 files changed, 276 insertions(+), 223 deletions(-) delete mode 100644 Csrc/c_statistics.h diff --git a/Csrc/c_statistics.h b/Csrc/c_statistics.h deleted file mode 100644 index 1cfaf514..00000000 --- a/Csrc/c_statistics.h +++ /dev/null @@ -1,137 +0,0 @@ -#pragma once // preprocessor statement - -#include -#include - -// how to return a double array??? -// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ -void horizontal_mean(struct DimStruct *dims, double* restrict values){ - /* - Compute the horizontal mean of the array pointed to by values. - values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] - * Gr.dims.nlg[1]. - - :param Gr: Grid class - :param values1: pointer to array of type double containing first value in product - :return: memoryview type double with dimension Gr.dims.nlg[2] - ''' - # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts - # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) - # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points - # i = 0,1,2 - */ - - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double mean_; - double *mean = (double *)malloc(sizeof(double) * dims->n[2]); - //int i,j,k,ijk; - int ijk; - const ssize_t imin = dims->gw; - const ssize_t jmin = dims->gw; - const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0] - dims->gw; - const ssize_t jmax = dims->nlg[1] - dims->gw; - const ssize_t kmax = dims->nlg[2]; - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - //int ishift, jshift; - const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); - - for(ssize_t i=imin; ing[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - - for(ssize_t k=kmin; kng[2] ?) - datatype = datatype of sendbuf - op = MPI_SUM - */ - - /* - // Example for Averaging using MPI_Allreduce: - - rand_nums = create_rand_nums(num_elements_per_proc); - - // Sum the numbers locally - float local_sum = 0; - int i; - for (i = 0; i < num_elements_per_proc; i++) { - local_sum += rand_nums[i]; - } - - // Reduce all of the local sums into the global sum in order to - // calculate the mean - float global_sum; - MPI_Allreduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, - MPI_COMM_WORLD); - float mean = global_sum / (num_elements_per_proc * world_size); - */ - - - /* - // Example for Averaging from: http://mpitutorial.com/tutorials/mpi-reduce-and-allreduce/ - - float *rand_nums = NULL; - rand_nums = create_rand_nums(num_elements_per_proc); - - // Sum the numbers locally - float local_sum = 0; - int i; - for (i = 0; i < num_elements_per_proc; i++) { - local_sum += rand_nums[i]; - } - - // Print the random numbers on each process - printf("Local sum for process %d - %f, avg = %f\n", - world_rank, local_sum, local_sum / num_elements_per_proc); - - // Reduce all of the local sums into the global sum - float global_sum; - MPI_Reduce(&local_sum, &global_sum, 1, MPI_FLOAT, MPI_SUM, 0, - MPI_COMM_WORLD); - - // Print the result - if (world_rank == 0) { - printf("Total sum = %f, avg = %f\n", global_sum, - global_sum / (world_size * num_elements_per_proc)); - }*/ - - // in Cython: - // mpi.MPI_Allreduce(&mean_local[0],&mean[0],Gr.dims.nlg[2],mpi.MPI_DOUBLE,mpi.MPI_SUM,self.cart_comm_sub_xy) - - - //return mean; - return; - -} - diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index ca3f7354..51de80ef 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -22,7 +22,6 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ */ printf("values[0] = %f\n", values[0]); - // double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array // double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); // double *mean = (double *)malloc(sizeof(double) * dims->n[2]); @@ -42,6 +41,10 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ //int ishift, jshift; const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - printf("Done \n"); for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// + const ssize_t gw = dims->gw; + printf("values[gw] = %f\n", values[gw]); + printf("before: mean[gw] = %f\n", mean[gw]); + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + for(ssize_t k=kmin; k +// !!!!!!!! Need to Fix Flux computation (subtracting eddy flux) !!!!! + // QUESTIONS / NOTES: // need to be able to output eddy_flux??? // how to calculate horizontal mean??? @@ -26,7 +29,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - printf("QL Momentum Transport"); + printf("2nd order QL Momentum Transport \n"); // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) @@ -75,22 +78,20 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re // (2) average interpolated velocity fields //vel_mean_ing = Pa.HorizontalMean(Gr, &vel_int_advecting); +// horizontal_mean(dims, &vel_int_ing[0]); +// const ssize_t dims->gw; +// int d_ad = d_advected; +// int d_ing = d_advecting; +// printf("flux: %d, %d; vel_int[gw+2] = %f\n", d_ad, d_ing, values[0]); + horizontal_mean_return(dims, &vel_int_ing[0], &vel_mean_ing[0]); +// printf("values[gw] = %f\n", values[0]); if (d_advected != d_advecting){ - vel_mean_ed = vel_mean_ing; - //vel_mean_ed = Pa.HorizontalMean(Gr, &vel_int_advected); +// horizontal_mean(dims, &vel_int_ed[0]); + horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); } else { vel_mean_ed = vel_mean_ing; } - // ??? call function per k or globally? - /*for(ssize_t k=kmin;kn[2]); // Dynamically allocate array // double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); // double *mean = (double *)malloc(sizeof(double) * dims->n[2]); @@ -42,6 +41,10 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ //int ishift, jshift; const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); // MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - printf("Done \n"); for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// + const ssize_t gw = dims->gw; + printf("values[gw] = %f\n", values[gw]); + printf("before: mean[gw] = %f\n", mean[gw]); + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + for(ssize_t k=kmin; k Date: Wed, 16 Mar 2016 10:20:03 +0100 Subject: [PATCH 042/511] adding plotting files to PostProcessing --- PostProcessing/plot_spectra.py | 340 +++++++++++++++++++++++++++++++++ PostProcessing/plotting_2.py | 167 ++++++++++++++++ Simulation3d.pyx | 1 + 3 files changed, 508 insertions(+) create mode 100644 PostProcessing/plot_spectra.py create mode 100644 PostProcessing/plotting_2.py diff --git a/PostProcessing/plot_spectra.py b/PostProcessing/plot_spectra.py new file mode 100644 index 00000000..36b77331 --- /dev/null +++ b/PostProcessing/plot_spectra.py @@ -0,0 +1,340 @@ +import netCDF4 as nc +import numpy as np +import pylab as plt + + +my_colors=['blue','red','green','magenta','cyan','yellow','brown','Orange','DarkViolet','SkyBlue','Chartreuse', + 'DarkKhaki','DarkSeaGreen','DeepPink','IndianRed','Lavender', 'MediumOrchid'] + +file_plus_path = '/Volumes/data5/Kyle/spectra/CondStats.DYCOMS_RF01_order_25.nc' + + +dx = 35.0 +dz = 5.0 +nx = 96 +dk = 2.0*np.pi/(dx*nx) + +data = nc.Dataset(file_plus_path, 'r' ) + +spectra = data.groups['spectra'] + +z = spectra.variables['z'][:] + +kappa = spectra.variables['wavenumber'][:]/dk + +E_TKE = spectra.variables['energy_spectrum'][23,:,:] + +E_QT = spectra.variables['qt_spectrum'][23,:,:] + +E_S = spectra.variables['s_spectrum'][23,:,:] +E_SQT = spectra.variables['s_qt_cospectrum'][23,:,:] + + +k53 = kappa**(-5.0/3.0) + +plt.figure(1) +plt.title('Energy spectra') +count = 0 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_TKE[k,:]/(dk*np.sum(E_TKE[k,:])), basey=10,label = '5m5s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(2) +plt.title('Entropy variance spectra') +count = 0 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_S[k,:]/(dk*np.sum(E_S[k,:])), basey=10,label = '5m5s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_s\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(3) +plt.title('Total water variance spectra') +count = 0 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_QT[k,:]/(dk*np.sum(E_QT[k,:])), basey=10,label = '5m5s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + +plt.figure(4) +plt.title('Total water--entropy covariance spectra') +count = 0 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_SQT[k,:]/(dk*np.sum(E_SQT[k,:])), basey=10,label = '5m5s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{s,q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + + + +file_plus_path = '/Volumes/data5/Kyle/spectra/CondStats.DYCOMS_RF01_order_27.nc' + + +dx = 35.0 +dz = 5.0 +nx = 96 +dk = 2.0*np.pi/(dx*nx) + +data = nc.Dataset(file_plus_path, 'r' ) + +spectra = data.groups['spectra'] + +z = spectra.variables['z'][:] + +kappa = spectra.variables['wavenumber'][:]/dk + +E_TKE = spectra.variables['energy_spectrum'][23,:,:] + +E_QT = spectra.variables['qt_spectrum'][23,:,:] + +E_S = spectra.variables['s_spectrum'][23,:,:] +E_SQT = spectra.variables['s_qt_cospectrum'][23,:,:] + + +k53 = kappa**(-5.0/3.0) + +plt.figure(1) +plt.title('Energy spectra') +count = 1 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_TKE[k,:]/(dk*np.sum(E_TKE[k,:])), basey=10,label = '7m7s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(2) +plt.title('Entropy variance spectra') +count = 1 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_S[k,:]/(dk*np.sum(E_S[k,:])), basey=10,label = '7m7s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_s\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(3) +plt.title('Total water variance spectra') +count = 1 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_QT[k,:]/(dk*np.sum(E_QT[k,:])), basey=10,label = '7m7s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + +plt.figure(4) +plt.title('Total water--entropy covariance spectra') +count = 1 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_SQT[k,:]/(dk*np.sum(E_SQT[k,:])), basey=10,label = '7m7s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{s,q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + + +file_plus_path = '/Volumes/data5/Kyle/spectra/CondStats.DYCOMS_RF01_order_29.nc' + + +dx = 35.0 +dz = 5.0 +nx = 96 +dk = 2.0*np.pi/(dx*nx) + + +data = nc.Dataset(file_plus_path, 'r' ) + +spectra = data.groups['spectra'] + +z = spectra.variables['z'][:] + +kappa = spectra.variables['wavenumber'][:]/dk + +E_TKE = spectra.variables['energy_spectrum'][23,:,:] + +E_QT = spectra.variables['qt_spectrum'][23,:,:] + +E_S = spectra.variables['s_spectrum'][23,:,:] +E_SQT = spectra.variables['s_qt_cospectrum'][23,:,:] + + +k53 = kappa**(-5.0/3.0) + +plt.figure(1) +plt.title('Energy spectra') +count = 2 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_TKE[k,:]/(dk*np.sum(E_TKE[k,:])), basey=10,label ='9m9s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(2) +plt.title('Entropy variance spectra') +count = 2 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_S[k,:]/(dk*np.sum(E_S[k,:])), basey=10,label = '9m9s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_s\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(3) +plt.title('Total water variance spectra') +count = 2 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_QT[k,:]/(dk*np.sum(E_QT[k,:])), basey=10,label = '9m9s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + +plt.figure(4) +plt.title('Total water--entropy covariance spectra') +count = 2 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_SQT[k,:]/(dk*np.sum(E_SQT[k,:])), basey=10,label = '9m9s, ILES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{s,q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + +file_plus_path = '/Users/ckaul/Desktop/LES_results/DYCOMS_RF01/IC_res/CondStats.DYCOMS_RF01_order_9_IC.nc' + + +dx = 35.0 +dz = 5.0 +nx = 96 +dk = 2.0*np.pi/(dx*nx) + +data = nc.Dataset(file_plus_path, 'r' ) + +spectra = data.groups['spectra'] + +z = spectra.variables['z'][:] + +kappa = spectra.variables['wavenumber'][:]/dk + +E_TKE = spectra.variables['energy_spectrum'][23,:,:] + +E_QT = spectra.variables['qt_spectrum'][23,:,:] + +E_S = spectra.variables['s_spectrum'][23,:,:] +E_SQT = spectra.variables['s_qt_cospectrum'][23,:,:] + + +k53 = kappa**(-5.0/3.0) + +plt.figure(1) +plt.title('Energy spectra') +count = 3 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_TKE[k,:]/(dk*np.sum(E_TKE[k,:])), basey=10,label ='9m9s, ELES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(2) +plt.title('Entropy variance spectra') +count = 3 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_S[k,:]/(dk*np.sum(E_S[k,:])), basey=10,label = '9m9s, ELES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_s\left(\kappa\right)$',fontsize=20) +plt.ylim(1e-8,1e3) + +plt.figure(3) +plt.title('Total water variance spectra') +count = 3 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_QT[k,:]/(dk*np.sum(E_QT[k,:])), basey=10,label = '9m9s, ELES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + +plt.figure(4) +plt.title('Total water--entropy covariance spectra') +count = 3 +for k in np.arange(80,90,20): + plt.semilogy(kappa, E_SQT[k,:]/(dk*np.sum(E_SQT[k,:])), basey=10,label = '9m9s, ELES', color = my_colors[count] ) + count +=1 +plt.semilogy(kappa, k53*1000.0,linewidth=2, basey=10, color ='black', label='__nolabel__') +plt.legend(loc=0) +plt.xlabel(r'$\kappa\left(\frac{L}{2\pi} \right)$',fontsize=20) +plt.ylabel(r'$E_{s,q_t}\left(\kappa\right)$',fontsize=20) + +plt.ylim(1e-8,1e3) + + + + +plt.show() + diff --git a/PostProcessing/plotting_2.py b/PostProcessing/plotting_2.py new file mode 100644 index 00000000..f42be575 --- /dev/null +++ b/PostProcessing/plotting_2.py @@ -0,0 +1,167 @@ +import netCDF4 as nc +import numpy as np +import pylab as plt +import glob +import os +import json as simplejson +import argparse + + + +''' +Use glob to find all directories whose names match a certain format, with wildcards allowed. +Namelist is found and read in to provide information about the file. +''' + + + +my_colors=['blue','red','green','magenta','cyan','yellow','brown','Orange','DarkViolet','SkyBlue','Chartreuse', 'DarkKhaki','DarkSeaGreen','DeepPink','IndianRed','Lavender', 'MediumOrchid'] + +def main(): + start_hour=1.5 + stop_hour=2 + interval=2 + + profile_vars = ['u_translational_mean', 'v_translational_mean', 's_mean', 'qt_mean','qv_mean','temperature_mean', + 'thetali_mean','cloud_fraction', 'ql_mean', + 's_sgs_variance','qt_sgs_variance','qt_sgs_variance_clip', 'sgs_covariance', 'sgs_correlation']#, 'qr_mean', 'qt_sedimentation_flux', 'qr_sedimentation_flux', ] + + + variances = ['horizontal_velocity_variance','vertical_velocity_variance','resolved_tke', 'resolved_skewness','resolved_theta_variance'] + timeseries_vars = ['cloud_base', 'cloud_top', 'cloud_fraction', 'lwp'] + + + dir = '/Users/ckaul/Desktop/LES_results/DYCOMS_RF02/' + namelist_files = glob.glob(dir +'*.in') + print(namelist_files) + + count = -1 + #--------MEANS + for namelist in namelist_files: + simname = namelist[len(dir):-3] + print(simname) + + # print(namelist) + nml = simplejson.loads(open(namelist).read()) + flag, name = case_specific_parse(nml) + #overwrite hue + + if flag == 1: + print(name) + count += 1 + ncfile = dir + 'Stats.' + simname + '.nc' + print(ncfile) + data = nc.Dataset(ncfile,'r') + nkr = data.groups['profiles'].variables['z'].shape[0] + + perhour =int(3600.0/nml['stats_io']['frequency']) + + my_i = np.arange(int(start_hour*perhour), int(stop_hour*perhour), interval) + + line_color = my_colors[count] + + n_i = np.shape(my_i)[0] + # plot profile vars + for var in profile_vars: + print(var) + + title = 'profile_'+ var + plt.figure(title) + reg1 = np.zeros(nkr) + for t in my_i: + for k in np.arange(nkr): + reg1[k] += data.groups['profiles'].variables[var][t,k]/float(n_i) + plt.plot(reg1, data.groups['profiles'].variables['z'][:], linewidth = 2,label = name, color=line_color, marker='o') + + # plot profiles of variances/tke, additional computation required here + reg1 = np.zeros(nkr) + reg1w = np.zeros(nkr) + regth = np.zeros(nkr) + regsk = np.zeros(nkr) + try: + for t in my_i: + for k in np.arange(nkr): + reg1[k] += data.groups['profiles'].variables['u_mean2'][t,k]/float(n_i)-data.groups['profiles'].variables['u_mean'][t,k]**2/float(n_i) + reg1[k] += data.groups['profiles'].variables['v_mean2'][t,k]/float(n_i)-data.groups['profiles'].variables['v_mean'][t,k]**2/float(n_i) + reg1w[k] += data.groups['profiles'].variables['w_mean2'][t,k]/float(n_i) + regsk[k]+= (data.groups['profiles'].variables['w_mean3'][t,k]) /float(n_i) + # regsk[k]+= (data.groups['profiles'].variables['w_mean3'][t,k]/(data.groups['profiles'].variables['w_mean2'][t,k]+1e-10)**1.5) /float(n_i) + regth[k] += data.groups['profiles'].variables['theta_mean2'][t,k]/float(n_i)-data.groups['profiles'].variables['theta_mean'][t,k]**2/float(n_i) + + plt.figure('horizontal_velocity_variance') + plt.plot(reg1, data.groups['profiles'].variables['z'][:], linewidth = 2,label = name, color=line_color) + + plt.figure('vertical_velocity_variance') + plt.plot(reg1w, data.groups['profiles'].variables['z'][:], linewidth = 2,label =name, color=line_color) + + + plt.figure('resolved_tke') + plt.plot((reg1[:]+reg1w[:])*0.5, data.groups['profiles'].variables['z'][:], linewidth = 2,label = name, color=line_color) + + + plt.figure('resolved_skewness') + plt.plot(regsk, data.groups['profiles'].variables['z'][:], linewidth = 2,label = name, color=line_color) + + + plt.figure('resolved_theta_variance') + plt.plot(regth, data.groups['profiles'].variables['z'][:], linewidth = 2,label = name, color=line_color) + except: + pass + + # plot timeseries + for var in timeseries_vars: + print(var) + plt.figure(var) + plt.title(var) + plt.plot(data.groups['timeseries'].variables['t'][:]/3600.0,data.groups['timeseries'].variables[var][:],linewidth = 2,label = name, color=line_color) + + + data.close() + + for var in profile_vars: + plt.figure('profile_'+var) + plt.legend(loc=0) + + + for var in variances: + plt.figure(var) + plt.legend(loc=0) + + for var in timeseries_vars: + plt.figure(var) + plt.legend(loc=0) + + + + + plt.show() + + + + +def case_specific_parse(nml): + ''' + Use the namelist dictionary to set up specific plotting procedures + :param nml: JSON namelist file converted to dictionary + :return: + flag: 1=use this data file, 0=skip + label: string to be used for plot labeling + hue: color to be used for plot line + ''' + flag=1 + label = nml['meta']['simname'] + # try: + # sgs_flag = nml['sgs']['sgs_condensation'] + # except: + # sgs_flag = False + # if sgs_flag : + # flag = 0 + # if nml['sgs']['condensation']['quadrature_order'] == 20: #nml['sgs']['condensation']['c_variance']< 0.15 and nml['sgs']['condensation']['c_variance']> 0.05: + # flag = 1 + + return flag, label + +if __name__=='__main__': + + + main() diff --git a/Simulation3d.pyx b/Simulation3d.pyx index 24094a76..28fc5736 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -219,6 +219,7 @@ class Simulation3d: self.StatsIO.last_output_time = self.TS.t self.StatsIO.open_files(self.Pa) self.StatsIO.write_simulation_time(self.TS.t, self.Pa) + self.Micro.stats_io(self.Gr, self.Ref, self.PV, self.DV, self.StatsIO, self.Pa) # do Micro.stats_io prior to DV.stats_io to get sedimentation velocity only in output self.PV.stats_io(self.Gr, self.Ref, self.StatsIO, self.Pa) From 9279958f52854886398dab78ea7bb26c4a662aba Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 16 Mar 2016 14:04:18 +0100 Subject: [PATCH 043/511] adding QL scalar advection to scalar_advection.h --- Csrc/momentum_advection_central_ql.h | 12 ++- Csrc/momentum_advection_ql.h | 110 --------------------- Csrc/scalar_advection.h | 125 ++++++++++++++++++++++++ Csrc/scalar_advection_ql.h | 141 --------------------------- Grid.pyx | 14 ++- 5 files changed, 141 insertions(+), 261 deletions(-) delete mode 100644 Csrc/momentum_advection_ql.h delete mode 100644 Csrc/scalar_advection_ql.h diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 651c43a0..46651405 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -67,10 +67,10 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re for(ssize_t k=kmin;k - - -void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, - double* restrict alpha0, double* restrict alpha0_half, - double* restrict vel_advected, double* restrict vel_advecting, - double* restrict tendency, ssize_t d_advected, ssize_t d_advecting, int scheme){ - - switch(scheme){ - case 2: - second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 3: - weno_third_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 4: - fourth_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 5: - weno_fifth_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 6: - sixth_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 7: - weno_seventh_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 8: - eighth_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 9: - weno_ninth_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 11: - weno_eleventh_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 14: - // This is an application of fourth order Wicker-Skamarock to momentum but using a lower order interpolation - // for advecting velocity. - fourth_order_ws_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 16: - // This is an application of sixth order Wicker-Skamarock to momentum but using a lower order interpolation - // for advecting velocity. - sixth_order_ws_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 24: - fourth_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 25: - weno_fifth_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 26: - sixth_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 27: - weno_seventh_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 28: - eighth_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 29: - weno_ninth_order_m_pt(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 32: - second_order_ml_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 34: - fourth_order_ml_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - case 36: - sixth_order_ml_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - default: - // Default to second order scheme. - second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, - tendency, d_advected, d_advecting); - break; - }; -} diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index a11b7907..2e928292 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -4,6 +4,9 @@ #include "thermodynamic_functions.h" #include "entropies.h" +#include "cc_statistics.h" + + void second_order_a(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ const ssize_t istride = dims->nlg[1] * dims->nlg[2]; @@ -685,6 +688,121 @@ void weno_eleventh_order_a(const struct DimStruct *dims, double* restrict rho0, } +//void second_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ +void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ + printf("2nd order QL Scalar Transport \n"); +//compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], +// &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) +//void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, double* rho0_half ,double* restrict velocity, double* restrict scalar, +// double* restrict flux, int d, int scheme) +//second_order_a_ql(dims, rho0, rho0_half, velocity, scalar, flux, d); +// +// --> velocity = pointer to first element of array of advecting velocity (u_i) +// --> scalar = pointer to first element of array of scalar that is advected (phi_j) +// --> flux = pointer to first element of array of flux_ij = u_i*phi_j + + // right dimensions ???? (compare to flux in ScalarAdvection) + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + + + // (1) interpolation + // (a) velocity fields --> not necessary, since only scalars interpolated + // (b) scalar field + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - - if(d==2){ - for(ssize_t i=imin;inlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - const ssize_t sp2 = 2 * sp1; - const ssize_t sp3 = 3 * sp1; - const ssize_t sm1 = -sp1 ; - const ssize_t sm2 = -2*sp1; - - if(d==2){ - for(ssize_t i=imin;i total number of pts - # Gr.dims.ng[i] = Gr.dims.n[i] + 2*gw --> total number of pts incl. ghost points - # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) - # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points # i = 0,1,2 + # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> global number of pts per direction + # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) + + # Gr.dims.ng[i] = Gr.dims.n[i] + 2*gw --> global number of pts incl. ghost pts + # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost pts + + # Gr.dims.npd = n[0] * n[1] * n[2] ( = nx * ny * nz) --> global number of pts in 3D grid + # Gr.dims.npl = nl[0] * nl[1] * nl[2] --> local number of pts in 3D grid + # Gr.dims.npg = nlg[0] * nlg[1] * nlg[2] --> local number of pts in 3D grid incl. ghost pts def __init__(self,namelist,Parallel): From 5c654665eaa4119bbd4529e51563f6748ef0a794 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 16 Mar 2016 14:19:03 +0100 Subject: [PATCH 044/511] print statment --- Csrc/cc_statistics.h | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index 51de80ef..0177f611 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -21,7 +21,8 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ # i = 0,1,2 */ - printf("values[0] = %f\n", values[0]); +// printf("values[0] = %f\n", values[0]); + // double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array // double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); // double *mean = (double *)malloc(sizeof(double) * dims->n[2]); @@ -56,7 +57,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ } } // printf("nx*ny = %f\n", 1/n_horizontal_i); - printf("mean_local[0] = %f\n", mean_local[0]); +// printf("mean_local[0] = %f\n", mean_local[0]); // printf("mean_local[10] = %f\n", mean_local[0]); //#Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among @@ -67,7 +68,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ MPI_Allreduce(&mean_local[k], &mean_[k], 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); mean[k] = mean_[k] * n_horizontal_i; } - printf("mean[0] = %f\n", mean[0]); +// printf("mean[0] = %f\n", mean[0]); // printf("mean[10] = %f\n", mean[0]); free(mean_local); @@ -94,8 +95,8 @@ void horizontal_mean_return(struct DimStruct *dims, double* restrict values, dou // */ // const ssize_t gw = dims->gw; - printf("values[gw] = %f\n", values[gw]); - printf("before: mean[gw] = %f\n", mean[gw]); +// printf("values[gw] = %f\n", values[gw]); +// printf("before: mean[gw] = %f\n", mean[gw]); double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -125,9 +126,9 @@ void horizontal_mean_return(struct DimStruct *dims, double* restrict values, dou } } } - printf("nx*ny = %f\n", 1/n_horizontal_i); - printf("mean_local[gw] = %f\n", mean_local[gw]); - printf("mean_local[10] = %f\n", mean_local[10]); +// printf("nx*ny = %f\n", 1/n_horizontal_i); +// printf("mean_local[gw] = %f\n", mean_local[gw]); +// printf("mean_local[10] = %f\n", mean_local[10]); // //#Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among // //#processes with the the same vertical rank @@ -137,8 +138,8 @@ void horizontal_mean_return(struct DimStruct *dims, double* restrict values, dou MPI_Allreduce(&mean_local[k], &mean_[k], 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); mean[k] = mean_[k] * n_horizontal_i; } - printf("mean[gw] = %f\n", mean[gw]); - printf("mean[10] = %f\n", mean[10]); +// printf("mean[gw] = %f\n", mean[gw]); +// printf("mean[10] = %f\n", mean[10]); return; } From 4a0b9b94b9be739853e19803ec2d00c362c56a04 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 17 Mar 2016 15:44:09 +0100 Subject: [PATCH 045/511] debugging QL schemes --- Csrc/momentum_advection.h | 8 +++++++- Csrc/momentum_advection_central_ql.h | 3 ++- Csrc/scalar_advection.h | 6 +++++- MomentumAdvection.pyx | 1 + Simulation3d.pyx | 2 +- 5 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index c3ade36c..d84c4fa3 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -18,9 +18,12 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting, int scheme){ + switch(scheme){ - printf("scheme !!!!!!!!!!"); case 2: + if( d_advected==1 && d_advecting==1 ){ + printf("2nd order full Momentum Transport \n"); + } second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; @@ -109,6 +112,9 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho case 102: + if( d_advected==1 && d_advecting==1 ){ + printf("2nd order QL Momentum Transport \n"); + } second_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 46651405..fe47db9a 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -153,7 +153,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Thu, 17 Mar 2016 15:51:13 +0100 Subject: [PATCH 046/511] debugging QL schemes --- Csrc/momentum_advection_central_ql.h | 4 ++-- Csrc/scalar_advection.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index fe47db9a..150f9b89 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -153,8 +153,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Thu, 17 Mar 2016 16:59:38 +0100 Subject: [PATCH 047/511] free allocated memory in QL schemes --- Csrc/momentum_advection_central_ql.h | 4 ++-- Csrc/scalar_advection.h | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 150f9b89..67b50207 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -166,13 +166,13 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re tendency, d_advected, d_advecting); //Free dynamically allocated array - /* + free(eddy_flux); free(mean_eddy_flux); free(vel_int_ing); free(vel_int_ed); free(vel_mean_ed); - free(vel_mean_ing);*/ + free(vel_mean_ing); free(flux); return; diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index 0f7f814e..ba69899a 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -802,6 +802,12 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re } + free(*eddy_flux); + free(*mean_eddy_flux); + free(*vel_mean); + free(*phi_int); + free(*phi_mean_int); + return; } From 9f22717387c491758d312c7cf709cc0e05843cf5 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 17 Mar 2016 17:07:04 +0100 Subject: [PATCH 048/511] debugging --- Csrc/scalar_advection.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index ba69899a..f389ad36 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -802,11 +802,11 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re } - free(*eddy_flux); - free(*mean_eddy_flux); - free(*vel_mean); - free(*phi_int); - free(*phi_mean_int); + free(eddy_flux); + free(mean_eddy_flux); + free(vel_mean); + free(phi_int); + free(phi_mean_int); return; } From af5574280d90fe950bf1957c3e8408809e88dc7f Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 17 Mar 2016 17:52:55 +0100 Subject: [PATCH 049/511] debugging --- Csrc/momentum_advection_central_ql.h | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 67b50207..67836f11 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -70,7 +70,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re if (d_advected != d_advecting){ vel_int_ed[ijk] = interp_2(vel_advected[ijk],vel_advected[ijk+sp1_ed]);} else{ - vel_int_ed[ijk] = vel_int_ing[ijk];} + vel_int_ed[ijk] = interp_2(vel_advected[ijk],vel_advected[ijk+sp1_ed]);} +// vel_int_ed[ijk] = vel_int_ing[ijk];} } } } @@ -90,7 +91,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); } else { - vel_mean_ed = vel_mean_ing; + horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); +// vel_mean_ed = vel_mean_ing ; } @@ -142,6 +144,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re } // (4) compute mean eddy flux + //printf("QL mom adv: call hor mean"); horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); //mean_eddy_flux = Pa.HorizontalMean(Gr, &eddy_flux); @@ -172,7 +175,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re free(vel_int_ing); free(vel_int_ed); free(vel_mean_ed); - free(vel_mean_ing); + free(vel_mean_ing); // gives error message free(flux); return; From e71f5a733ab1e745170b7e9570881ebebf60b59d Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 18 Mar 2016 18:23:20 +0100 Subject: [PATCH 050/511] changing default advection scheme for DCBL Soares to 2nd --- Csrc/cc_statistics.h | 3 ++- Csrc/momentum_advection_central.h | 18 ++++++++++++++++++ Csrc/momentum_advection_central_ql.h | 3 ++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index 0177f611..0e0a1a27 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -79,6 +79,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values){ void horizontal_mean_return(struct DimStruct *dims, double* restrict values, double* restrict mean){ +// printf("calling horizontal mean \n"); // /* // Compute the horizontal mean of the array pointed to by values. // values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] @@ -140,7 +141,7 @@ void horizontal_mean_return(struct DimStruct *dims, double* restrict values, dou } // printf("mean[gw] = %f\n", mean[gw]); // printf("mean[10] = %f\n", mean[10]); - +// printf("finished horizontal mean \n"); return; } /* diff --git a/Csrc/momentum_advection_central.h b/Csrc/momentum_advection_central.h index a6cb64a5..b98f631d 100644 --- a/Csrc/momentum_advection_central.h +++ b/Csrc/momentum_advection_central.h @@ -2,6 +2,8 @@ #include "grid.h" #include "advection_interpolation.h" #include "flux_divergence.h" + +#include "cc_statistics.h" #include void second_order_m(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, @@ -9,8 +11,12 @@ void second_order_m(struct DimStruct *dims, double* restrict rho0, double* restr double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + printf("2nd order full Momentum Transport \n"); + // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -72,6 +78,18 @@ void second_order_m(struct DimStruct *dims, double* restrict rho0, double* restr //Free dynamically allocated array free(flux); + + // Average velocity fields (Test of cc_statistics.h) + horizontal_mean_return(dims, &vel_advecting[0], &vel_mean_ing[0]); + if (d_advected != d_advecting){ + horizontal_mean_return(dims, &vel_advected[0], &vel_mean_ed[0]); + } + else { + vel_mean_ed = vel_mean_ing; + } +// free(vel_mean_ing); // gives a bug + free(vel_mean_ed); + return; } diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 67836f11..f8a6ad71 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -29,7 +29,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - printf("2nd order QL Momentum Transport \n"); + if (d_advected==1 && d_advecting==1){ + printf("2nd order QL Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) From 41670c7b95bc9c98dd3ebe121d24482c13fb5354 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 18 Mar 2016 18:26:20 +0100 Subject: [PATCH 051/511] print statements --- Csrc/momentum_advection_central.h | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/Csrc/momentum_advection_central.h b/Csrc/momentum_advection_central.h index b98f631d..aa9e5d56 100644 --- a/Csrc/momentum_advection_central.h +++ b/Csrc/momentum_advection_central.h @@ -11,12 +11,13 @@ void second_order_m(struct DimStruct *dims, double* restrict rho0, double* restr double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - printf("2nd order full Momentum Transport \n"); + if (d_advected==1 && d_advecting==1){ + printf("2nd order full Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -79,16 +80,16 @@ void second_order_m(struct DimStruct *dims, double* restrict rho0, double* restr //Free dynamically allocated array free(flux); - // Average velocity fields (Test of cc_statistics.h) - horizontal_mean_return(dims, &vel_advecting[0], &vel_mean_ing[0]); - if (d_advected != d_advecting){ - horizontal_mean_return(dims, &vel_advected[0], &vel_mean_ed[0]); - } - else { - vel_mean_ed = vel_mean_ing; - } +// // Average velocity fields (Test of cc_statistics.h) +// horizontal_mean_return(dims, &vel_advecting[0], &vel_mean_ing[0]); +// if (d_advected != d_advecting){ +// horizontal_mean_return(dims, &vel_advected[0], &vel_mean_ed[0]); +// } +// else { +// vel_mean_ed = vel_mean_ing; +// } // free(vel_mean_ing); // gives a bug - free(vel_mean_ed); +// free(vel_mean_ed); return; } From f97f8fc67ddfa4238f0cfea74b844c3f5368dcd6 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 18 Mar 2016 18:27:20 +0100 Subject: [PATCH 052/511] print statements --- Csrc/momentum_advection_central_ql.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 67836f11..9f1b0ebc 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -29,7 +29,8 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - printf("2nd order QL Momentum Transport \n"); + //if(d_advected==1 && d_advecting==1){ + // printf("2nd order QL Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) From 673e1f045354bf254dd46dd101846578b83b1d6c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 18 Mar 2016 19:42:24 +0100 Subject: [PATCH 053/511] adding 4th order ql schemes (mom finished, scal started) --- Csrc/momentum_advection_central_ql.h | 142 ++++++++++++++++++++++++++- Csrc/scalar_advection.h | 119 ++++++++++++++++++++++ 2 files changed, 260 insertions(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index f8a6ad71..658a070d 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -7,6 +7,7 @@ #include // !!!!!!!! Need to Fix Flux computation (subtracting eddy flux) !!!!! +// !!!!!!!! need to be able to output eddy_flux??? // QUESTIONS / NOTES: // need to be able to output eddy_flux??? @@ -55,7 +56,6 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re const ssize_t kmax = dims->nlg[2]-1; const ssize_t stencil[3] = {istride,jstride,1}; // array, containing 3 elements - // ??? ed vs ing const ssize_t sp1_ed = stencil[d_advecting]; const ssize_t sp1_ing = stencil[d_advected]; // d_advecting, d_advected: given as parameters to this function @@ -181,3 +181,143 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re free(flux); return; } + + + + + +void fourth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + + if (d_advected==1 && d_advecting==1){ + printf("2nd order QL Momentum Transport \n");} + + // Dynamically allocate flux array + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_int_ed = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + // double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; // istride = "jump for getting to next i index" + // ssize_t: predefined type of signed integer (= signed integral type) (eqvuivalent to Py_ssize_t in python, cython) + const ssize_t jstride = dims->nlg[2]; // jstride = "jump for getting to next j index" + + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; // array, containing 3 elements + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2 * sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; // d_advecting, d_advected: given as parameters to this function + const ssize_t sp2_ing = 2 * sp1_ing; + const ssize_t sm1_ing = -sp1_ing; + + + + // (1) interpolate velocity fields + for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sm1 = -sp1 ; + + + // (1) interpolation + // (a) velocity fields --> not necessary, since only scalars interpolated + // (b) scalar field + for(ssize_t i=imin;i Date: Mon, 21 Mar 2016 11:27:28 +0100 Subject: [PATCH 054/511] finishing 4th order ql scalar advection scheme --- Csrc/momentum_advection.h | 12 +++++++++--- Csrc/momentum_advection_central_ql.h | 2 +- Csrc/scalar_advection.h | 22 ++++++++++++---------- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index d84c4fa3..1384bea3 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -112,13 +112,19 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho case 102: - if( d_advected==1 && d_advecting==1 ){ - printf("2nd order QL Momentum Transport \n"); - } +// if( d_advected==1 && d_advecting==1 ){ +// printf("2nd order QL Momentum Transport \n"); +// } second_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + case 104: +// if (d_advected==1 && d_advecting==1){ +// printf("4th order QL Momentum Transport \n");} + fourth_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; default: diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 658a070d..eb36eea7 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -192,7 +192,7 @@ void fourth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if (d_advected==1 && d_advecting==1){ - printf("2nd order QL Momentum Transport \n");} + printf("4th order QL Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index 4115452d..cd9f907e 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -820,7 +820,7 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - printf("2nd order QL Scalar Transport \n"); + printf("4th order QL Scalar Transport \n"); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -854,18 +854,18 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Mon, 21 Mar 2016 12:02:01 +0100 Subject: [PATCH 055/511] refactoring --- Csrc/momentum_advection.h | 9 +-- Csrc/scalar_advection_ori.h | 141 ++++++++++++++++++++++++++++++++++++ SGS.pyx | 2 +- 3 files changed, 146 insertions(+), 6 deletions(-) create mode 100644 Csrc/scalar_advection_ori.h diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index 1384bea3..d3703500 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -21,9 +21,9 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho switch(scheme){ case 2: - if( d_advected==1 && d_advecting==1 ){ - printf("2nd order full Momentum Transport \n"); - } +// if( d_advected==1 && d_advecting==1 ){ +// printf("2nd order full Momentum Transport \n"); +// } second_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; @@ -44,7 +44,6 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho tendency, d_advected, d_advecting); break; case 7: - //printf("hihihihi"); weno_seventh_order_m(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; @@ -110,7 +109,7 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho break; - + // the following schemes are quasi-linear modifications of the cases 2 and 4 case 102: // if( d_advected==1 && d_advecting==1 ){ // printf("2nd order QL Momentum Transport \n"); diff --git a/Csrc/scalar_advection_ori.h b/Csrc/scalar_advection_ori.h new file mode 100644 index 00000000..572d4260 --- /dev/null +++ b/Csrc/scalar_advection_ori.h @@ -0,0 +1,141 @@ +#pragma once +#include "grid.h" +#include "advection_interpolation.h" + +void second_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + + if(d==2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + if(d==2){ + for(ssize_t i=imin;i Date: Thu, 24 Mar 2016 11:01:37 +0100 Subject: [PATCH 056/511] print statements in const viscosity cond --- Csrc/sgs.h | 6 +++--- SGS.pyx | 7 +++---- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Csrc/sgs.h b/Csrc/sgs.h index 8738e9ac..4e1c8b18 100644 --- a/Csrc/sgs.h +++ b/Csrc/sgs.h @@ -192,17 +192,17 @@ void tke_surface(const struct DimStruct *dims, double* e, double* lmo, double* u return; } +// added by Bettina Meyer (copied and modified from smagorinsky_update()) // Turning viscosity off for stably stratified layers +// stability criterion: gradient Richardson number > 1 + double buoyancy_adjust(const struct DimStruct *dims, double* restrict visc, double* restrict diff, double* restrict buoy_freq, double* restrict strain_rate_mag, double prt){ double fb = 1; for (ssize_t i=0; inpg; i++){ -// visc[i] = cs*cs*delta*delta*strain_rate_mag[i]; if(buoy_freq[i] > 0.0){ fb = sqrt(fmax(1.0 - buoy_freq[i]/(prt*strain_rate_mag[i]*strain_rate_mag[i]),0.0)); -// visc[i] = visc[i] * fb; } -// diff[i] = visc[i]/prt; } return fb; } \ No newline at end of file diff --git a/SGS.pyx b/SGS.pyx index bea3aedf..e26acf0c 100644 --- a/SGS.pyx +++ b/SGS.pyx @@ -140,11 +140,10 @@ cdef class UniformViscosity_cond: cdef double fb = buoyancy_adjust(&Gr.dims,&DV.values[visc_shift],&DV.values[diff_shift],&DV.values[bf_shift], &Ke.strain_rate_mag[0],self.prt) + if fb == 0: + Pa.root_print('Ri > 1: setting Viscosity to zero') - cdef: - #Py_ssize_t diff_shift = DV.get_varshift(Gr,'diffusivity') - #Py_ssize_t visc_shift = DV.get_varshift(Gr,'viscosity') - Py_ssize_t i + cdef Py_ssize_t i with nogil: if not self.is_init: From b7c54db7b24fdb9ef4718d09974b7e56f6ebe669 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 24 Mar 2016 11:06:27 +0100 Subject: [PATCH 057/511] debugging in SGS.pxd --- SGS.pxd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SGS.pxd b/SGS.pxd index 00804f7c..bed93587 100644 --- a/SGS.pxd +++ b/SGS.pxd @@ -33,10 +33,10 @@ cdef class UniformViscosity: cdef class UniformViscosity_cond: cdef: - double const_viscosity double const_diffusivity + double const_viscosity bint is_init - double fb + double prt cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, From cf7f0f79501e3e6f2517167279d09347a75f67ac Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 29 Mar 2016 10:50:11 +0200 Subject: [PATCH 058/511] debugging in ql momentum advection schemes --- Csrc/momentum_advection_central_ql.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index eb36eea7..55a8797f 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -121,9 +121,9 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re for(ssize_t k=kmin;k Date: Tue, 29 Mar 2016 13:52:19 +0200 Subject: [PATCH 059/511] adding double surface qt flux option --- Surface.pyx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Surface.pyx b/Surface.pyx index 8faed4eb..a6640344 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -197,7 +197,8 @@ cdef class SurfaceSullivanPatton: cdef class SurfaceBomex: def __init__(self): self.theta_flux = 8.0e-3 # K m/s - self.qt_flux = 5.2e-5 # m/s + self.qt_flux = 5.2e-5 # m/s (original: 5.2e-5) + #self.qt_flux = 2*5.2e-5 # m/s (original: 5.2e-5) self.ustar_ = 0.28 #m/s self.theta_surface = 299.1 #K self.qt_surface = 22.45e-3 # kg/kg From 076c83904b5cebfbc0cad096d46c84883838c6f7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 29 Mar 2016 15:07:07 +0200 Subject: [PATCH 060/511] print statements scalar advection --- Csrc/scalar_advection.h | 6 ++---- Simulation3d.pyx | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index cd9f907e..e462cd93 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -690,9 +690,7 @@ void weno_eleventh_order_a(const struct DimStruct *dims, double* restrict rho0, //void second_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ -// if( d_advected==1 && d_advecting==1 ){ -// printf("2nd order QL Scalar Transport \n");} - printf("2nd order QL Scalar Transport \n"); + if (d==1){printf("2nd order QL Scalar Transport \n");} //compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], // &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) @@ -820,7 +818,7 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - printf("4th order QL Scalar Transport \n"); + if (d==1){printf("4th order QL Scalar Transport \n");} double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); diff --git a/Simulation3d.pyx b/Simulation3d.pyx index 2d28d8dc..75252a29 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -171,7 +171,7 @@ class Simulation3d: self.TS.adjust_timestep(self.Gr, self.PV, self.DV,self.Pa) self.io() #PV_.debug(self.Gr,self.Ref,self.StatsIO,self.Pa) - self.Pa.root_print('rk_step: '+str(self.TS.rk_step)+' (total steps: '+str(self.TS.n_rk_steps)+')') + # self.Pa.root_print('rk_step: '+str(self.TS.rk_step)+' (total steps: '+str(self.TS.n_rk_steps)+')') time2 = time.time() self.Pa.root_print('T = ' + str(self.TS.t) + ' dt = ' + str(self.TS.dt) + ' cfl_max = ' + str(self.TS.cfl_max) + ' walltime = ' + str(time2 - time1)) From 1a97bd6e826927847a75289a35e9ca89c3e904fb Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 29 Mar 2016 15:43:53 +0200 Subject: [PATCH 061/511] debugging SGS.ConstViscosity_cond (buoyancy adjustment wasn't done locally for every grid point) --- Csrc/sgs.h | 17 ++++++++++++++--- SGS.pyx | 38 +++++++++++++++++++++++--------------- 2 files changed, 37 insertions(+), 18 deletions(-) diff --git a/Csrc/sgs.h b/Csrc/sgs.h index 4e1c8b18..11dea237 100644 --- a/Csrc/sgs.h +++ b/Csrc/sgs.h @@ -195,14 +195,25 @@ void tke_surface(const struct DimStruct *dims, double* e, double* lmo, double* u // added by Bettina Meyer (copied and modified from smagorinsky_update()) // Turning viscosity off for stably stratified layers // stability criterion: gradient Richardson number > 1 - double buoyancy_adjust(const struct DimStruct *dims, double* restrict visc, double* restrict diff, double* restrict buoy_freq, double* restrict strain_rate_mag, double prt){ double fb = 1; + if(buoy_freq[0] > 0.0){ + fb = sqrt(fmax(1.0 - buoy_freq[0]/(prt*strain_rate_mag[0]*strain_rate_mag[0]),0.0)); + } + return fb; +} + +void const_viscosity_update(const struct DimStruct *dims, double* restrict visc, double* restrict diff, + double* restrict buoy_freq, double* restrict strain_rate_mag, double const_visc, double prt){ + for (ssize_t i=0; inpg; i++){ + visc[i] = const_visc; if(buoy_freq[i] > 0.0){ - fb = sqrt(fmax(1.0 - buoy_freq[i]/(prt*strain_rate_mag[i]*strain_rate_mag[i]),0.0)); + double fb = sqrt(fmax(1.0 - buoy_freq[i]/(prt*strain_rate_mag[i]*strain_rate_mag[i]),0.0)); + visc[i] = visc[i] * fb; } + diff[i] = visc[i]/prt; } - return fb; + return; } \ No newline at end of file diff --git a/SGS.pyx b/SGS.pyx index e26acf0c..6cbcd035 100644 --- a/SGS.pyx +++ b/SGS.pyx @@ -31,6 +31,8 @@ cdef extern from "sgs.h": double* strain_rate_mag, double cs, double prt) double buoyancy_adjust(Grid.DimStruct* dims, double* visc, double* diff, double* buoy_freq, double* strain_rate_mag, double prt) + void const_viscosity_update(Grid.DimStruct* dims, double* visc, double* diff, double* buoy_freq, + double* strain_rate_mag, double const_visc, double prt) @@ -63,6 +65,8 @@ cdef class SGS: self.scheme.stats_io(Gr,DV,PV,Ke,NS,Pa) return + + cdef class UniformViscosity: def __init__(self,namelist): try: @@ -121,7 +125,6 @@ cdef class UniformViscosity_cond: except: self.const_viscosity = 0.0 - self.is_init = False self.prt = 1.0/3.0 return @@ -136,21 +139,26 @@ cdef class UniformViscosity_cond: cdef: Py_ssize_t diff_shift = DV.get_varshift(Gr,'diffusivity') Py_ssize_t visc_shift = DV.get_varshift(Gr,'viscosity') - Py_ssize_t bf_shift =DV.get_varshift(Gr, 'buoyancy_frequency') - - cdef double fb = buoyancy_adjust(&Gr.dims,&DV.values[visc_shift],&DV.values[diff_shift],&DV.values[bf_shift], - &Ke.strain_rate_mag[0],self.prt) - if fb == 0: - Pa.root_print('Ri > 1: setting Viscosity to zero') + Py_ssize_t bf_shift = DV.get_varshift(Gr, 'buoyancy_frequency') + + # Alternative to loop below: + const_viscosity_update(&Gr.dims,&DV.values[visc_shift],&DV.values[diff_shift],&DV.values[bf_shift], + &Ke.strain_rate_mag[0],self.const_viscosity,self.prt) + # cdef double fb = 0 + # cdef Py_ssize_t i + # printed = False + # with nogil: + # for i in xrange(Gr.dims.npg): + # with gil: + # fb = buoyancy_adjust(&Gr.dims,&DV.values[visc_shift+i],&DV.values[diff_shift+i],&DV.values[bf_shift+i], + # &Ke.strain_rate_mag[0],self.prt) + # if printed == False and fb == 0: + # Pa.root_print('Ri > 1: setting Viscosity to zero, i = ') + # Pa.root_print(i) + # printed = True + # DV.values[diff_shift + i] = self.const_diffusivity * fb + # DV.values[visc_shift + i] = self.const_viscosity * fb - cdef Py_ssize_t i - - with nogil: - if not self.is_init: - for i in xrange(Gr.dims.npg): - DV.values[diff_shift + i] = self.const_diffusivity * fb - DV.values[visc_shift + i] = self.const_viscosity * fb - self.is_init = True return From 51e643b1c08edfdf543607ec10e92a2e8715e379 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 31 Mar 2016 17:09:53 +0200 Subject: [PATCH 062/511] adding smag const to namelists --- Csrc/sgs.h | 17 +++++++++-------- generate_namelist.py | 10 ++++++++++ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/Csrc/sgs.h b/Csrc/sgs.h index 11dea237..06827a85 100644 --- a/Csrc/sgs.h +++ b/Csrc/sgs.h @@ -195,14 +195,15 @@ void tke_surface(const struct DimStruct *dims, double* e, double* lmo, double* u // added by Bettina Meyer (copied and modified from smagorinsky_update()) // Turning viscosity off for stably stratified layers // stability criterion: gradient Richardson number > 1 -double buoyancy_adjust(const struct DimStruct *dims, double* restrict visc, double* restrict diff, -double* restrict buoy_freq, double* restrict strain_rate_mag, double prt){ - double fb = 1; - if(buoy_freq[0] > 0.0){ - fb = sqrt(fmax(1.0 - buoy_freq[0]/(prt*strain_rate_mag[0]*strain_rate_mag[0]),0.0)); - } - return fb; -} + +//double buoyancy_adjust(const struct DimStruct *dims, double* restrict visc, double* restrict diff, +//double* restrict buoy_freq, double* restrict strain_rate_mag, double prt){ +// double fb = 1; +// if(buoy_freq[0] > 0.0){ +// fb = sqrt(fmax(1.0 - buoy_freq[0]/(prt*strain_rate_mag[0]*strain_rate_mag[0]),0.0)); +// } +// return fb; +//} void const_viscosity_update(const struct DimStruct *dims, double* restrict visc, double* restrict diff, double* restrict buoy_freq, double* restrict strain_rate_mag, double const_visc, double prt){ diff --git a/generate_namelist.py b/generate_namelist.py index ad036316..06359dba 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -314,6 +314,11 @@ def Bomex(): namelist['sgs'] = {} namelist['sgs']['scheme'] = 'Smagorinsky' + namelist['sgs']['Smagorinsky'] = {} + namelist['sgs']['Smagorinsky']['cs'] = 0.17 + namelist['sgs']['UniformViscosity'] = {} + namelist['sgs']['UniformViscosity']['viscosity'] = 1.2 + namelist['sgs']['UniformViscosity']['diffusivity'] = 3.6 namelist['diffusion'] = {} namelist['diffusion']['qt_entropy_source'] = False @@ -846,6 +851,11 @@ def DCBLSoares(): namelist['sgs'] = {} namelist['sgs']['scheme'] = 'Smagorinsky' + namelist['sgs']['Smagorinsky'] = {} + namelist['sgs']['Smagorinsky']['cs'] = 0.17 + namelist['sgs']['UniformViscosity'] = {} + namelist['sgs']['UniformViscosity']['viscosity'] = 1.2 + namelist['sgs']['UniformViscosity']['diffusivity'] = 3.6 namelist['diffusion'] = {} namelist['diffusion']['qt_entropy_source'] = False # seems to be set to False for all cases??? From 3bf93a1ea69f515ccedfc8ec1613734035693267 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 1 Apr 2016 09:39:35 +0200 Subject: [PATCH 063/511] adding visualization frequency to Namelist --- generate_namelist.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/generate_namelist.py b/generate_namelist.py index 06359dba..dc83bc91 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -359,6 +359,9 @@ def Bomex(): namelist['conditional_stats']['frequency'] = 600.0 namelist['conditional_stats']['stats_dir'] = 'cond_stats' + namelist['visualization'] = {} + namelist['visualization']['frequency'] = 1800.0 + namelist['meta'] = {} namelist['meta']['simname'] = 'Bomex' namelist['meta']['casename'] = 'Bomex' From c5cba46877cc749bdf8c2afae117fdb84b2b5a61 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 1 Apr 2016 13:11:37 +0200 Subject: [PATCH 064/511] removing print statment in MA, SA --- Csrc/momentum_advection_central_ql.h | 2 +- Csrc/scalar_advection.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 55a8797f..5a4f7af4 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -31,7 +31,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if (d_advected==1 && d_advecting==1){ - printf("2nd order QL Momentum Transport \n");} +// printf("2nd order QL Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // malloc allocates size of uninitialized storage; in this case allocates memory for (nlg[0]+nlg[1]+nlg[2])*sizeof(double)) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index e462cd93..e94cc384 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -690,7 +690,7 @@ void weno_eleventh_order_a(const struct DimStruct *dims, double* restrict rho0, //void second_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - if (d==1){printf("2nd order QL Scalar Transport \n");} +// if (d==1){printf("2nd order QL Scalar Transport \n");} //compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], // &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) From 2e84ba54279df09ee87d24707ce668bf74630a89 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 4 Apr 2016 09:19:10 +0200 Subject: [PATCH 065/511] debugging print statement --- Csrc/momentum_advection_central_ql.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 5a4f7af4..d20ab3c4 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -30,7 +30,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - if (d_advected==1 && d_advecting==1){ +// if (d_advected==1 && d_advecting==1){ // printf("2nd order QL Momentum Transport \n");} // Dynamically allocate flux array @@ -145,7 +145,6 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re } // (4) compute mean eddy flux - //printf("QL mom adv: call hor mean"); horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); //mean_eddy_flux = Pa.HorizontalMean(Gr, &eddy_flux); From 71b26a4b54e58a11582bc4680834186164990be9 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 7 Apr 2016 10:05:43 +0200 Subject: [PATCH 066/511] adding TKE SGS coefficients to namelist --- SGS.pyx | 5 ++++- generate_namelist.py | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/SGS.pyx b/SGS.pyx index 6cbcd035..97d82cc5 100644 --- a/SGS.pyx +++ b/SGS.pyx @@ -229,10 +229,13 @@ cdef class Smagorinsky: cdef class TKE: def __init__(self,namelist): + # A Description of the Advanced Research WRF Version 3 (NCAR TECHNICAL NOTE, June 2008) + # ck: K = ck*l*sqrt(e) + # cn: l = cn*sqrt(e)/N (isotropic mixing) try: self.ck = namelist['sgs']['TKE']['ck'] except: - self.ck = 0.1 + self.ck = 0.1 #(0.15 Date: Mon, 11 Apr 2016 16:01:51 +0200 Subject: [PATCH 067/511] creating new file scalar_advection_ql.h; moving QL scalar advection modules to it --- Csrc/momentum_advection.h | 10 + Csrc/momentum_advection_weno_ql.h | 274 ++++++++++++++++++++ Csrc/scalar_advection.h | 246 +----------------- Csrc/scalar_advection_ql.h | 406 ++++++++++++++++++++++++++++++ 4 files changed, 698 insertions(+), 238 deletions(-) create mode 100644 Csrc/momentum_advection_weno_ql.h create mode 100644 Csrc/scalar_advection_ql.h diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index d3703500..e9a5625b 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -10,6 +10,7 @@ #include "flux_divergence.h" #include "momentum_advection_central_ql.h" +#include "momentum_advection_weno_ql.h" #include @@ -125,6 +126,15 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho tendency, d_advected, d_advecting); break; + case 105: + weno_fifth_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; + + case 205: + weno_fifth_order_m_decomp(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; default: // Default to second order scheme. diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h new file mode 100644 index 00000000..dd0a711f --- /dev/null +++ b/Csrc/momentum_advection_weno_ql.h @@ -0,0 +1,274 @@ +#pragma once +#include "grid.h" +#include "advection_interpolation.h" +#include "flux_divergence.h" +#include + + +void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + + // Dynamically allocate flux array + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2*sp1_ed ; + const ssize_t sp3_ed = 3*sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + const ssize_t sm2_ed = -2*sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2*sp1_ing ; + const ssize_t sm1_ing = -sp1_ing ; + + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2*sp1_ed ; + const ssize_t sp3_ed = 3*sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + const ssize_t sm2_ed = -2*sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2*sp1_ing ; + const ssize_t sm1_ing = -sp1_ing ; + + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;i velocity = pointer to first element of array of advecting velocity (u_i) -// --> scalar = pointer to first element of array of scalar that is advected (phi_j) -// --> flux = pointer to first element of array of flux_ij = u_i*phi_j - - // right dimensions ???? (compare to flux in ScalarAdvection) - double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - - - // (1) interpolation - // (a) velocity fields --> not necessary, since only scalars interpolated - // (b) scalar field - for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 1; - const ssize_t jmin = 1; - const ssize_t kmin = 1; - - const ssize_t imax = dims->nlg[0]-2; - const ssize_t jmax = dims->nlg[1]-2; - const ssize_t kmax = dims->nlg[2]-2; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - const ssize_t sp2 = 2 * sp1; - const ssize_t sm1 = -sp1 ; - - - // (1) interpolation - // (a) velocity fields --> not necessary, since only scalars interpolated - // (b) scalar field - for(ssize_t i=imin;i velocity = pointer to first element of array of advecting velocity (u_i) +// --> scalar = pointer to first element of array of scalar that is advected (phi_j) +// --> flux = pointer to first element of array of flux_ij = u_i*phi_j + + // right dimensions ???? (compare to flux in ScalarAdvection) + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; + + const ssize_t imax = dims->nlg[0]-1; + const ssize_t jmax = dims->nlg[1]-1; + const ssize_t kmax = dims->nlg[2]-1; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + + + // (1) interpolation + // (a) velocity fields --> not necessary, since only scalars interpolated + // (b) scalar field + for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sm1 = -sp1 ; + + + // (1) interpolation + // (a) velocity fields --> not necessary, since only scalars interpolated + // (b) scalar field + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + if(d==2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + if(d==2){ + for(ssize_t i=imin;i Date: Mon, 11 Apr 2016 16:57:21 +0200 Subject: [PATCH 068/511] adding decomposed flux computation in Scalar WENO5 (scalar_advection_ql.h); refactoring cc_statistics --- Csrc/cc_statistics.h | 141 ++++++++++++------------- Csrc/momentum_advection_central.h | 4 +- Csrc/momentum_advection_central_ql.h | 16 ++- Csrc/scalar_advection_ql.h | 152 ++++++++++++++++++++++----- 4 files changed, 202 insertions(+), 111 deletions(-) diff --git a/Csrc/cc_statistics.h b/Csrc/cc_statistics.h index 0e0a1a27..af22e169 100644 --- a/Csrc/cc_statistics.h +++ b/Csrc/cc_statistics.h @@ -3,82 +3,8 @@ #include #include -// how to return a double array??? -// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ -void horizontal_mean(struct DimStruct *dims, double* restrict values){ - /* - Compute the horizontal mean of the array pointed to by values. - values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] - * Gr.dims.nlg[1]. - - :param Gr: Grid class - :param values1: pointer to array of type double containing first value in product - :return: memoryview type double with dimension Gr.dims.nlg[2] - ''' - # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts - # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) - # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points - # i = 0,1,2 - */ - -// printf("values[0] = %f\n", values[0]); - -// double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array -// double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); -// double *mean = (double *)malloc(sizeof(double) * dims->n[2]); - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - //int i,j,k,ijk; - int ijk; - const ssize_t imin = dims->gw; - const ssize_t jmin = dims->gw; - const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0] - dims->gw; - const ssize_t jmax = dims->nlg[1] - dims->gw; - const ssize_t kmax = dims->nlg[2]; - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - //int ishift, jshift; - const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); - - for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); -// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// + const ssize_t gw = dims->gw; +// printf("values[gw] = %f\n", values[gw]); +// printf("before: mean[gw] = %f\n", mean[gw]); + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + for(ssize_t k=kmin; kgw; // int d_ad = d_advected; // int d_ing = d_advecting; // printf("flux: %d, %d; vel_int[gw+2] = %f\n", d_ad, d_ing, values[0]); - horizontal_mean_return(dims, &vel_int_ing[0], &vel_mean_ing[0]); + horizontal_mean(dims, &vel_int_ing[0], &vel_mean_ing[0]); // printf("values[gw] = %f\n", values[0]); if (d_advected != d_advecting){ -// horizontal_mean(dims, &vel_int_ed[0]); - horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); + horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); } else { - horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); + horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); // vel_mean_ed = vel_mean_ing ; } @@ -145,7 +143,7 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re } // (4) compute mean eddy flux - horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); //mean_eddy_flux = Pa.HorizontalMean(Gr, &eddy_flux); @@ -242,8 +240,8 @@ void fourth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re // (2) average interpolated velocity fields //vel_mean_ing = Pa.HorizontalMean(Gr, &vel_int_advecting); - horizontal_mean_return(dims, &vel_int_ing[0], &vel_mean_ing[0]); - horizontal_mean_return(dims, &vel_int_ed[0], &vel_mean_ed[0]); + horizontal_mean(dims, &vel_int_ing[0], &vel_mean_ing[0]); + horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); // (3) compute eddy flux: (vel - mean_vel)**2 AND compute total flux @@ -289,7 +287,7 @@ void fourth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re // (4) compute mean eddy flux - horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); // (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index a0371910..2cc9ba30 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -68,8 +68,8 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re vel_mean[k] = 0; mean_eddy_flux[k] = 0; } - horizontal_mean_return(dims, &phi_int[0], &phi_mean_int[0]); - horizontal_mean_return(dims, &velocity[0], &vel_mean[0]); + horizontal_mean(dims, &phi_int[0], &phi_mean_int[0]); + horizontal_mean(dims, &velocity[0], &vel_mean[0]); // (3) compute eddy flux: (vel - mean_vel)**2 AND compute total flux @@ -104,7 +104,7 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re // (4) compute mean eddy flux - horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); // (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux @@ -185,8 +185,8 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re // vel_mean[k] = 0; // mean_eddy_flux[k] = 0; // } - horizontal_mean_return(dims, &phi_int[0], &phi_mean_int[0]); - horizontal_mean_return(dims, &velocity[0], &vel_mean[0]); + horizontal_mean(dims, &phi_int[0], &phi_mean_int[0]); + horizontal_mean(dims, &velocity[0], &vel_mean[0]); // (3) compute eddy flux: (vel - mean_vel)**2 AND compute total flux @@ -221,7 +221,7 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re // (4) compute mean eddy flux - horizontal_mean_return(dims, &eddy_flux[0], &mean_eddy_flux[0]); + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); // (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux @@ -248,6 +248,9 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re + + + void weno_fifth_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ const ssize_t istride = dims->nlg[1] * dims->nlg[2]; @@ -325,8 +328,10 @@ void weno_fifth_order_a_ql(const struct DimStruct *dims, double* restrict rho0, return; } -void weno_fifth_order_a_decomp(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ + +void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ + printf("Scalar Advection: WENO 5 decomposition \n"); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -345,6 +350,44 @@ void weno_fifth_order_a_decomp(const struct DimStruct *dims, double* restrict rh const ssize_t sm1 = -sp1 ; const ssize_t sm2 = -2*sp1; + + + // (1) average velocity and scalar field + double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + + for(ssize_t k=kmin;knlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? +// double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + + double phip = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? + double phim = 0.0; if(d==2){ for(ssize_t i=imin;iphi' + phip = interp_weno5(phi_fluc[ijk + sm2], + phi_fluc[ijk + sm1], + phi_fluc[ijk], + phi_fluc[ijk + sp1], + phi_fluc[ijk + sp2]); + phim = interp_weno5(phi_fluc[ijk + sp3], + phi_fluc[ijk + sp2], + phi_fluc[ijk + sp1], + phi_fluc[ijk], + phi_fluc[ijk + sm1]); + // ????? different computation of mean eddy-flux + // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') + eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + + phip = interp_weno5(phi_mean[k + sm2], // ????????? correct for 1D profiles?? + phi_mean[k + sm1], + phi_mean[k], + phi_mean[k + sp1], + phi_mean[k + sp2]); + phim = interp_weno5(phi_mean[k + sp3], + phi_mean[k + sp2], + phi_mean[k + sp1], + phi_mean[k], + phi_mean[k + sm1]); + mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient + + flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; + /*//Upwind for positive velocity +// const double phip = interp_weno5(scalar[ijk + sm2], + phip = interp_weno5(scalar[ijk + sm2], + scalar[ijk + sm1], + scalar[ijk], + scalar[ijk + sp1], + scalar[ijk + sp2]); // Up wind for negative velocity - const double phim = interp_weno5(scalar[ijk + sp3], - scalar[ijk + sp2], - scalar[ijk + sp1], - scalar[ijk], - scalar[ijk + sm1]); - - flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; +// const double phim = interp_weno5(scalar[ijk + sp3], + phim = interp_weno5(scalar[ijk + sp3], + scalar[ijk + sp2], + scalar[ijk + sp1], + scalar[ijk], + scalar[ijk + sm1]); + + flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k];*/ } // End k loop } // End j loop } // End i loop @@ -379,14 +452,38 @@ void weno_fifth_order_a_decomp(const struct DimStruct *dims, double* restrict rh const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Tue, 12 Apr 2016 10:57:47 +0200 Subject: [PATCH 069/511] reducing memory in weno5_decomp --- Csrc/scalar_advection_ql.h | 51 ++++++++++++++++++++++++-------------- 1 file changed, 33 insertions(+), 18 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 2cc9ba30..d7b8dccd 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -380,12 +380,17 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // (3) Compute Fluxes - double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? +// double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? // double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double eddy_flux = 0.0; + double mix_flux_phiprime; + double mix_flux_phimean; + double mean_flux; + double phip = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? double phim = 0.0; if(d==2){ @@ -408,8 +413,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sm1]); // ????? different computation of mean eddy-flux // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') - eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; +// eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; +// mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; phip = interp_weno5(phi_mean[k + sm2], // ????????? correct for 1D profiles?? phi_mean[k + sm1], @@ -421,10 +428,13 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_mean[k + sp1], phi_mean[k], phi_mean[k + sm1]); - mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient +// mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; +// mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient + mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; - flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; + flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; /*//Upwind for positive velocity // const double phip = interp_weno5(scalar[ijk + sm2], phip = interp_weno5(scalar[ijk + sm2], @@ -464,17 +474,22 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sm1]); // ????? different computation of mean eddy-flux // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') - eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; +// eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; +// mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; + eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; + mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ????????? correct for 1D profiles?? phip = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); phim = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); - mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient +// mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; +// mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient + mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; + mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient - flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; + flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; @@ -497,10 +512,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // End i loop } // End else - free(mix_flux_phiprime); - free(mix_flux_phimean); - free(eddy_flux); - free(mean_flux); +// free(mix_flux_phiprime); +// free(mix_flux_phimean); +// free(eddy_flux); +// free(mean_flux); return; } From b2213373393578c595481d839c335663bc0b456b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 11:08:37 +0200 Subject: [PATCH 070/511] debugging memory error in weno5_decomp --- Csrc/momentum_advection_weno_ql.h | 2 + Csrc/scalar_advection_ql.h | 221 +++++++++++++++--------------- 2 files changed, 116 insertions(+), 107 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index dd0a711f..7ea8889e 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -9,6 +9,8 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double* restrict alpha0, double* restrict alpha0_half, double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + if (d_advected==1 && d_advecting==1){ + printf("WENO5 QL Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index d7b8dccd..616216c9 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -251,87 +251,12 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re -void weno_fifth_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - const ssize_t sp2 = 2 * sp1; - const ssize_t sp3 = 3 * sp1; - const ssize_t sm1 = -sp1 ; - const ssize_t sm2 = -2*sp1; - - if(d==2){ - for(ssize_t i=imin;inlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -351,7 +276,6 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t sm2 = -2*sp1; - // (1) average velocity and scalar field double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -380,16 +304,15 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // (3) Compute Fluxes -// double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? // double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); - - double eddy_flux = 0.0; - double mix_flux_phiprime; - double mix_flux_phimean; - double mean_flux; +// double eddy_flux; +// double mix_flux_phiprime; +// double mix_flux_phimean; +// double mean_flux; double phip = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? double phim = 0.0; @@ -413,10 +336,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sm1]); // ????? different computation of mean eddy-flux // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') -// eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; -// mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; - eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; +// eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; +// mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; phip = interp_weno5(phi_mean[k + sm2], // ????????? correct for 1D profiles?? phi_mean[k + sm1], @@ -428,13 +351,14 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_mean[k + sp1], phi_mean[k], phi_mean[k + sm1]); -// mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; -// mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient - mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient +// mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; +// mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + + flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; -// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; - flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; /*//Upwind for positive velocity // const double phip = interp_weno5(scalar[ijk + sm2], phip = interp_weno5(scalar[ijk + sm2], @@ -474,23 +398,22 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sm1]); // ????? different computation of mean eddy-flux // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') -// eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; -// mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; - eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; + eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; +// eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; +// mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ????????? correct for 1D profiles?? phip = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); phim = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); -// mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; -// mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient - mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient - -// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; - flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; + mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; + mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient +// mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; +// mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient + flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; /* //Upwind for positive velocity @@ -516,8 +439,92 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // free(mix_flux_phimean); // free(eddy_flux); // free(mean_flux); + free(vel_fluc); + free(vel_mean); + free(phi_fluc); + free(phi_mean); return; } + + + + +void weno_fifth_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 2; + const ssize_t jmin = 2; + const ssize_t kmin = 2; + + const ssize_t imax = dims->nlg[0]-3; + const ssize_t jmax = dims->nlg[1]-3; + const ssize_t kmax = dims->nlg[2]-3; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + if(d==2){ + for(ssize_t i=imin;i Date: Tue, 12 Apr 2016 11:10:50 +0200 Subject: [PATCH 071/511] debugging memory error in weno5_decomp --- Csrc/scalar_advection_ql.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 616216c9..ca327287 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -435,10 +435,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // End i loop } // End else -// free(mix_flux_phiprime); -// free(mix_flux_phimean); -// free(eddy_flux); -// free(mean_flux); + free(mix_flux_phiprime); + free(mix_flux_phimean); + free(eddy_flux); + free(mean_flux); free(vel_fluc); free(vel_mean); free(phi_fluc); From eb2ca192965b4a813aa4fac39921c8ab74e041a3 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 13:12:06 +0200 Subject: [PATCH 072/511] adding momentum weno5_decomp --- Csrc/momentum_advection_weno_ql.h | 165 +++++++++++++++++++++++++++++- Csrc/scalar_advection_ql.h | 16 +-- 2 files changed, 172 insertions(+), 9 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 7ea8889e..fd79adb2 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -39,6 +39,57 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t sm1_ing = -sp1_ing ; + // (1) average advecting and advected velocity + double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + +// for(ssize_t k=kmin;k u_ed' + // mix_flux_two = u_ing' + // eddy_flux = u_ing' u_ed' + // mean_flux = + double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + // double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + // double eddy_flux; + // double mix_flux_one; + // double mix_flux_two; + // double mean_flux; + + double phip; + double phim; + double phip_fluc = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? + double phim_fluc = 0.0; + double phip_mean = 0.0; + double phim_mean = 0.0; + double vel_adv; + if (d_advected != 2 && d_advecting !=2){ for(ssize_t i=imin;i u_ed' && mean_flux = + vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; + mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; + + // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], + vel_advecting_fluc[ijk], + vel_advecting_fluc[ijk + sp1_ing], + vel_advecting_fluc[ijk + sp2_ing]); + mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + + /* //Upwind for positive velocity - const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], vel_advected[ijk + sm1_ed]); - const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; + */ + } } } @@ -79,6 +163,38 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do for(ssize_t k=kmin;k u_ed' && mean_flux = + vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; + mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; + + // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], + vel_advecting_fluc[ijk], + vel_advecting_fluc[ijk + sp1_ing], + vel_advecting_fluc[ijk + sp2_ing]); + mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; + eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + + + /* //Upwind for positive velocity const double phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], @@ -99,6 +215,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; + */ } } } @@ -111,6 +228,39 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do for(ssize_t k=kmin;k u_ed' && mean_flux = + vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; + mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; + + // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], + vel_advecting_fluc[ijk], + vel_advecting_fluc[ijk + sp1_ing], + vel_advecting_fluc[ijk + sp2_ing]); + mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + + + + /* //Upwind for positive velocity const double phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], @@ -131,6 +281,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; + */ } } } @@ -138,6 +289,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); free(flux); + free(mix_flux_one); + free(mix_flux_two); + free(eddy_flux); + free(mean_flux); + free(vel_advecting_fluc); + free(vel_advected_fluc); + free(vel_advecting_mean); + free(vel_advected_mean); return; } diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index ca327287..3c8c562e 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -304,6 +304,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // (3) Compute Fluxes + // mix_flux_phiprime = phi' + // mix_flux_phimean = u' + // eddy_flux = u' phi' + // mean_flux = double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -360,21 +364,22 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; /*//Upwind for positive velocity -// const double phip = interp_weno5(scalar[ijk + sm2], - phip = interp_weno5(scalar[ijk + sm2], + const double phip = interp_weno5(scalar[ijk + sm2], + scalar[ijk + sm1], scalar[ijk], scalar[ijk + sp1], scalar[ijk + sp2]); // Up wind for negative velocity -// const double phim = interp_weno5(scalar[ijk + sp3], - phim = interp_weno5(scalar[ijk + sp3], + const double phim = interp_weno5(scalar[ijk + sp3], scalar[ijk + sp2], scalar[ijk + sp1], scalar[ijk], scalar[ijk + sm1]); - flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k];*/ + flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; + */ + } // End k loop } // End j loop } // End i loop @@ -434,7 +439,6 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do } // End j loop } // End i loop } // End else - free(mix_flux_phiprime); free(mix_flux_phimean); free(eddy_flux); From d594f49c27f7146263c3fd02d38a15dc5a1b4356 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 13:22:53 +0200 Subject: [PATCH 073/511] print statement --- Csrc/scalar_advection_ql.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 3c8c562e..4d6793d8 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -256,7 +256,8 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - if (d==1){("Scalar Advection: WENO 5 decomposition \n");} + if (d==1){printf("Scalar Advection: WENO 5 decomposition \n");} +// printf("Scalar Advection: WENO 5 decomposition \n"); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; From a398aac127616e18ff80f2fc4f44dd219532f9e1 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 14:53:28 +0200 Subject: [PATCH 074/511] give old scalar flux back to ScalarAdvection.pyx --- Csrc/scalar_advection.h | 3 +++ Csrc/scalar_advection_ql.h | 20 ++++++++++++++------ Microphysics.pyx | 1 + ScalarAdvection.pxd | 3 +++ ScalarAdvection.pyx | 9 +++++++++ 5 files changed, 30 insertions(+), 6 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index fdf68741..5797f949 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -695,6 +695,8 @@ void weno_eleventh_order_a(const struct DimStruct *dims, double* restrict rho0, void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, double* rho0_half ,double* restrict velocity, double* restrict scalar, double* restrict flux, int d, int scheme){ +//void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, double* rho0_half ,double* restrict velocity, double* restrict scalar, +// double* restrict flux, double* restrict flux_old, int d, int scheme){ switch(scheme){ case 1: upwind_first_a(dims, rho0, rho0_half, velocity, scalar, flux, d); @@ -741,6 +743,7 @@ void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, d case 205: weno_fifth_order_a_decomp(dims, rho0, rho0_half, velocity, scalar, flux, d); +// weno_fifth_order_a_decomp(dims, rho0, rho0_half, velocity, scalar, flux, flux_old, d); break; default: diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 4d6793d8..05c82ac4 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -255,7 +255,12 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re -void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ +void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + const double* restrict velocity, const double* restrict scalar, + double* restrict flux, int d){ +//void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, +// const double* restrict velocity, const double* restrict scalar, +// double* restrict flux, double* restrict flux_old, int d){ if (d==1){printf("Scalar Advection: WENO 5 decomposition \n");} // printf("Scalar Advection: WENO 5 decomposition \n"); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; @@ -309,6 +314,7 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // mix_flux_phimean = u' // eddy_flux = u' phi' // mean_flux = + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -364,7 +370,7 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; // flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; - /*//Upwind for positive velocity + //Upwind for positive velocity const double phip = interp_weno5(scalar[ijk + sm2], scalar[ijk + sm1], @@ -378,8 +384,8 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do scalar[ijk], scalar[ijk + sm1]); - flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; - */ + flux_old[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; + } // End k loop } // End j loop @@ -422,7 +428,7 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; -/* //Upwind for positive velocity + //Upwind for positive velocity const double phip = interp_weno5(scalar[ijk + sm2], scalar[ijk + sm1], scalar[ijk], @@ -435,11 +441,13 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do scalar[ijk], scalar[ijk + sm1]); - flux[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0_half[k];*/ + flux_old[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0_half[k]; } // End k loop } // End j loop } // End i loop } // End else + free(flux_old); + free(mix_flux_phiprime); free(mix_flux_phimean); free(eddy_flux); diff --git a/Microphysics.pyx b/Microphysics.pyx index e38ba3cc..d41adf67 100644 --- a/Microphysics.pyx +++ b/Microphysics.pyx @@ -22,6 +22,7 @@ cdef extern from "microphysics.h": void microphysics_stokes_sedimentation_velocity(Grid.DimStruct *dims, double* density, double ccn, double* ql, double* qt_velocity) cdef extern from "scalar_advection.h": void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil + # void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, double* flux_old, int d, int scheme) nogil cdef extern from "microphysics_sb.h": void sb_sedimentation_velocity_liquid(Grid.DimStruct *dims, double* density, double ccn, double* ql, double* qt_velocity)nogil diff --git a/ScalarAdvection.pxd b/ScalarAdvection.pxd index 3b835e9b..cfcb1eab 100644 --- a/ScalarAdvection.pxd +++ b/ScalarAdvection.pxd @@ -11,6 +11,9 @@ cdef class ScalarAdvection: cdef: double [:] flux + # ... + # double [:] flux_old + # ... Py_ssize_t order Py_ssize_t order_sedimentation double (*L_fp)(double T, double Lambda) nogil diff --git a/ScalarAdvection.pyx b/ScalarAdvection.pyx index 828e9f3f..5749e3d1 100644 --- a/ScalarAdvection.pyx +++ b/ScalarAdvection.pyx @@ -23,6 +23,8 @@ import cython cdef extern from "scalar_advection.h": void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil + # void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, + # double *scalar, double* flux, double* flux_old, int d, int scheme) nogil void compute_qt_sedimentation_s_source(Grid.DimStruct *dims, double *p0_half, double* rho0_half, double *flux, double* qt, double* qv, double* T, double* tendency, double (*lam_fp)(double), @@ -53,6 +55,7 @@ cdef class ScalarAdvection: cpdef initialize(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): self.flux = np.zeros((PV.nv_scalars*Gr.dims.npg*Gr.dims.dims,),dtype=np.double,order='c') + # self.flux_old = np.zeros((PV.nv_scalars*Gr.dims.npg*Gr.dims.dims,),dtype=np.double,order='c') #Initialize output fields for i in xrange(PV.nv): @@ -90,6 +93,8 @@ cdef class ScalarAdvection: compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], &DV.values[ql_shift],&self.flux[flux_shift],d,self.order_sedimentation) + # compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], + # &DV.values[ql_shift],&self.flux[flux_shift],&self.flux_old[flux_shift],d,self.order_sedimentation) scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) @@ -102,6 +107,8 @@ cdef class ScalarAdvection: #First get the tendency associated with the sedimentation velocity compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) + # compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], + # &PV.values[scalar_shift],&self.flux[flux_shift],&self.flux_old[flux_shift],d,self.order_sedimentation) scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) @@ -110,6 +117,8 @@ cdef class ScalarAdvection: vel_shift = PV.velocity_directions[d]*Gr.dims.npg compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&PV.values[vel_shift], &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order) + # compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], + # &PV.values[scalar_shift],&self.flux[flux_shift],&self.flux_old[flux_shift],d,self.order_sedimentation) scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) From 45f4b25249174a6f69dba679a502f2b3255f5420 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 17:29:46 +0200 Subject: [PATCH 075/511] testing MA weno decomposition --- Csrc/momentum_advection_weno_ql.h | 176 +++++++++++++++++++++++------- Simulation3d.pyx | 147 +++++++++++++++++++++++++ 2 files changed, 285 insertions(+), 38 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index fd79adb2..9aeb1d4f 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -3,6 +3,8 @@ #include "advection_interpolation.h" #include "flux_divergence.h" #include +#include +#include void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, @@ -10,10 +12,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if (d_advected==1 && d_advecting==1){ - printf("WENO5 QL Momentum Transport \n");} + printf("WENO5 decompositioned Momentum Transport \n");} // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -49,9 +52,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // phi_mean[k] = 0; // vel_mean[k] = 0; // } - // horizontal_mean(dims, &vel_fluc[0], &phi_mean[0]); - horizontal_mean_const(dims, &vel_advecting[0], &vel_advecting_mean[0]); - horizontal_mean_const(dims, &vel_advected[0], &vel_advected_mean[0]); + horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean[0]); + horizontal_mean(dims, &vel_advected[0], &vel_advected_mean[0]); +// horizontal_mean_const(dims, &vel_advecting[0], &vel_advecting_mean[0]); +// horizontal_mean_const(dims, &vel_advected[0], &vel_advected_mean[0]); // (2) compute eddy fields for(ssize_t i=imin;i0.0000001){ + ok = 1; + printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} + + diff = vel_advected[ijk]-(vel_advected_mean[k] + vel_advected_fluc[ijk]); + if(fabs(diff)>0.0000001){ + ok = 1; + printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} } } } + if(ok==0){printf("good decomposition \n");} + // (3) Compute Fluxes @@ -84,13 +116,13 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double phip; double phim; - double phip_fluc = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? - double phim_fluc = 0.0; - double phip_mean = 0.0; - double phim_mean = 0.0; + double phip_fluc; //???? do I need const double phip ??? Difference to declaring it within loop? + double phim_fluc; + double phip_mean; + double phim_mean; double vel_adv; - if (d_advected != 2 && d_advecting !=2){ + if (d_advected !=2 && d_advecting !=2){ for(ssize_t i=imin;i u_ed' && mean_flux = - vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + phim_mean = interp_weno5(vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k]); +// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + + // (a) mix_flux_one = u_ed' + // (b) mean_flux = +// vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + vel_adv = interp_4(vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; - // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + // (c) mix_flux_two = u_ing' + // (d) eddy_flux = u_ing' u_ed' vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], vel_advecting_fluc[ijk + sp1_ing], @@ -128,7 +175,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - /* + if(isnan(flux[ijk])) { + printf("Nan in flux, d1!=2, d2!=2\n"); + } + + //Upwind for positive velocity phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], @@ -148,8 +199,8 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; - */ + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; + } } @@ -168,18 +219,32 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); + phip_mean = interp_weno5(vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k]); // Upwind for negative velocity phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); + phim_mean = interp_weno5(vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k]); - phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = - vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + vel_adv = interp_4(vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; @@ -192,30 +257,32 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) { + printf("Nan in flux, d1=2, d2=2\n"); + } - /* //Upwind for positive velocity - const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], vel_advected[ijk + sm1_ed]); - const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; - */ + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; + } } } @@ -233,18 +300,32 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); + phip_mean = interp_weno5(vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k]); // Upwind for negative velocity phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); + phim_mean = interp_weno5(vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k], + vel_advected_mean[k]); - phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = - vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + vel_adv = interp_4(vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k], + vel_advecting_mean[k]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; @@ -257,38 +338,57 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) { + printf("Nan in flux, d1=2, d2!=2\n"); + } - - /* + // Original Flux computation //Upwind for positive velocity - const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], vel_advected[ijk + sm1_ed]); - const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; - */ + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; + } } } } + + + for(ssize_t i=imin;i1.0){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + } + } + } + +// printf("flux: %f\n", flux); + // printf("values[gw] = %f\n", values[gw]); + momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); free(flux); + free(flux_old); free(mix_flux_one); free(mix_flux_two); free(eddy_flux); diff --git a/Simulation3d.pyx b/Simulation3d.pyx index 75252a29..74bca10d 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -92,6 +92,39 @@ class Simulation3d: self.TS.initialize(namelist,self.PV,self.Pa) + # # __ + # print('Sim.initialise: before calling Initialization.pyx') + # cdef PrognosticVariables.PrognosticVariables PV_ = self.PV + # cdef: + # Py_ssize_t u_varshift = PV_.get_varshift(self.Gr,'u') + # Py_ssize_t v_varshift = PV_.get_varshift(self.Gr,'v') + # Py_ssize_t w_varshift = PV_.get_varshift(self.Gr,'w') + # Py_ssize_t s_varshift = PV_.get_varshift(self.Gr,'s') + # Py_ssize_t qt_varshift = PV_.get_varshift(self.Gr,'qt') + # print(u_varshift, v_varshift, w_varshift, s_varshift, qt_varshift) + # print(u_varshift - v_varshift, v_varshift - w_varshift, w_varshift - s_varshift, qt_varshift) + # if np.isnan(PV_.values[u_varshift:v_varshift]).any(): + # print('u: nan') + # else: + # print('u: No nan') + # if np.isnan(PV_.values[v_varshift:w_varshift]).any(): + # print('v nan') + # else: + # print('v: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('w: nan') + # else: + # print('w: No nan') + # if np.isnan(PV_.values[s_varshift:qt_varshift]).any(): + # print('s: nan') + # else: + # print('s: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('qt: nan') + # else: + # print('qt: No nan') + # # __ + if self.Restart.is_restart_run: self.Pa.root_print('This run is being restarted!') try: @@ -116,6 +149,32 @@ class Simulation3d: SetInitialConditions(self.Gr, self.PV, self.Ref, self.Th, self.StatsIO, self.Pa) del SetInitialConditions + # # __ + # print('Sim.initialise: after calling Initialization.pyx') + # if np.isnan(PV_.values[u_varshift:v_varshift]).any(): + # print('u: nan') + # else: + # print('u: No nan') + # if np.isnan(PV_.values[v_varshift:w_varshift]).any(): + # print('v nan') + # else: + # print('v: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('w: nan') + # else: + # print('w: No nan') + # if np.isnan(PV_.values[s_varshift:qt_varshift]).any(): + # print('s: nan') + # else: + # print('s: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('qt: nan') + # else: + # print('qt: No nan') + # # __ + + + self.Sur.initialize(self.Gr, self.Ref, self.DV, self.StatsIO, self.Pa) self.Fo.initialize(self.Gr, self.StatsIO, self.Pa) @@ -128,6 +187,31 @@ class Simulation3d: self.Pa.root_print('Initialization completed!') + # # __ + # print('Sim.initialise: checking nans') + # if np.isnan(PV_.values[u_varshift:v_varshift]).any(): + # print('u: nan') + # else: + # print('u: No nan') + # if np.isnan(PV_.values[v_varshift:w_varshift]).any(): + # print('v nan') + # else: + # print('v: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('w: nan') + # else: + # print('w: No nan') + # if np.isnan(PV_.values[s_varshift:qt_varshift]).any(): + # print('s: nan') + # else: + # print('s: No nan') + # if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + # print('qt: nan') + # else: + # print('qt: No nan') + # self.PV.val_nan(self.Pa,'Nan checking in Simulation: initialisation') + # # __ + return def run(self): @@ -147,15 +231,51 @@ class Simulation3d: self.Pa.root_print('Run started') + PV_.val_nan(self.Pa,'Nan checking in Simulation: time: '+str(self.TS.t)) + + # # __ + cdef: + Py_ssize_t u_varshift = PV_.get_varshift(self.Gr,'u') + Py_ssize_t v_varshift = PV_.get_varshift(self.Gr,'v') + Py_ssize_t w_varshift = PV_.get_varshift(self.Gr,'w') + Py_ssize_t s_varshift = PV_.get_varshift(self.Gr,'s') + Py_ssize_t qt_varshift = PV_.get_varshift(self.Gr,'qt') + # # __ + while (self.TS.t < self.TS.t_max): time1 = time.time() self.Pa.root_print('time: '+str(self.TS.t)) for self.TS.rk_step in xrange(self.TS.n_rk_steps): + # # __ + if np.isnan(PV_.values[u_varshift:v_varshift]).any(): + print('u: is nan') + else: + print('u (Sim): ', np.amax(PV_.values[u_varshift:v_varshift])) + + if np.isnan(PV_.values[v_varshift:w_varshift]).any(): + print('v: is nan') + else: + print('v (Sim): ', np.amax(PV_.values[v_varshift:w_varshift])) + if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + print('w: is nan') + else: + print('w (Sim): ', np.amax(PV_.values[w_varshift:s_varshift])) + if np.isnan(PV_.values[s_varshift:-1]).any(): + print('s: is nan') + else: + print('s (Sim): ', np.amax(PV_.values[s_varshift:-1])) + # # __ self.Ke.update(self.Gr,PV_) self.Th.update(self.Gr,self.Ref,PV_,DV_) self.Micro.update(self.Gr, self.Ref, PV_, DV_, self.TS, self.Pa ) self.SA.update(self.Gr,self.Ref,PV_, DV_, self.Pa) self.MA.update(self.Gr,self.Ref,PV_,self.Pa) + # # __ + if np.isnan(PV_.tendencies).any(): + print('!!!! PV Tendencies nan') + else: + print('No nan in PV tendencies') + # # __ self.Sur.update(self.Gr,self.Ref,self.PV, self.DV,self.Pa,self.TS) self.SGS.update(self.Gr,self.DV,self.PV, self.Ke,self.Pa) self.Damping.update(self.Gr,self.PV,self.Pa) @@ -164,10 +284,37 @@ class Simulation3d: self.Fo.update(self.Gr, self.Ref, self.PV, self.DV, self.Pa) self.Ra.update(self.Gr, self.Ref, self.PV, self.DV, self.Pa) + if np.isnan(PV_.tendencies).any(): + print('!!!! PV Tendencies nan (1)') + else: + print('No nan in PV tendencies (1)') + if np.isnan(PV_.values).any(): + print('!!!! PV Values nan (1)') + else: + print('No nan in PV values (1)') + self.TS.update(self.Gr, self.PV, self.Pa) + + if np.isnan(PV_.values).any(): + print('!!!! PV Values nan (2), rk step: ', self.TS.rk_step, self.TS.n_rk_step) + else: + print('No nan in PV values (2)') + PV_.Update_all_bcs(self.Gr, self.Pa) + + if np.isnan(PV_.values).any(): + print('!!!! PV Values nan (3), rk step: ', self.TS.rk_step) + else: + print('No nan in PV values (3), rk step: ', self.TS.rk_step) + self.Pr.update(self.Gr, self.Ref, self.DV, self.PV, self.Pa) # self.Pa.root_print('ok until here') + + if np.isnan(PV_.values).any(): + print('!!!! PV Values nan (4), rk step: ', self.TS.rk_step) + else: + print('No nan in PV values (4)') + self.TS.adjust_timestep(self.Gr, self.PV, self.DV,self.Pa) self.io() #PV_.debug(self.Gr,self.Ref,self.StatsIO,self.Pa) From 4e9ae29bae161c829967cfef8466765e2f5e4ffd Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 12 Apr 2016 17:40:29 +0200 Subject: [PATCH 076/511] printing output path in beginning of simulation --- NetCDFIO.pyx | 1 + 1 file changed, 1 insertion(+) diff --git a/NetCDFIO.pyx b/NetCDFIO.pyx index e9b249e6..43defc7a 100644 --- a/NetCDFIO.pyx +++ b/NetCDFIO.pyx @@ -32,6 +32,7 @@ cdef class NetCDFIO_Stats: # Setup the statistics output path outpath = str(os.path.join(namelist['output']['output_root'] + 'Output.' + namelist['meta']['simname'] + '.' + self.uuid[-5:])) + Pa.root_print(outpath) if Pa.rank == 0: try: From ffa3a016749146d9353b0746b4280da55dcbf2f1 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 13 Apr 2016 15:36:56 +0200 Subject: [PATCH 077/511] printing statement --- Csrc/momentum_advection_weno_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 9aeb1d4f..58dc61c3 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -95,7 +95,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } } } - if(ok==0){printf("good decomposition \n");} +// if(ok==0){printf("good decomposition \n");} From 7bf296c6bee25b073811a66f1234305f701f46dc Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 13 Apr 2016 16:56:05 +0200 Subject: [PATCH 078/511] printing statement --- Csrc/momentum_advection_weno_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 58dc61c3..fdc16543 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -377,7 +377,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k1.0){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.05){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} } } } From 8537422e57b94485bc2c894d88a14071dc42df80 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 10:17:54 +0200 Subject: [PATCH 079/511] testing horizontal averaging --- Csrc/scalar_advection_ori.h | 141 ----------------------- test_av/TestArray_c.pxd | 1 - test_av/TestArray_c.pyx | 51 +++++---- test_av/TestRun.pyx | 21 +--- test_av/cc_statistics.h | 215 +++++++++++++++++++++++------------- test_av/main.py | 16 --- 6 files changed, 169 insertions(+), 276 deletions(-) delete mode 100644 Csrc/scalar_advection_ori.h diff --git a/Csrc/scalar_advection_ori.h b/Csrc/scalar_advection_ori.h deleted file mode 100644 index 572d4260..00000000 --- a/Csrc/scalar_advection_ori.h +++ /dev/null @@ -1,141 +0,0 @@ -#pragma once -#include "grid.h" -#include "advection_interpolation.h" - -void second_order_a_ql(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - - if(d==2){ - for(ssize_t i=imin;inlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - const ssize_t sp2 = 2 * sp1; - const ssize_t sp3 = 3 * sp1; - const ssize_t sm1 = -sp1 ; - const ssize_t sm2 = -2*sp1; - - if(d==2){ - for(ssize_t i=imin;i #include -// how to return a double array??? -// double horizontal_mean(struct DimStruct *dims, double* restrict *values){ -void horizontal_mean(struct DimStruct *dims, double* restrict values){ - /* - Compute the horizontal mean of the array pointed to by values. - values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] - * Gr.dims.nlg[1]. - - :param Gr: Grid class - :param values1: pointer to array of type double containing first value in product - :return: memoryview type double with dimension Gr.dims.nlg[2] - ''' - # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts - # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) - # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points - # i = 0,1,2 - */ - - printf("values[0] = %f\n", values[0]); -// double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array -// double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); -// double *mean = (double *)malloc(sizeof(double) * dims->n[2]); - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - //int i,j,k,ijk; - int ijk; - const ssize_t imin = dims->gw; - const ssize_t jmin = dims->gw; - const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0] - dims->gw; - const ssize_t jmax = dims->nlg[1] - dims->gw; - const ssize_t kmax = dims->nlg[2]; - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - //int ishift, jshift; - const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); - - for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); -// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// +// printf("values[0] = %f\n", values[0]); +//// double *mean_local = (double *)malloc(sizeof(double) * dims->n[2]); // Dynamically allocate array +//// double *mean_ = (double *)malloc(sizeof(double) * dims->n[2]); +//// double *mean = (double *)malloc(sizeof(double) * dims->n[2]); +// double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array +// double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *mean = (double *)malloc(sizeof(double) * dims->nlg[2]); +// //int i,j,k,ijk; +// int ijk; +// const ssize_t imin = dims->gw; +// const ssize_t jmin = dims->gw; +// const ssize_t kmin = 0; +// const ssize_t imax = dims->nlg[0] - dims->gw; +// const ssize_t jmax = dims->nlg[1] - dims->gw; +// const ssize_t kmax = dims->nlg[2]; +// const ssize_t istride = dims->nlg[1] * dims->nlg[2]; +// const ssize_t jstride = dims->nlg[2]; +// //int ishift, jshift; +// const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); +// +// for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +//// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// + const ssize_t gw = dims->gw; +// printf("values[gw] = %f\n", values[gw]); +// printf("before: mean[gw] = %f\n", mean[gw]); + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + for(ssize_t k=kmin; k Date: Mon, 25 Apr 2016 11:28:28 +0200 Subject: [PATCH 080/511] changing test averaging --- test_av/TestArray_c.pxd | 2 +- test_av/TestArray_c.pyx | 17 ++++++++++++----- test_av/TestRun.pyx | 12 +++++------- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/test_av/TestArray_c.pxd b/test_av/TestArray_c.pxd index c6fe50c3..8e3f1200 100644 --- a/test_av/TestArray_c.pxd +++ b/test_av/TestArray_c.pxd @@ -35,7 +35,7 @@ cdef class TestArray: # double array(self) cpdef array_mean(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) - cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) + cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) cpdef set_PV_values_const(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index ece19bf8..78e9e29f 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -46,23 +46,25 @@ cdef class TestArray: return - cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr): + cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): print('calling TestArray_c.array_mean_return') u_val = PV.get_variable_array('u', Gr) - # cdef double [:] u_mean = np.empty(shape = u_val.shape[2]) cdef double [:] u_mean = np.zeros(Gr.dims.ng[2]) print('!!!', u_mean.shape, Gr.dims.ng[2], u_val.shape) print('!!! before !!!') print('u_mean:', np.array(u_mean)) - print('u_val, (:,0,0):', u_val[:,0,0]) + # print('u_val, (:,0,0):', u_val[:,0,0]) # print('u_val, (0,:,0):', u_val[0,:,0]) - print('u_val, (:,:,0):', u_val[:,:,0]) + cdef Py_ssize_t shift_u = PV.velocity_directions[0] * Gr.dims.npg horizontal_mean(&Gr.dims, &PV.values[shift_u], &u_mean[0]) + print('!!! after !!!') + print('processor:', Pa.rank) + print('u_val, (:,:,0):', u_val[:,:,0]) print(np.array(u_mean)) return @@ -82,6 +84,8 @@ cdef class TestArray: cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr): cdef: # Py_ssize_t shift_flux = i_advected * Gr.dims.dims * Gr.dims.npg + i_advecting * Gr.dims.npg + Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') + Py_ssize_t i, j, k, ijk, ishift, jshift Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] Py_ssize_t jstride = Gr.dims.nlg[2] @@ -103,8 +107,11 @@ cdef class TestArray: for j in xrange(jmin, jmax): jshift = j * jstride for k in xrange(kmin, kmax): + ijk = ishift + jshift + k # PV.values[0+ishift+jshift+k] = i-Gr.dims.gw - PV.values[ishift+jshift+k] = i + PV.values[u_varshift + ijk] = i # print(PV.values[0+ishift+jshift+k]) + + return diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx index f1143317..d268a296 100644 --- a/test_av/TestRun.pyx +++ b/test_av/TestRun.pyx @@ -70,17 +70,15 @@ class TestRun: mean = TestArray_c.TestArray(namelist) mean.set_PV_values_const(self.PV, self.Gr) - for i in range(1): - mean.array_mean_return(self.PV, self.Gr) + # u_mean = np.zeros(self.Gr.dims.ng[2]) + mean.array_mean_return(self.PV, self.Gr, self.Pa) mean.set_PV_values(self.PV, self.Gr) u_val = self.PV.get_variable_array('u', self.Gr) - for i in range(1): - mean.array_mean_return(self.PV, self.Gr) - # print('k = 0: ', u_val[:,0,0], u_val[0,0:3,0], u_val[1,0:3,0], u_val[-1,0,0]) - # print('k = 1: ', u_val[:,0,1], u_val[0,0:3,1]) - # print('k = 6: ', u_val[:,0,6], u_val[0,:,6], u_val[1,0:3,6], u_val[-1,0,6]) + mean.array_mean_return(self.PV, self.Gr, self.Pa) print('finished TestRun') + + return \ No newline at end of file From 36d91d61f237b885ec125084b6471d79ae1b2ed4 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 13:19:19 +0200 Subject: [PATCH 081/511] changing test averaging --- test_av/TestArray_c.pxd | 2 +- test_av/TestArray_c.pyx | 7 +++++-- test_av/TestRun.pyx | 2 +- test_av/main.py | 7 +++---- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/test_av/TestArray_c.pxd b/test_av/TestArray_c.pxd index 8e3f1200..a2c7a182 100644 --- a/test_av/TestArray_c.pxd +++ b/test_av/TestArray_c.pxd @@ -38,7 +38,7 @@ cdef class TestArray: cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) cpdef set_PV_values_const(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) - cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) + cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index 78e9e29f..bd8acf6a 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -81,7 +81,7 @@ cdef class TestArray: return - cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr): + cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): cdef: # Py_ssize_t shift_flux = i_advected * Gr.dims.dims * Gr.dims.npg + i_advecting * Gr.dims.npg Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') @@ -98,9 +98,12 @@ cdef class TestArray: Py_ssize_t jmax = Gr.dims.nlg[1] Py_ssize_t kmax = Gr.dims.nlg[2] + Py_ssize_t rank = Pa.rank + for i in range(Gr.dims.npg): PV.values[i] = 0.0 + for i in xrange(imin, imax): # print(i) ishift = i * istride @@ -109,7 +112,7 @@ cdef class TestArray: for k in xrange(kmin, kmax): ijk = ishift + jshift + k # PV.values[0+ishift+jshift+k] = i-Gr.dims.gw - PV.values[u_varshift + ijk] = i + PV.values[u_varshift + ijk] = i * (rank+1) # print(PV.values[0+ishift+jshift+k]) diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx index d268a296..6dc700dd 100644 --- a/test_av/TestRun.pyx +++ b/test_av/TestRun.pyx @@ -73,7 +73,7 @@ class TestRun: # u_mean = np.zeros(self.Gr.dims.ng[2]) mean.array_mean_return(self.PV, self.Gr, self.Pa) - mean.set_PV_values(self.PV, self.Gr) + mean.set_PV_values(self.PV, self.Gr, self.Pa) u_val = self.PV.get_variable_array('u', self.Gr) mean.array_mean_return(self.PV, self.Gr, self.Pa) diff --git a/test_av/main.py b/test_av/main.py index 4c72144c..80ea2826 100644 --- a/test_av/main.py +++ b/test_av/main.py @@ -14,10 +14,9 @@ def main(): namelist = json.loads(file_namelist) del file_namelist - - import TestRun - Arr = TestRun.TestRun(namelist) - a = Arr.array() + # import TestRun + # Arr = TestRun.TestRun(namelist) + # a = Arr.array() From dfec002b4542776c1417f8372673ed7c9486e4cc Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 13:38:01 +0200 Subject: [PATCH 082/511] changing test averaging --- test_av/TestRun.pyx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx index 6dc700dd..6032d9a2 100644 --- a/test_av/TestRun.pyx +++ b/test_av/TestRun.pyx @@ -69,9 +69,9 @@ class TestRun: mean = TestArray_c.TestArray(namelist) - mean.set_PV_values_const(self.PV, self.Gr) + # mean.set_PV_values_const(self.PV, self.Gr) # u_mean = np.zeros(self.Gr.dims.ng[2]) - mean.array_mean_return(self.PV, self.Gr, self.Pa) + # mean.array_mean_return(self.PV, self.Gr, self.Pa) mean.set_PV_values(self.PV, self.Gr, self.Pa) u_val = self.PV.get_variable_array('u', self.Gr) From 74b4237690dd371ce2a75ed70269d4c609b1bbaa Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 14:18:21 +0200 Subject: [PATCH 083/511] debugging averaging --- test_av/cc_statistics.h | 73 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index a24f7753..7f4a7bab 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -111,6 +111,7 @@ void horizontal_mean(struct DimStruct *dims, double* restrict values, double* re const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; //int ishift, jshift; +// const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); for(ssize_t k=kmin; knlg[2]; //int ishift, jshift; const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + printf("averaging number: %f\n", n_horizontal_i); for(ssize_t k=kmin; k total number of pts +// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) +// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points +// # i = 0,1,2 +// */ +// + const ssize_t gw = dims->gw; + printf("values[gw] = %f\n", values[gw]); + printf("before: mean[gw] = %f\n", mean[gw]); + + double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array + double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + int ijk; + const ssize_t imin = dims->gw; + const ssize_t jmin = dims->gw; + const ssize_t kmin = 0; + const ssize_t imax = dims->nlg[0] - dims->gw; + const ssize_t jmax = dims->nlg[1] - dims->gw; + const ssize_t kmax = dims->nlg[2]; + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + //int ishift, jshift; +// const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); + + for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); +// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); + for(ssize_t k=kmin; k Date: Mon, 25 Apr 2016 15:04:46 +0200 Subject: [PATCH 084/511] changing test averaging --- test_av/TestArray_c.pyx | 4 ++-- test_av/cc_statistics.h | 2 -- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index bd8acf6a..9d647a65 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -111,8 +111,8 @@ cdef class TestArray: jshift = j * jstride for k in xrange(kmin, kmax): ijk = ishift + jshift + k - # PV.values[0+ishift+jshift+k] = i-Gr.dims.gw - PV.values[u_varshift + ijk] = i * (rank+1) + PV.values[0+ishift+jshift+k] = (i-Gr.dims.gw) * (rank+1) + # PV.values[u_varshift + ijk] = i * (rank+1) # print(PV.values[0+ishift+jshift+k]) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index 7f4a7bab..8a0128d0 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -314,8 +314,6 @@ void horizontal_mean_nogw(struct DimStruct *dims, double* restrict values, doubl const ssize_t kmax = dims->nlg[2]; const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - //int ishift, jshift; -// const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); for(ssize_t k=kmin; k Date: Mon, 25 Apr 2016 15:48:59 +0200 Subject: [PATCH 085/511] changing test averaging --- test_av/TestArray_c.pyx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index 9d647a65..08bcb1ab 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -64,8 +64,9 @@ cdef class TestArray: print('!!! after !!!') print('processor:', Pa.rank) - print('u_val, (:,:,0):', u_val[:,:,0]) - print(np.array(u_mean)) + if Pa.rank == 0: + # print('u_val, (:,:,0):', u_val[:,:,0]) + print(np.array(u_mean)) return From 8b2bdbe24c8bf045c6590e5557d7cdb4686df0db Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 15:55:29 +0200 Subject: [PATCH 086/511] changing test averaging --- test_av/TestArray_c.pyx | 8 +++++--- test_av/cc_statistics.h | 12 ++++++------ 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index 08bcb1ab..97f06e86 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -51,9 +51,11 @@ cdef class TestArray: u_val = PV.get_variable_array('u', Gr) cdef double [:] u_mean = np.zeros(Gr.dims.ng[2]) - print('!!!', u_mean.shape, Gr.dims.ng[2], u_val.shape) - print('!!! before !!!') - print('u_mean:', np.array(u_mean)) + + if Pa.rank == 0: + print('!!!', u_mean.shape, Gr.dims.ng[2], u_val.shape) + print('!!! before !!!') + print('u_mean:', np.array(u_mean)) # print('u_val, (:,0,0):', u_val[:,0,0]) # print('u_val, (0,:,0):', u_val[0,:,0]) diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index 8a0128d0..439b0d47 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -300,8 +300,8 @@ void horizontal_mean_nogw(struct DimStruct *dims, double* restrict values, doubl // */ // const ssize_t gw = dims->gw; - printf("values[gw] = %f\n", values[gw]); - printf("before: mean[gw] = %f\n", mean[gw]); +// printf("values[gw] = %f\n", values[gw]); +// printf("before: mean[gw] = %f\n", mean[gw]); double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -331,8 +331,8 @@ void horizontal_mean_nogw(struct DimStruct *dims, double* restrict values, doubl } } printf("nx*ny = %f\n", 1/n_horizontal_i); - printf("mean_local[gw] = %f\n", mean_local[gw]); - printf("mean_local[10] = %f\n", mean_local[10]); +// printf("mean_local[gw] = %f\n", mean_local[gw]); +// printf("mean_local[10] = %f\n", mean_local[10]); // //#Here we call MPI_Allreduce on the sub_xy communicator as we only need communication among // //#processes with the the same vertical rank @@ -342,8 +342,8 @@ void horizontal_mean_nogw(struct DimStruct *dims, double* restrict values, doubl MPI_Allreduce(&mean_local[k], &mean_[k], 1, MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); mean[k] = mean_[k] * n_horizontal_i; } - printf("mean[gw] = %f\n", mean[gw]); - printf("mean[10] = %f\n", mean[10]); +// printf("mean[gw] = %f\n", mean[gw]); +// printf("mean[10] = %f\n", mean[10]); printf("Done \n"); return; From 0dc1ddbcd24c1afdd6d200bf972c01a23d1c4163 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 25 Apr 2016 16:11:55 +0200 Subject: [PATCH 087/511] changing test averaging --- test_av/TestArray_c.pxd | 2 ++ test_av/TestArray_c.pyx | 44 ++++++++++++++++++---------- test_av/TestRun.pyx | 4 +++ test_av/cc_statistics.h | 65 ----------------------------------------- 4 files changed, 34 insertions(+), 81 deletions(-) diff --git a/test_av/TestArray_c.pxd b/test_av/TestArray_c.pxd index a2c7a182..7fa5206a 100644 --- a/test_av/TestArray_c.pxd +++ b/test_av/TestArray_c.pxd @@ -36,6 +36,8 @@ cdef class TestArray: cpdef array_mean(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) cpdef array_mean_return(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef array_mean_const(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) + cpdef set_PV_values_const(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr) cpdef set_PV_values(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa) diff --git a/test_av/TestArray_c.pyx b/test_av/TestArray_c.pyx index 97f06e86..49db1a53 100644 --- a/test_av/TestArray_c.pyx +++ b/test_av/TestArray_c.pyx @@ -13,6 +13,10 @@ cimport PrognosticVariables cdef extern from "cc_statistics.h": # void horizontal_mean(Grid.DimStruct *dims, double *values) void horizontal_mean(Grid.DimStruct *dims, double *values, double *mean) + # void horizontal_mean_const(Grid.DimStruct *dims, const double restrict *values, double restrict *mean) + void horizontal_mean_const(Grid.DimStruct *dims, const double *values, double *mean) + + cdef class TestArray: def __init__(self,namelist): @@ -28,21 +32,7 @@ cdef class TestArray: cpdef array_mean(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr): - # print('calling TestArray_c.array_mean') - # # # horizontal_mean() - # # cdef dims = Gr.dims - # # print(dims) - # # cdef nxg = dims.ng[0] - # # cdef nyg = dims.ng[1] - # # cdef nzg = dims.ng[2] - # - # # # cdef double [:,:,:,:] b = self.array_c - # u_val = PV.get_variable_array('u', Gr) - # - # cdef Py_ssize_t shift_u = PV.velocity_directions[0] * Gr.dims.npg - # # horizontal_mean(&Gr.dims, &PV.values[shift_u]) - # horizontal_mean(&Gr.dims,&PV.values[shift_u],) - # + return @@ -63,10 +53,32 @@ cdef class TestArray: cdef Py_ssize_t shift_u = PV.velocity_directions[0] * Gr.dims.npg horizontal_mean(&Gr.dims, &PV.values[shift_u], &u_mean[0]) + print('processor:', Pa.rank) + if Pa.rank == 0: + print('!!! after !!!') + # print('u_val, (:,:,0):', u_val[:,:,0]) + print(np.array(u_mean)) + + return + + + cpdef array_mean_const(self, PrognosticVariables.PrognosticVariables PV, Grid.Grid Gr, ParallelMPI.ParallelMPI Pa): + print('calling TestArray_c.array_mean_return') + + u_val = PV.get_variable_array('u', Gr) + cdef double [:] u_mean = np.zeros(Gr.dims.ng[2]) + + if Pa.rank == 0: + print('const - ', u_mean.shape, Gr.dims.ng[2], u_val.shape) + print('! before const !') + print('u_mean:', np.array(u_mean)) + + cdef Py_ssize_t shift_u = PV.velocity_directions[0] * Gr.dims.npg + horizontal_mean_const(&Gr.dims, &PV.values[shift_u], &u_mean[0]) - print('!!! after !!!') print('processor:', Pa.rank) if Pa.rank == 0: + print('! after const !') # print('u_val, (:,:,0):', u_val[:,:,0]) print(np.array(u_mean)) diff --git a/test_av/TestRun.pyx b/test_av/TestRun.pyx index 6032d9a2..48188af2 100644 --- a/test_av/TestRun.pyx +++ b/test_av/TestRun.pyx @@ -77,6 +77,10 @@ class TestRun: u_val = self.PV.get_variable_array('u', self.Gr) mean.array_mean_return(self.PV, self.Gr, self.Pa) + # mean.set_PV_values(self.PV, self.Gr, self.Pa) + # u_val = self.PV.get_variable_array('u', self.Gr) + mean.array_mean_const(self.PV, self.Gr, self.Pa) + print('finished TestRun') diff --git a/test_av/cc_statistics.h b/test_av/cc_statistics.h index 439b0d47..3909b084 100644 --- a/test_av/cc_statistics.h +++ b/test_av/cc_statistics.h @@ -283,68 +283,3 @@ void horizontal_mean_const(struct DimStruct *dims, const double* restrict values -void horizontal_mean_nogw(struct DimStruct *dims, double* restrict values, double* restrict mean){ -// /* -// Compute the horizontal mean of the array pointed to by values. -// values should have dimension of Gr.dims.nlg[0] * Gr.dims.nlg[1] -// * Gr.dims.nlg[1]. -// -// :param Gr: Grid class -// :param values1: pointer to array of type double containing first value in product -// :return: memoryview type double with dimension Gr.dims.nlg[2] -// ''' -// # Gr.dims.n[i] = namelist['grid']['ni'] (e.g. n[0] = 'nx') --> total number of pts -// # Gr.dims.nl[i] = Gr.dims.n[i] // mpi_dims[i] --> local number of pts (per processor) -// # Gr.dims.nlg[i] = Gr.dims.nl[i] + 2*gw --> local number of pts incl ghost points -// # i = 0,1,2 -// */ -// - const ssize_t gw = dims->gw; -// printf("values[gw] = %f\n", values[gw]); -// printf("before: mean[gw] = %f\n", mean[gw]); - - double *mean_local = (double *)malloc(sizeof(double) * dims->nlg[2]); // Dynamically allocate array - double *mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); - int ijk; - const ssize_t imin = dims->gw; - const ssize_t jmin = dims->gw; - const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0] - dims->gw; - const ssize_t jmax = dims->nlg[1] - dims->gw; - const ssize_t kmax = dims->nlg[2]; - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - const double n_horizontal_i = 1.0/(dims->n[1]*dims->n[0]); - - for(ssize_t k=kmin; kng[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); -// MPI_Allreduce(&mean_local, &mean_, dims->n[2], MPI_DOUBLE, MPI_SUM, MPI_COMM_WORLD); - for(ssize_t k=kmin; k Date: Tue, 26 Apr 2016 09:47:55 +0200 Subject: [PATCH 088/511] debugging print output --- Csrc/scalar_advection.h | 4 ++-- Simulation3d.pyx | 49 +++++++++++++++++++++-------------------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index 5797f949..f7b4ad15 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -4,8 +4,8 @@ #include "thermodynamic_functions.h" #include "entropies.h" -#include "scalar_advection_ql.h" -#include "cc_statistics.h" +#include "scalar_advection_ql.h" // contains modules to compute QL fluxes +#include "cc_statistics.h" // contains horizontal averaging function void second_order_a(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ diff --git a/Simulation3d.pyx b/Simulation3d.pyx index 74bca10d..2d8df6c2 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -247,23 +247,24 @@ class Simulation3d: self.Pa.root_print('time: '+str(self.TS.t)) for self.TS.rk_step in xrange(self.TS.n_rk_steps): # # __ - if np.isnan(PV_.values[u_varshift:v_varshift]).any(): - print('u: is nan') - else: - print('u (Sim): ', np.amax(PV_.values[u_varshift:v_varshift])) - - if np.isnan(PV_.values[v_varshift:w_varshift]).any(): - print('v: is nan') - else: - print('v (Sim): ', np.amax(PV_.values[v_varshift:w_varshift])) - if np.isnan(PV_.values[w_varshift:s_varshift]).any(): - print('w: is nan') - else: - print('w (Sim): ', np.amax(PV_.values[w_varshift:s_varshift])) - if np.isnan(PV_.values[s_varshift:-1]).any(): - print('s: is nan') - else: - print('s (Sim): ', np.amax(PV_.values[s_varshift:-1])) + if np.isnan(PV_.values).any(): + if np.isnan(PV_.values[u_varshift:v_varshift]).any(): + print('u: is nan') + else: + print('u (Sim): ', np.amax(PV_.values[u_varshift:v_varshift])) + + if np.isnan(PV_.values[v_varshift:w_varshift]).any(): + print('v: is nan') + else: + print('v (Sim): ', np.amax(PV_.values[v_varshift:w_varshift])) + if np.isnan(PV_.values[w_varshift:s_varshift]).any(): + print('w: is nan') + else: + print('w (Sim): ', np.amax(PV_.values[w_varshift:s_varshift])) + if np.isnan(PV_.values[s_varshift:-1]).any(): + print('s: is nan') + else: + print('s (Sim): ', np.amax(PV_.values[s_varshift:-1])) # # __ self.Ke.update(self.Gr,PV_) self.Th.update(self.Gr,self.Ref,PV_,DV_) @@ -290,22 +291,22 @@ class Simulation3d: print('No nan in PV tendencies (1)') if np.isnan(PV_.values).any(): print('!!!! PV Values nan (1)') - else: - print('No nan in PV values (1)') + # else: + # print('No nan in PV values (1)') self.TS.update(self.Gr, self.PV, self.Pa) if np.isnan(PV_.values).any(): - print('!!!! PV Values nan (2), rk step: ', self.TS.rk_step, self.TS.n_rk_step) - else: - print('No nan in PV values (2)') + print('!!!! PV Values nan (2), rk step: ', self.TS.rk_step, self.TS.n_rk_steps) + # else: + # print('No nan in PV values (2)') PV_.Update_all_bcs(self.Gr, self.Pa) if np.isnan(PV_.values).any(): print('!!!! PV Values nan (3), rk step: ', self.TS.rk_step) - else: - print('No nan in PV values (3), rk step: ', self.TS.rk_step) + # else: + # print('No nan in PV values (3), rk step: ', self.TS.rk_step) self.Pr.update(self.Gr, self.Ref, self.DV, self.PV, self.Pa) # self.Pa.root_print('ok until here') From aa2330a1805a1f8f807640933b28c7cfbddef70a Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 26 Apr 2016 10:25:46 +0200 Subject: [PATCH 089/511] debugging, print statements --- Simulation3d.pyx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Simulation3d.pyx b/Simulation3d.pyx index 2d8df6c2..4377aea6 100644 --- a/Simulation3d.pyx +++ b/Simulation3d.pyx @@ -274,8 +274,8 @@ class Simulation3d: # # __ if np.isnan(PV_.tendencies).any(): print('!!!! PV Tendencies nan') - else: - print('No nan in PV tendencies') + # else: + # print('No nan in PV tendencies') # # __ self.Sur.update(self.Gr,self.Ref,self.PV, self.DV,self.Pa,self.TS) self.SGS.update(self.Gr,self.DV,self.PV, self.Ke,self.Pa) @@ -287,8 +287,8 @@ class Simulation3d: self.Ra.update(self.Gr, self.Ref, self.PV, self.DV, self.Pa) if np.isnan(PV_.tendencies).any(): print('!!!! PV Tendencies nan (1)') - else: - print('No nan in PV tendencies (1)') + # else: + # print('No nan in PV tendencies (1)') if np.isnan(PV_.values).any(): print('!!!! PV Values nan (1)') # else: @@ -313,8 +313,8 @@ class Simulation3d: if np.isnan(PV_.values).any(): print('!!!! PV Values nan (4), rk step: ', self.TS.rk_step) - else: - print('No nan in PV values (4)') + # else: + # print('No nan in PV values (4)') self.TS.adjust_timestep(self.Gr, self.PV, self.DV,self.Pa) self.io() From 5ff7dcd76d145608bc6b89f844d766db5b6a2d46 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 26 Apr 2016 12:58:53 +0200 Subject: [PATCH 090/511] debugging weno 5 decomp MA --- Csrc/momentum_advection_weno_ql.h | 42 ++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index fdc16543..63a6d45d 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -21,13 +21,18 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; +// const ssize_t imin = 2; +// const ssize_t jmin = 2; +// const ssize_t kmin = 2; +// const ssize_t imax = dims->nlg[0]-3; +// const ssize_t jmax = dims->nlg[1]-3; +// const ssize_t kmax = dims->nlg[2]-3; + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; const ssize_t stencil[3] = {istride,jstride,1}; @@ -48,10 +53,6 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); -// for(ssize_t k=kmin;knlg[0]-3; + jmax = dims->nlg[1]-3; + kmax = dims->nlg[2]-3; // (3) Compute Fluxes // mix_flux_one = u_ed' @@ -129,6 +135,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k0.05){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} +// if(fabs((flux[ijk]-flux_old[ijk]))>fabs(flux_old[ijk])){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} +// if(fabs(flux_old[ijk])<1e-10){printf("zero old flux\n");} } } } @@ -400,6 +411,9 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do return; } + + + void weno_fifth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict alpha0, double* restrict alpha0_half, double* restrict vel_advected, double* restrict vel_advecting, From 8e1f6b598ec7a9dde16627dc1a0583e2d4047e39 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 26 Apr 2016 13:26:32 +0200 Subject: [PATCH 091/511] debugging weno 5 decomp SA; adding QL WS MA --- Csrc/momentum_advection.h | 13 +++++++++++-- Csrc/scalar_advection_ql.h | 14 +++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index e9a5625b..b3105d60 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -10,6 +10,7 @@ #include "flux_divergence.h" #include "momentum_advection_central_ql.h" +#include "momentum_advection_central_ws_ql.h" #include "momentum_advection_weno_ql.h" #include @@ -118,23 +119,31 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho second_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; - case 104: // if (d_advected==1 && d_advecting==1){ // printf("4th order QL Momentum Transport \n");} fourth_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; - case 105: weno_fifth_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + case 114: // !!!!!! NOT Finished !!!!!! + fourth_order_ws_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; + + case 205: weno_fifth_order_m_decomp(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + case 214: + fourth_order_ws_m_decomp(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; default: // Default to second order scheme. diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 05c82ac4..f79d8a12 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -39,9 +39,12 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re const ssize_t jmin = 0; const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; +// const ssize_t imax = dims->nlg[0]-1; +// const ssize_t jmax = dims->nlg[1]-1; +// const ssize_t kmax = dims->nlg[2]-1; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -72,7 +75,12 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re horizontal_mean(dims, &velocity[0], &vel_mean[0]); + + // (3) compute eddy flux: (vel - mean_vel)**2 AND compute total flux + imax = dims->nlg[0]-1; + jmax = dims->nlg[1]-1; + kmax = dims->nlg[2]-1; if(d==2){ for(ssize_t i=imin;i Date: Tue, 26 Apr 2016 13:27:42 +0200 Subject: [PATCH 092/511] adding Central WS 4th order QL MA scheme --- Csrc/momentum_advection_central_ws_ql.h | 212 ++++++++++++++++++++++++ 1 file changed, 212 insertions(+) create mode 100644 Csrc/momentum_advection_central_ws_ql.h diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h new file mode 100644 index 00000000..ec8b1dec --- /dev/null +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -0,0 +1,212 @@ +#pragma once +#include "grid.h" +#include "advection_interpolation.h" +#include "flux_divergence.h" +#include "cc_statistics.h" +#include + +// !!!!!! control if doing the right thing !!!!!! +void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + + if (d_advected==1 && d_advecting==1){ + printf("4th order WS QL Momentum Transport \n");} + + // Dynamically allocate flux array + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_int_ed = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean_ed = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2 * sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2 * sp1_ing; + const ssize_t sm1_ing = -sp1_ing; + + + // (1) interpolate velocity fields + for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2 * sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2 * sp1_ing; + const ssize_t sm1_ing = -sp1_ing; + + + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;i Date: Tue, 26 Apr 2016 13:29:13 +0200 Subject: [PATCH 093/511] refactoring --- Csrc/momentum_advection_central_ws_ql.h | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index ec8b1dec..97a84736 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -200,13 +200,9 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); - free(eddy_flux); - free(mean_eddy_flux); - free(vel_int_ing); - free(vel_int_ed); - free(vel_mean_ed); - free(vel_mean_ing); - free(flux); + free(flux_old); + + return; } \ No newline at end of file From 2a9cb66ca4f06b6678d6be36d54047df1e0306bd Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 26 Apr 2016 13:58:35 +0200 Subject: [PATCH 094/511] adding 4th order WS central difference decomposition scheme for MA --- Csrc/momentum_advection_central_ws_ql.h | 169 ++++++++++++++++++++++-- Csrc/momentum_advection_weno_ql.h | 18 +-- 2 files changed, 164 insertions(+), 23 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 97a84736..c8e23ef4 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -122,7 +122,8 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub -// !!!!!! NOT Finished !!!!!! + +// !!!!!! test if doing the correct thing !!!!!! void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict alpha0, double* restrict alpha0_half, double* restrict vel_advected, double* restrict vel_advecting, @@ -138,13 +139,18 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 1; - const ssize_t jmin = 1; - const ssize_t kmin = 1; - - const ssize_t imax = dims->nlg[0]-2; - const ssize_t jmax = dims->nlg[1]-2; - const ssize_t kmax = dims->nlg[2]-2; +// const ssize_t imin = 1; +// const ssize_t jmin = 1; +// const ssize_t kmin = 1; +// const ssize_t imax = dims->nlg[0]-2; +// const ssize_t jmax = dims->nlg[1]-2; +// const ssize_t kmax = dims->nlg[2]-2; + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; @@ -156,15 +162,108 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t sm1_ing = -sp1_ing; + // (1) average advecting and advected velocity + double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - if (d_advected != 2 && d_advecting !=2){ + horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean[0]); + horizontal_mean(dims, &vel_advected[0], &vel_advected_mean[0]); + + // (2) compute eddy fields + for(ssize_t i=imin;i0.0000001){ + ok = 1; + printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} + + diff = vel_advected[ijk]-(vel_advected_mean[k] + vel_advected_fluc[ijk]); + if(fabs(diff)>0.0000001){ + ok = 1; + printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} + } + } + } + + // (3) Compute Fluxes + // mix_flux_one = u_ed' + // mix_flux_two = u_ing' + // eddy_flux = u_ing' u_ed' + // mean_flux = + imin = 1; + jmin = 1; + kmin = 1; + imax = dims->nlg[0]-2; + jmax = dims->nlg[1]-2; + kmax = dims->nlg[2]-2; + double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + +// double phip; +// double phim; +// double phip_fluc; //???? do I need const double phip ??? Difference to declaring it within loop? +// double phim_fluc; +// double phip_mean; +// double phim_mean; + double vel_ing_mean = 0.0; + double vel_ed_mean = 0.0; + double vel_ing_fluc; + double vel_ed_fluc; + + if (d_advected !=2 && d_advecting !=2){ for(ssize_t i=imin;i u_ed' + // (b) mix_flux_two = u_ing' + // (c) mean_flux = + // (d) eddy_flux = u_ing' u_ed' + mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0_half[k] ; + mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0_half[k] ; + mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0_half[k] ; + eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0_half[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) {printf("Nan in flux, d1!=2, d2!=2\n");} + + flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k]; } } @@ -177,7 +276,26 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k u_ed' + // (b) mix_flux_two = u_ing' + // (c) mean_flux = + // (d) eddy_flux = u_ing' u_ed' + mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0_half[k+1] ; + mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0_half[k+1] ; + mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0_half[k+1] ; + eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0_half[k+1] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) {printf("Nan in flux, d1=2, d2=2\n");} + + flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k+1]; } } @@ -190,7 +308,26 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k u_ed' + // (b) mix_flux_two = u_ing' + // (c) mean_flux = + // (d) eddy_flux = u_ing' u_ed' + mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0[k] ; + mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0[k] ; + mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0[k] ; + eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) {printf("Nan in flux, d1=2, d2!=2\n");} + + flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0[k]; } } @@ -202,6 +339,14 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou free(flux); free(flux_old); + free(mix_flux_one); + free(mix_flux_two); + free(eddy_flux); + free(mean_flux); + free(vel_advecting_fluc); + free(vel_advected_fluc); + free(vel_advecting_mean); + free(vel_advected_mean); return; diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 63a6d45d..80376308 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -98,27 +98,23 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } // if(ok==0){printf("good decomposition \n");} - imin = 2; - jmin = 2; - kmin = 2; - imax = dims->nlg[0]-3; - jmax = dims->nlg[1]-3; - kmax = dims->nlg[2]-3; + // (3) Compute Fluxes // mix_flux_one = u_ed' // mix_flux_two = u_ing' // eddy_flux = u_ing' u_ed' // mean_flux = + imin = 2; + jmin = 2; + kmin = 2; + imax = dims->nlg[0]-3; + jmax = dims->nlg[1]-3; + kmax = dims->nlg[2]-3; double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? - // double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); - // double eddy_flux; - // double mix_flux_one; - // double mix_flux_two; - // double mean_flux; double phip; double phim; From 3e44d544dd5d2a4097db62db7afdde28c0f7e5ca Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 26 Apr 2016 16:23:36 +0200 Subject: [PATCH 095/511] debugging central ws ql MA --- Csrc/momentum_advection.h | 2 +- Csrc/momentum_advection_central_ws_ql.h | 46 +++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index b3105d60..6818b79b 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -129,7 +129,7 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho weno_fifth_order_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; - case 114: // !!!!!! NOT Finished !!!!!! + case 114: fourth_order_ws_m_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index c8e23ef4..9f41d22b 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -16,6 +16,7 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *vel_int_ed = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -62,6 +63,8 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); + + // (3) compute eddy flux: if (d_advected != 2 && d_advecting !=2){ // exclude w.u, w.v, w.w, u.w, v.w (advection by or of vertical velocity) for(ssize_t i=imin;i 1e-5){a += 1;} + b = flux[ijk] - flux_old[ijk]; + if(b > 1e-5){c += 1;} + } + } + } + if (a > 0){printf("Achtung!!! a > 0\n");} + if (c > 0){printf("Achtung!!! Flux != old Flux (c > 0)\n");} + + // (4) compute mean eddy flux + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); + + + // (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux + for(ssize_t i=imin;i Date: Tue, 26 Apr 2016 16:29:28 +0200 Subject: [PATCH 096/511] debugging central ws ql MA --- Csrc/momentum_advection_central_ws_ql.h | 52 ++++++++++++------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 9f41d22b..6458b877 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -75,8 +75,8 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub const ssize_t ijk = ishift + jshift + k; eddy_flux[ijk] = (vel_int_ing[ijk] - vel_mean_ing[k]) * (vel_int_ed[ijk] - vel_mean_ed[k]) * rho0_half[k]; flux[ijk] = (vel_int_ing[ijk] * vel_int_ed[ijk]) * rho0_half[k]; - flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * - interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k]; +// flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * +// interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k]; } } } @@ -90,8 +90,8 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub const ssize_t ijk = ishift + jshift + k; eddy_flux[ijk] = (vel_int_ing[ijk] - vel_mean_ing[k]) * (vel_int_ed[ijk] - vel_mean_ed[k]) * rho0_half[k+1]; flux[ijk] = (vel_int_ing[ijk] * vel_int_ed[ijk]) * rho0_half[k+1]; - flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * - interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k+1]; +// flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * +// interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k+1]; } } } @@ -105,31 +105,31 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub const ssize_t ijk = ishift + jshift + k; eddy_flux[ijk] = (vel_int_ing[ijk] - vel_mean_ing[k]) * (vel_int_ed[ijk] - vel_mean_ed[k]) * rho0[k]; flux[ijk] = (vel_int_ing[ijk] * vel_int_ed[ijk]) * rho0[k]; - flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * - interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0[k]; +// flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * +// interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0[k]; } } } } - int a = 0; - int c = 0; - double b; - for(ssize_t i=imin;i 1e-5){a += 1;} - b = flux[ijk] - flux_old[ijk]; - if(b > 1e-5){c += 1;} - } - } - } - if (a > 0){printf("Achtung!!! a > 0\n");} - if (c > 0){printf("Achtung!!! Flux != old Flux (c > 0)\n");} +// int a = 0; +// int c = 0; +// double b; +// for(ssize_t i=imin;i 1e-5){a += 1;} +// b = flux[ijk] - flux_old[ijk]; +// if(b > 1e-5){c += 1;} +// } +// } +// } +// if (a > 0){printf("Achtung!!! a > 0\n");} +// if (c > 0){printf("Achtung!!! Flux != old Flux (c > 0)\n");} // (4) compute mean eddy flux horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); @@ -142,8 +142,8 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Tue, 26 Apr 2016 17:33:19 +0200 Subject: [PATCH 097/511] adding SA 4th WS decomp scheme --- Csrc/momentum_advection_central_ws_ql.h | 2 - Csrc/scalar_advection.h | 3 + Csrc/scalar_advection_ql.h | 137 ++++++++++++++++++++++++ 3 files changed, 140 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 6458b877..bec16dd6 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -63,8 +63,6 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); - - // (3) compute eddy flux: if (d_advected != 2 && d_advecting !=2){ // exclude w.u, w.v, w.w, u.w, v.w (advection by or of vertical velocity) for(ssize_t i=imin;inlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + +// const ssize_t imin = 1; +// const ssize_t jmin = 1; +// const ssize_t kmin = 1; +// const ssize_t imax = dims->nlg[0]-2; +// const ssize_t jmax = dims->nlg[1]-2; +// const ssize_t kmax = dims->nlg[2]-2; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sm1 = -sp1 ; + + // (1) average advecting and advected velocity + double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + + horizontal_mean(dims, &velocity[0], &vel_advecting_mean[0]); + horizontal_mean(dims, &scalar[0], &phi_mean[0]); + + // (2) compute eddy fields + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; + for(ssize_t i=imin;i0.0000001){ok = 1; + printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, velocity[ijk]);} + diff = scalar[ijk]-(phi_mean[k] + phi_fluc[ijk]); + if(fabs(diff)>0.0000001){ok = 1; + printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, scalar[ijk]);} + } + } + } + + // (3) Compute Fluxes + // mix_flux_one = u_ed' + // mix_flux_two = u_ing' + // eddy_flux = u_ing' u_ed' + // mean_flux = + imin = 1; + jmin = 1; + kmin = 1; + imax = dims->nlg[0]-2; + jmax = dims->nlg[1]-2; + kmax = dims->nlg[2]-2; + double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + if(d==2){ + for(ssize_t i=imin;i Date: Wed, 27 Apr 2016 13:34:40 +0200 Subject: [PATCH 098/511] debugging SA 4th WS decomp scheme (forgot interpolation) --- Csrc/scalar_advection_ql.h | 48 ++++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index af54e159..a431a0dd 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -187,11 +187,9 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double phi_fluc[ijk] = scalar[ijk] - phi_mean[k]; if(isnan(phi_fluc[ijk])) { - printf("Nan in vel_advected_fluc\n"); - } + printf("Nan in vel_advected_fluc\n");} if(isnan(vel_advecting_fluc[ijk])) { - printf("Nan in vel_advecting_fluc\n"); - } + printf("Nan in vel_advecting_fluc\n");} } } } @@ -203,10 +201,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t k=kmin;k0.0000001){ok = 1; + if(fabs(diff)>0.00001){ok = 1; printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, velocity[ijk]);} diff = scalar[ijk]-(phi_mean[k] + phi_fluc[ijk]); - if(fabs(diff)>0.0000001){ok = 1; + if(fabs(diff)>0.00001){ok = 1; printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, scalar[ijk]);} } } @@ -236,10 +234,14 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j*jstride; for(ssize_t k=kmin;knlg[2]); double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *phi_int_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_int_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -326,11 +333,11 @@ void fourth_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re // (2) average velocity field and interpolated scalar field // for(ssize_t k=kmin;k Date: Wed, 27 Apr 2016 13:53:20 +0200 Subject: [PATCH 099/511] debugging SA 4th WS decomp scheme --- Csrc/scalar_advection_ql.h | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index a431a0dd..9083d9bc 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -194,6 +194,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } } int ok = 0; + int ok_s = 0; for(ssize_t i=imin;i0.00001){ok = 1; printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, velocity[ijk]);} + diff = scalar[ijk]-(phi_mean[k] + phi_fluc[ijk]); - if(fabs(diff)>0.00001){ok = 1; + if(fabs(diff)>0.00001){ok_s = 1; printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, scalar[ijk]);} } } } + if(ok > 0){printf("Problem in decomposition of velocity\n");} +// else{printf("good decomposition of velocity\n");} + if(ok_s > 0){printf("Problem in decomposition of scalar\n");} +// else{printf("good decomposition of scalar\n");} // (3) Compute Fluxes // mix_flux_one = u_ed' @@ -227,6 +233,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + ok = 0; if(d==2){ for(ssize_t i=imin;i Date: Wed, 27 Apr 2016 14:24:04 +0200 Subject: [PATCH 100/511] debugging MA 4th decomp scheme (vel_mean not defined) --- Csrc/momentum_advection_central_ql.h | 1 - Csrc/momentum_advection_central_ws_ql.h | 10 ++-------- Csrc/scalar_advection_ql.h | 2 +- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/Csrc/momentum_advection_central_ql.h b/Csrc/momentum_advection_central_ql.h index 5784d808..cd54ad7f 100644 --- a/Csrc/momentum_advection_central_ql.h +++ b/Csrc/momentum_advection_central_ql.h @@ -85,7 +85,6 @@ void second_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* re // int d_ing = d_advecting; // printf("flux: %d, %d; vel_int[gw+2] = %f\n", d_ad, d_ing, values[0]); horizontal_mean(dims, &vel_int_ing[0], &vel_mean_ing[0]); -// printf("values[gw] = %f\n", values[0]); if (d_advected != d_advecting){ horizontal_mean(dims, &vel_int_ed[0], &vel_mean_ed[0]); } diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index bec16dd6..0ba9fc38 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -270,12 +270,6 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? -// double phip; -// double phim; -// double phip_fluc; //???? do I need const double phip ??? Difference to declaring it within loop? -// double phim_fluc; -// double phip_mean; -// double phim_mean; double vel_ing_mean = 0.0; double vel_ed_mean = 0.0; double vel_ing_fluc; @@ -290,8 +284,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t ijk = ishift + jshift + k; vel_ing_fluc = interp_2(vel_advecting_fluc[ijk],vel_advecting_fluc[ijk+sp1_ing]); vel_ed_fluc = interp_4(vel_advected_fluc[ijk+sm1_ed],vel_advected_fluc[ijk],vel_advected_fluc[ijk+sp1_ed],vel_advected_fluc[ijk+sp2_ed]); - vel_ing_fluc = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); - vel_ed_fluc = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); + vel_ing_mean = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); + vel_ed_mean = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); // vel_ed_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // vel_ing_mean = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 9083d9bc..9bd713c0 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -187,7 +187,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double phi_fluc[ijk] = scalar[ijk] - phi_mean[k]; if(isnan(phi_fluc[ijk])) { - printf("Nan in vel_advected_fluc\n");} + printf("Nan in phi_fluc\n");} if(isnan(vel_advecting_fluc[ijk])) { printf("Nan in vel_advecting_fluc\n");} } From 94ddd1ebe36e410a772aba130fdf17a45152a311 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 27 Apr 2016 22:17:26 +0200 Subject: [PATCH 101/511] debugging MA 4th decomp scheme (vel_mean not defined) --- Csrc/momentum_advection_central_ws_ql.h | 10 ++++------ Csrc/scalar_advection_ql.h | 16 +++++++--------- 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 0ba9fc38..c60608ec 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -205,7 +205,6 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t sp2_ing = 2 * sp1_ing; const ssize_t sm1_ing = -sp1_ing; - // (1) average advecting and advected velocity double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -245,7 +244,6 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou if(fabs(diff)>0.0000001){ ok = 1; printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} - diff = vel_advected[ijk]-(vel_advected_mean[k] + vel_advected_fluc[ijk]); if(fabs(diff)>0.0000001){ ok = 1; @@ -316,8 +314,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t ijk = ishift + jshift + k; vel_ing_fluc = interp_2(vel_advecting_fluc[ijk],vel_advecting_fluc[ijk+sp1_ing]); vel_ed_fluc = interp_4(vel_advected_fluc[ijk+sm1_ed],vel_advected_fluc[ijk],vel_advected_fluc[ijk+sp1_ed],vel_advected_fluc[ijk+sp2_ed]); - vel_ing_fluc = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); - vel_ed_fluc = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); + vel_ing_mean = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); + vel_ed_mean = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); // vel_ed_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // vel_ing_mean = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -348,8 +346,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t ijk = ishift + jshift + k; vel_ing_fluc = interp_2(vel_advecting_fluc[ijk],vel_advecting_fluc[ijk+sp1_ing]); vel_ed_fluc = interp_4(vel_advected_fluc[ijk+sm1_ed],vel_advected_fluc[ijk],vel_advected_fluc[ijk+sp1_ed],vel_advected_fluc[ijk+sp2_ed]); - vel_ing_fluc = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); - vel_ed_fluc = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); + vel_ing_mean = interp_2(vel_advecting_mean[k],vel_advecting_mean[k]); + vel_ed_mean = interp_4(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); // vel_ed_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // vel_ing_mean = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 9bd713c0..31d13960 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -26,8 +26,6 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re // right dimensions ???? (compare to flux in ScalarAdvection) double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *vel_int_ing = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *vel_mean_ing = (double *)malloc(sizeof(double) * dims->nlg[2]); double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_int = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_int = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -242,9 +240,9 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t k=kmin;k Date: Sat, 30 Apr 2016 18:39:43 +0200 Subject: [PATCH 102/511] debugging MA 4th decomp scheme --- Csrc/momentum_advection_central_ws_ql.h | 23 +++++++++++++++++++---- Csrc/scalar_advection_ql.h | 6 +++--- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index c60608ec..40c8e818 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -205,12 +205,22 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t sp2_ing = 2 * sp1_ing; const ssize_t sm1_ing = -sp1_ing; + double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile suffici + // (1) average advecting and advected velocity double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + for(ssize_t k=kmin;knlg[0]-2; jmax = dims->nlg[1]-2; kmax = dims->nlg[2]-2; - double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? +// double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? double vel_ing_mean = 0.0; double vel_ed_mean = 0.0; diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 31d13960..1c87fb22 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -160,9 +160,9 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t sm1 = -sp1 ; // (1) average advecting and advected velocity - double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); horizontal_mean(dims, &velocity[0], &vel_advecting_mean[0]); @@ -199,7 +199,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k0.00001){ok = 1; printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, velocity[ijk]);} From c5e988630720c1187b52e446a56965ac9be71c0e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Sat, 30 Apr 2016 18:56:52 +0200 Subject: [PATCH 103/511] debugging SA 4th decomp scheme; free flux_old --- Csrc/scalar_advection_ql.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 1c87fb22..6889776b 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -238,7 +238,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t j=jmin;j Date: Mon, 2 May 2016 09:09:26 +0200 Subject: [PATCH 104/511] adding DCBL Soares moist case (not yet tested) --- Csrc/momentum_advection_weno_ql.h | 6 +- Forcing.pxd | 1 + Forcing.pyx | 2 + Initialization.pyx | 123 ++++++++++++++++++++++++++++++ Surface.pxd | 17 +++++ Surface.pyx | 114 +++++++++++++++++++++++++-- generate_namelist.py | 115 ++++++++++++++++++++++++++++ 7 files changed, 368 insertions(+), 10 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 80376308..e8d03dc3 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -385,9 +385,9 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs((flux[ijk]-flux_old[ijk]))>fabs(flux_old[ijk])){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs(flux_old[ijk])<1e-10){printf("zero old flux\n");} - } - } - } + } + } + } // printf("flux: %f\n", flux); // printf("values[gw] = %f\n", values[gw]); diff --git a/Forcing.pxd b/Forcing.pxd index 95eabe6f..65625c08 100644 --- a/Forcing.pxd +++ b/Forcing.pxd @@ -102,3 +102,4 @@ cdef class ForcingSoares: cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + diff --git a/Forcing.pyx b/Forcing.pyx index f1034241..3f7c164f 100644 --- a/Forcing.pyx +++ b/Forcing.pyx @@ -37,6 +37,8 @@ cdef class Forcing: self.scheme = ForcingRico() elif casename == 'DCBLSoares': self.scheme = ForcingSoares() + elif casename == 'DCBLSoares_moist': + self.scheme = ForcingSoares() elif casename == 'StableBubble': self.scheme = ForcingNone() else: diff --git a/Initialization.pyx b/Initialization.pyx index b3004e3f..ab3aa8c4 100644 --- a/Initialization.pyx +++ b/Initialization.pyx @@ -39,6 +39,8 @@ def InitializationFactory(namelist): return InitRico elif casename == 'DCBLSoares': return InitSoares + elif casename == 'DCBLSoares_moist': + return InitSoares_moist else: pass @@ -939,6 +941,127 @@ def InitSoares(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, +def InitSoares_moist(Grid.Grid Gr,PrognosticVariables.PrognosticVariables PV, + ReferenceState.ReferenceState RS, Th, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa ): + #Generate the reference profiles + RS.Pg = 1.0e5 #Pressure at ground (Soares) + RS.Tg = 300.0 #Temperature at ground (Soares) + RS.qtg = 5e-3 #Total water mixing ratio at surface: qt = 5 g/kg (Soares) + RS.u0 = 0.01 # velocities removed in Galilean transformation (Soares: u = 0.01 m/s, IOP: 0.0 m/s) + RS.v0 = 0.0 # (Soares: v = 0.0 m/s) + RS.initialize(Gr, Th, NS, Pa) # initialize reference state; done for every case + + #Get the variable number for each of the velocity components + np.random.seed(Pa.rank) + cdef: + Py_ssize_t u_varshift = PV.get_varshift(Gr,'u') + Py_ssize_t v_varshift = PV.get_varshift(Gr,'v') + Py_ssize_t w_varshift = PV.get_varshift(Gr,'w') + Py_ssize_t s_varshift = PV.get_varshift(Gr,'s') + Py_ssize_t qt_varshift = PV.get_varshift(Gr,'qt') # !!!! Problem: if dry Microphysics scheme chosen: qt is no PV + Py_ssize_t i,j,k + Py_ssize_t ishift, jshift, e_varshift + Py_ssize_t ijk + double [:] thetal = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double [:] qt = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double temp + double [:] temp_arr = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + double [:] qt_arr = np.empty((Gr.dims.nlg[2]),dtype=np.double,order='c') + Py_ssize_t count + + #Generate initial perturbations (here we are generating more than we need) ??? where amplitude of perturbations given? + theta_pert = (np.random.random_sample(Gr.dims.npg )-0.5)*0.1 + qt_pert = (np.random.random_sample(Gr.dims.npg )-0.5)*0.025/1000.0 + + # Initial theta (potential temperature) profile (Soares) + for k in xrange(Gr.dims.nlg[2]): + if Gr.zl_half[k] <= 1350.0: + thetal[k] = 300.0 + else: + thetal[k] = 300.0 + 2.0/1000.0 * (Gr.zl_half[k] - 1350.0) + # thetal[k] = 297.3 + 2.0/1000.0 * (Gr.zl_half[k]) + + # # Initial qt profile (Soares) + if Gr.zl_half[k] <= 1350: + qt[k] = 5.0e-3 - (Gr.zl_half[k]) * 3.7e-4 + if Gr.zl_half[k] > 1350: + qt[k] = 5.0e-3 - 1350.0 * 3.7e-4 - (Gr.zl_half[k] - 1350.0) * 9.4e-4 + # __ + if np.isnan(thetal).any(): + print('nan in thetal') + else: + print('No nan in thetal') + if np.isnan(qt).any(): + print('nan in qt') + else: + print('No nan in qt') + # __ + cdef double [:] p0 = RS.p0_half + + # Now loop and set the initial condition + count = 0 + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[u_varshift + ijk] = 0.0 - RS.u0 # original Soares: u = 0.1 + PV.values[v_varshift + ijk] = 0.0 - RS.v0 + PV.values[w_varshift + ijk] = 0.0 + # Set the entropy prognostic variable including a potential temperature perturbation + # fluctuation height = 200m; fluctuation amplitude = 0.1 K + if Gr.zl_half[k] < 200.0: + temp = (thetal[k] + theta_pert[count])*exner_c(RS.p0_half[k]) + temp_arr[k] = (thetal[k] + theta_pert[count])*exner_c(RS.p0_half[k]) + qt_ = qt[k]+qt_pert[count] + qt_arr[k] = qt[k]+qt_pert[count] + else: + temp = (thetal[k]) * exner_c(RS.p0_half[k]) + temp_arr[k] = (thetal[k]) * exner_c(RS.p0_half[k]) + qt_ = qt[k] + qt_arr[k] = qt[k] + # theta_pert_ = 0.0 + # t = (theta[k] + theta_pert_)*exner_c(RS.p0_half[k]) + # PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],temp,qt_,0.0,0.0) # !!!!!!!! produces nans!! + PV.values[s_varshift + ijk] = Th.entropy(RS.p0_half[k],temp,0.0,0.0,0.0) # !!!!!!!! produces nans!! + PV.values[qt_varshift + ijk] = qt_ + count += 1 + + # __ + if np.isnan(temp_arr).any(): + print('nan in temp_arr') + else: + print('No nan in temp_arr') + if np.isnan(qt_arr).any(): + print('nan in qt_arr') + else: + print('No nan in qt_arr') + if np.isnan(PV.values[s_varshift:qt_varshift]).any(): # nans + print('nan in s') + else: + print('No nan in s') + if np.isnan(PV.values[qt_varshift:-1]).any(): + print('nan in qt') + else: + print('No nan in qt') + + # __ + + if 'e' in PV.name_index: + e_varshift = PV.get_varshift(Gr, 'e') + for i in xrange(Gr.dims.nlg[0]): + ishift = i * Gr.dims.nlg[1] * Gr.dims.nlg[2] + for j in xrange(Gr.dims.nlg[1]): + jshift = j * Gr.dims.nlg[2] + for k in xrange(Gr.dims.nlg[2]): + ijk = ishift + jshift + k + PV.values[e_varshift + ijk] = 0.0 + + return + + + def AuxillaryVariables(nml, PrognosticVariables.PrognosticVariables PV, diff --git a/Surface.pxd b/Surface.pxd index 24d0b96e..39e0fe6b 100644 --- a/Surface.pxd +++ b/Surface.pxd @@ -146,6 +146,23 @@ cdef class SurfaceSoares: double [:] u_flux double [:] v_flux + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + + +cdef class SurfaceSoares_moist: + cdef: + double theta_flux + double qt_flux + double z0 + double gustiness + double buoyancy_flux + double theta_surface + double qt_surface + double [:] s_flux + double [:] u_flux + double [:] v_flux cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) diff --git a/Surface.pyx b/Surface.pyx index a6640344..c8faab34 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -764,11 +764,8 @@ cdef class SurfaceSoares: self.theta_surface = 300.0 # K # self.qt_surface = 5.0e-3 # kg/kg - return - - cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): # Sullivan # Bomex: @@ -785,11 +782,8 @@ cdef class SurfaceSoares: NS.add_ts('uw_surface_mean',Gr, Pa) NS.add_ts('vw_surface_mean',Gr, Pa) NS.add_ts('s_flux_surface_mean', Gr, Pa) - - return - # # update adopted and modified from Sullivan + Bomex cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple @@ -854,7 +848,6 @@ cdef class SurfaceSoares: self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor - return @@ -872,6 +865,113 @@ cdef class SurfaceSoares: +cdef class SurfaceSoares_moist: + def __init__(self): + self.theta_flux = 8.0e-3 # K m/s (Bomex) + self.qt_flux = 5.2e-5 # m/s (original: 5.2e-5) (Bomex) + self.z0 = 0.001 #m (Roughness length) + self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* + + self.theta_surface = 300.0 # K + self.qt_surface = 5.0e-3 # kg/kg + return + + cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): # Sullivan + # Bomex: + # self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) + # /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? + # Sullivan: + T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd + self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 + + self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + + NS.add_ts('uw_surface_mean',Gr, Pa) + NS.add_ts('vw_surface_mean',Gr, Pa) + NS.add_ts('s_flux_surface_mean', Gr, Pa) + return + +# # update adopted and modified from Sullivan + Bomex + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): + # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple + + if Pa.sub_z_rank != 0: + return + + cdef: + Py_ssize_t i + Py_ssize_t j + Py_ssize_t gw = Gr.dims.gw + Py_ssize_t ijk, ij + Py_ssize_t imax = Gr.dims.nlg[0] + Py_ssize_t jmax = Gr.dims.nlg[1] + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t istride_2d = Gr.dims.nlg[1] + Py_ssize_t temp_shift = DV.get_varshift(Gr, 'temperature') + Py_ssize_t s_shift = PV.get_varshift(Gr, 's') + Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') + Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') + double dzi = 1.0/Gr.dims.dx[2] + double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi + + # Scalar fluxes (adopted from Bomex) + with nogil: + for i in xrange(imax): + for j in xrange(jmax): + ijk = i * istride + j * jstride + gw + ij = i * istride_2d + j + # Sullivan + # self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] + # Bomex (entropy flux includes qt flux) + self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) + PV.tendencies[s_shift + ijk] += self.s_flux[ij] * tendency_factor + PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor + + # Windspeed (adopted from Sullivan, equivalent to Bomex) + cdef: + Py_ssize_t u_shift = PV.get_varshift(Gr, 'u') + Py_ssize_t v_shift = PV.get_varshift(Gr, 'v') + double [:] windspeed = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1],dtype=np.double,order='c') + compute_windspeed(&Gr.dims, &PV.values[u_shift], &PV.values[v_shift], &windspeed[0],Ref.u0, Ref.v0,self.gustiness) + + # Surface Values: friction velocity, obukhov lenght (adopted from Sullivan, since same Surface parameters prescribed) + cdef : + Py_ssize_t lmo_shift = DV.get_varshift_2d(Gr, 'obukhov_length') + Py_ssize_t ustar_shift = DV.get_varshift_2d(Gr, 'friction_velocity') + with nogil: + for i in xrange(1,imax): + for j in xrange(1,jmax): + ij = i * istride_2d + j + DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + + # Get the shear stresses (adopted from Sullivan, since same Surface parameters prescribed) + for i in xrange(1,imax-1): + for j in xrange(1,jmax-1): + ijk = i * istride + j * jstride + gw + ij = i * istride_2d + j + self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) + self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) + PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor + PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor + return + + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + cdef double tmp + + tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) + NS.write_ts('uw_surface_mean',tmp, Pa) + tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) + NS.write_ts('vw_surface_mean', tmp, Pa) + tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) + NS.write_ts('s_flux_surface_mean', tmp, Pa) + + return + + # Anderson, R. J., 1993: A Study of Wind Stress and Heat Flux over the Open # Ocean by the Inertial-Dissipation Method. J. Phys. Oceanogr., 23, 2153--“2161. diff --git a/generate_namelist.py b/generate_namelist.py index 85a6bc12..07c73449 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -32,6 +32,8 @@ def main(): namelist = Rico() elif case_name == 'DCBLSoares': namelist = DCBLSoares() + elif case_name == 'DCBLSoares_moist': + namelist = DCBLSoares_moist() else: print('Not a vaild case name') exit() @@ -917,6 +919,119 @@ def DCBLSoares(): namelist['restart']['input_path'] = './' namelist['restart']['frequency'] = 600.0 + namelist['visualization'] = {} + namelist['visualization']['frequency'] = 1800.0 + + return namelist + + + +def DCBLSoares_moist(): + # adopted from: "An eddy-diffusivity/mass-flux parametrization for dry and shallow cumulus convection", + # By P. M. M. SOARES, P. M. A. MIRANDA, A. P. SIEBESMA and J. TEIXEIRA, Q. J. R. Meteorol. Soc. (2004) + # modifications: qt initial profile and flux set to zero, since no dry thermodynamics without condensation given + namelist = {} + + namelist['grid'] = {} + namelist['grid']['dims'] = 3 + # Soares (2004): domain size = 6400 x 6400 m, domain height = 3000 (?) m; dx = ?, dy = ?, dz = 20 m + # Nieuwstadt: domain size = ?, domain height = 2400m; dx = dy = 60 m, dz = 50-60 m + # IOP Paper, old code: domain size = 6400 x 6400 m, domain height = 3750 m + namelist['grid']['nx'] = 256 # IOP + namelist['grid']['ny'] = 256 # IOP + namelist['grid']['nz'] = 150 # IOP + namelist['grid']['gw'] = 3 # for 2nd order + namelist['grid']['dx'] = 25.0 # IOP + namelist['grid']['dy'] = 25.0 # IOP + namelist['grid']['dz'] = 25.0 # IOP + + namelist['mpi'] = {} + namelist['mpi']['nprocx'] = 1 + namelist['mpi']['nprocy'] = 1 + namelist['mpi']['nprocz'] = 1 + + namelist['time_stepping'] = {} + namelist['time_stepping']['ts_type'] = 3 # seems to be 3 in all cases??? + namelist['time_stepping']['cfl_limit'] = 0.3 # default: 0.7; IOP: 0.3 + namelist['time_stepping']['dt_initial'] = 10.0 + namelist['time_stepping']['dt_max'] = 10.0 + namelist['time_stepping']['t_max'] = 6*3600.0 + + namelist['thermodynamics'] = {} + namelist['thermodynamics']['latentheat'] = 'constant' # 'constant' or 'variable', for Clausius Clapeyron calculation + + namelist['microphysics'] = {} + namelist['microphysics']['scheme'] = 'None_SA' # DCBL: 'None_Dry', Bomex: 'None_SA'; options: 'None_Dry' (no qt as Progn. Var.), 'None_SA', 'SB_Liquid' + namelist['microphysics']['phase_partitioning'] = 'liquid_only' # seems to be this in all cases??? + + namelist['sgs'] = {} + namelist['sgs']['scheme'] = 'Smagorinsky' + namelist['sgs']['Smagorinsky'] = {} + namelist['sgs']['Smagorinsky']['cs'] = 0.17 + namelist['sgs']['UniformViscosity'] = {} + namelist['sgs']['UniformViscosity']['viscosity'] = 1.2 + namelist['sgs']['UniformViscosity']['diffusivity'] = 3.6 + namelist['sgs']['TKE'] = {} + namelist['sgs']['TKE']['ck'] = 0.1 + namelist['sgs']['TKE']['cn'] = 0.76 + + namelist['diffusion'] = {} + namelist['diffusion']['qt_entropy_source'] = False # seems to be set to False for all cases??? + + # 2 = second_order_m + # 32 = second_order_ml_m + namelist['momentum_transport'] = {} + namelist['momentum_transport']['order'] = 2 + # 2 = second_order_a + namelist['scalar_transport'] = {} + namelist['scalar_transport']['order'] = 2 + + namelist['damping'] = {} + namelist['damping']['scheme'] = 'Rayleigh' # no more 'DampingToDomainMean' ??? + namelist['damping']['Rayleigh'] = {} + namelist['damping']['Rayleigh']['gamma_r'] = 0.02 + namelist['damping']['Rayleigh']['z_d'] = 800.0 # ??? depth of damping layer? + + namelist['output'] = {} + namelist['output']['output_root'] = './' + + namelist['restart'] = {} + namelist['restart']['output'] = True + namelist['restart']['init_from'] = False + namelist['restart']['input_path'] = './' + namelist['restart']['frequency'] = 600.0 + + # profile outputs + namelist['stats_io'] = {} + namelist['stats_io']['stats_dir'] = 'stats' + namelist['stats_io']['auxiliary'] = ['None'] # AuxiliaryStatistics + namelist['stats_io']['frequency'] = 900.0 + + # field outputs + namelist['fields_io'] = {} + namelist['fields_io']['fields_dir'] = 'fields' + namelist['fields_io']['frequency'] = 1800.0 + namelist['fields_io']['diagnostic_fields'] = ['temperature','viscosity'] # defines diagnostic variable output fields (progn. variables output in restart files?!) + + # Conditional Statistics + namelist['conditional_stats'] ={} + namelist['conditional_stats']['classes'] = ['Spectra'] + namelist['conditional_stats']['frequency'] = 600.0 + namelist['conditional_stats']['stats_dir'] = 'cond_stats' + + namelist['meta'] = {} + namelist['meta']['simname'] = 'DCBLSoares_moist' + namelist['meta']['casename'] = 'DCBLSoares_moist' + + namelist['restart'] = {} + namelist['restart']['output'] = False + namelist['restart']['init_from'] = False + namelist['restart']['input_path'] = './' + namelist['restart']['frequency'] = 600.0 + + namelist['visualization'] = {} + namelist['visualization']['frequency'] = 1800.0 + return namelist From 36e3d79e069fa916df31f8ca21d4acf9e4a3123e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 10:39:48 +0200 Subject: [PATCH 105/511] debugging MA central 4th was decomp --- Csrc/momentum_advection_central_ws_ql.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 40c8e818..9c08ca0e 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -285,8 +285,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou double vel_ing_mean = 0.0; double vel_ed_mean = 0.0; - double vel_ing_fluc; - double vel_ed_fluc; + double vel_ing_fluc = 0.0; + double vel_ed_fluc = 0.0; if (d_advected !=2 && d_advecting !=2){ for(ssize_t i=imin;i Date: Mon, 2 May 2016 12:29:10 +0200 Subject: [PATCH 106/511] print statements --- Csrc/momentum_advection_weno_ql.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index e8d03dc3..fca018f0 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -375,19 +375,21 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } } - + int count = 0; for(ssize_t i=imin;i0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){count = count + 1;} +// if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs((flux[ijk]-flux_old[ijk]))>fabs(flux_old[ijk])){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs(flux_old[ijk])<1e-10){printf("zero old flux\n");} } } } + printf("Fluxes differences: count = %d", count); // printf("flux: %f\n", flux); // printf("values[gw] = %f\n", values[gw]); From 4bc2d6004abd8254d22b759f336da52aaedc3a5e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 12:30:00 +0200 Subject: [PATCH 107/511] refactoring --- Csrc/momentum_advection_weno_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index e8d03dc3..4d4be494 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -382,7 +382,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.1){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs((flux[ijk]-flux_old[ijk]))>fabs(flux_old[ijk])){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} // if(fabs(flux_old[ijk])<1e-10){printf("zero old flux\n");} } @@ -542,4 +542,4 @@ void weno_fifth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double tendency, d_advected, d_advecting); free(flux); return; - } \ No newline at end of file + } From 223d2e852a984c313a0efa56828ea81a4e2bc3d3 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 13:12:22 +0200 Subject: [PATCH 108/511] debugging SA weno 5 --- Csrc/momentum_advection_weno_ql.h | 3 ++- Csrc/scalar_advection_ql.h | 19 +++++++------------ 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index f4535e96..475c4c0d 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -389,7 +389,8 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } } } - printf("Fluxes differences: count = %d", count); + if(count > 0){printf("MA Fluxes differences: count = %d\n", count);} + // printf("flux: %f\n", flux); // printf("values[gw] = %f\n", values[gw]); diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 6889776b..ce334511 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -510,20 +510,16 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // ????? different computation of mean eddy-flux // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; - phip = interp_weno5(phi_mean[k + sm2], // ????????? correct for 1D profiles?? - phi_mean[k + sm1], - phi_mean[k], - phi_mean[k + sp1], - phi_mean[k + sp2]); - phim = interp_weno5(phi_mean[k + sp3], - phi_mean[k + sp2], - phi_mean[k + sp1], - phi_mean[k], - phi_mean[k + sm1]); + // ????????? correct for 1D profiles?? +// phip = interp_weno5(phi_mean[k + sm2],phi_mean[k + sm1],phi_mean[k],phi_mean[k + sp1],phi_mean[k + sp2]); +// phim = interp_weno5(phi_mean[k + sp3],phi_mean[k + sp2],phi_mean[k + sp1],phi_mean[k],phi_mean[k + sm1]); + phip = interp_weno5(phi_mean[k - 2],phi_mean[k - 1],phi_mean[k],phi_mean[k + 1],phi_mean[k + 2]); + phim = interp_weno5(phi_mean[k + 3],phi_mean[k + 2],phi_mean[k + 1],phi_mean[k],phi_mean[k - 1]); + mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient // mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; @@ -534,7 +530,6 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do //Upwind for positive velocity const double phip = interp_weno5(scalar[ijk + sm2], - scalar[ijk + sm1], scalar[ijk], scalar[ijk + sp1], From 089f73fd1a0e647639b2da4cf446423cc268899d Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 13:31:46 +0200 Subject: [PATCH 109/511] changing interpolation of mean fields in MA weno5 --- Csrc/momentum_advection_weno_ql.h | 84 ++++++++++++++++++------------- 1 file changed, 48 insertions(+), 36 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 475c4c0d..5b66035d 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -49,12 +49,16 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (1) average advecting and advected velocity double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advected_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advected_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advecting_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); - horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean[0]); - horizontal_mean(dims, &vel_advected[0], &vel_advected_mean[0]); +// horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean[0]); + horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean_[0]); +// horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); + horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); // horizontal_mean_const(dims, &vel_advecting[0], &vel_advecting_mean[0]); // horizontal_mean_const(dims, &vel_advected[0], &vel_advected_mean[0]); @@ -68,6 +72,9 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean[k]; vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean[k]; + vel_advecting_mean[ijk] = vel_advecting_mean_[k]; + vel_advected_mean[ijk] = vel_advected_mean_[k]; + if(isnan(vel_advected_fluc[ijk])) { printf("Nan in vel_advected_fluc\n"); } @@ -138,22 +145,27 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); + phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); +// phip_mean = interp_weno5(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); + // Upwind for negative velocity phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); + phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); + +// phim_mean = phip_mean; +// phim_mean = interp_weno5(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); // phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -223,22 +235,22 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); - // Upwind for negative velocity + phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); + phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); + phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); // phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -305,22 +317,22 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); - // Upwind for negative velocity + phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); + phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k], - vel_advected_mean[k]); + phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); // phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect From a57582f9da623ed4ac00c4874ce5e404d6a9157c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 15:18:29 +0200 Subject: [PATCH 110/511] debugging MA 4th decomp --- Csrc/momentum_advection_central_ws_ql.h | 224 ++++++++---------------- Csrc/momentum_advection_weno_ql.h | 4 + 2 files changed, 74 insertions(+), 154 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 9c08ca0e..a94f82af 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -166,154 +166,91 @@ void fourth_order_ws_m_ql (struct DimStruct *dims, double* restrict rho0, doub - -// !!!!!! test if doing the correct thing !!!!!! void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict alpha0, double* restrict alpha0_half, double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - if (d_advected==1 && d_advecting==1){ - printf("4th order WS decomposition Momentum Transport \n");} + if(d_advected==2 & d_advecting==2){ + printf("4th order Momentum Transport decomp \n");} // Dynamically allocate flux array - double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + double *vel_ed_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ing_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ed_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_ing_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_ed_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ing_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; -// const ssize_t imin = 1; -// const ssize_t jmin = 1; -// const ssize_t kmin = 1; -// const ssize_t imax = dims->nlg[0]-2; -// const ssize_t jmax = dims->nlg[1]-2; -// const ssize_t kmax = dims->nlg[2]-2; ssize_t imin = 0; ssize_t jmin = 0; ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; ssize_t jmax = dims->nlg[1]; ssize_t kmax = dims->nlg[2]; - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp2_ed = 2 * sp1_ed ; - const ssize_t sm1_ed = -sp1_ed ; - - const ssize_t sp1_ing = stencil[d_advected]; - const ssize_t sp2_ing = 2 * sp1_ing; - const ssize_t sm1_ing = -sp1_ing; - - double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile suffici + ssize_t i,j,k; - // (1) average advecting and advected velocity - double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_advected_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + // (1) compute mean velocities + horizontal_mean(dims, &vel_advecting[0], &vel_ing_mean_[0]); + horizontal_mean(dims, &vel_advected[0], &vel_ed_mean_[0]); - for(ssize_t k=kmin;k0.0000001){ - ok = 1; - printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} - diff = vel_advected[ijk]-(vel_advected_mean[k] + vel_advected_fluc[ijk]); - if(fabs(diff)>0.0000001){ - ok = 1; - printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} + vel_ing_fluc[ijk] = vel_advecting[ijk] - vel_ing_mean[ijk]; + vel_ed_fluc[ijk] = vel_advected[ijk] - vel_ed_mean[ijk]; } } } - // (3) Compute Fluxes - // mix_flux_one = u_ed' - // mix_flux_two = u_ing' - // eddy_flux = u_ing' u_ed' - // mean_flux = + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2 * sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2 * sp1_ing; + const ssize_t sm1_ing = -sp1_ing; + imin = 1; jmin = 1; kmin = 1; + imax = dims->nlg[0]-2; jmax = dims->nlg[1]-2; kmax = dims->nlg[2]-2; -// double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? - - double vel_ing_mean = 0.0; - double vel_ed_mean = 0.0; - double vel_ing_fluc = 0.0; - double vel_ed_fluc = 0.0; - if (d_advected !=2 && d_advecting !=2){ + if (d_advected != 2 && d_advecting !=2){ for(ssize_t i=imin;i u_ed' - // (b) mix_flux_two = u_ing' - // (c) mean_flux = - // (d) eddy_flux = u_ing' u_ed' - mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0_half[k] ; - mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0_half[k] ; - mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0_half[k] ; - eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0_half[k] ; - - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - if(isnan(flux[ijk])) {printf("Nan in flux, d1!=2, d2!=2\n");} - + const double flux_eddy = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0_half[k]; + const double flux_m1 = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0_half[k]; + const double flux_m2 = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k]; + const double flux_mean = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k]; + + flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k]; } @@ -327,24 +264,16 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k u_ed' - // (b) mix_flux_two = u_ing' - // (c) mean_flux = - // (d) eddy_flux = u_ing' u_ed' - mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0_half[k+1] ; - mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0_half[k+1] ; - mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0_half[k+1] ; - eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0_half[k+1] ; - - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - if(isnan(flux[ijk])) {printf("Nan in flux, d1=2, d2=2\n");} + const double flux_eddy = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0_half[k+1]; + const double flux_m1 = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0_half[k+1]; + const double flux_m2 = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k+1]; + const double flux_mean = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k+1]; + + flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k+1]; @@ -359,24 +288,16 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k u_ed' - // (b) mix_flux_two = u_ing' - // (c) mean_flux = - // (d) eddy_flux = u_ing' u_ed' - mix_flux_one[ijk] = vel_ing_mean * vel_ed_fluc * rho0[k] ; - mix_flux_two[ijk] = vel_ing_fluc * vel_ed_mean * rho0[k] ; - mean_flux[k] = vel_ing_mean * vel_ed_mean * rho0[k] ; - eddy_flux[ijk] = vel_ing_fluc * vel_ed_fluc * rho0[k] ; - - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - if(isnan(flux[ijk])) {printf("Nan in flux, d1=2, d2!=2\n");} + const double flux_eddy = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0[k+1]; + const double flux_m1 = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_fluc[ijk+sm1_ed],vel_ed_fluc[ijk],vel_ed_fluc[ijk+sp1_ed],vel_ed_fluc[ijk+sp2_ed]) * rho0[k+1]; + const double flux_m2 = interp_2(vel_ing_fluc[ijk],vel_ing_fluc[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0[k+1]; + const double flux_mean = interp_2(vel_ing_mean[ijk],vel_ing_mean[ijk+sp1_ing]) * + interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0[k+1]; + + flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0[k]; @@ -387,18 +308,13 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); - free(flux); free(flux_old); - free(mix_flux_one); - free(mix_flux_two); - free(eddy_flux); - free(mean_flux); - free(vel_advecting_fluc); - free(vel_advected_fluc); - free(vel_advecting_mean); - free(vel_advected_mean); - - + free(vel_ed_mean); + free(vel_ing_mean); + free(vel_ed_mean_); + free(vel_ing_mean_); + free(vel_ed_fluc); + free(vel_ing_fluc); return; } diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 5b66035d..bec22928 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -84,6 +84,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } } } + + free(vel_advected_mean_); + free(vel_advecting_mean_); + int ok = 0; for(ssize_t i=imin;i Date: Mon, 2 May 2016 15:20:27 +0200 Subject: [PATCH 111/511] debugging MA 4th decomp --- Csrc/momentum_advection_central_ws_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index a94f82af..7884a294 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -171,7 +171,7 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - if(d_advected==2 & d_advecting==2){ + if(d_advected==2 && d_advecting==2){ printf("4th order Momentum Transport decomp \n");} // Dynamically allocate flux array From fd29ed8c223929fc547ec616f217c106c7a4d167 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 15:39:17 +0200 Subject: [PATCH 112/511] debugging MA weno5 decomp --- Csrc/momentum_advection_weno_ql.h | 59 ++++++++++++++++--------------- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index bec22928..0a045de9 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -14,19 +14,12 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do if (d_advected==1 && d_advecting==1){ printf("WENO5 decompositioned Momentum Transport \n");} - // Dynamically allocate flux array double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; -// const ssize_t imin = 2; -// const ssize_t jmin = 2; -// const ssize_t kmin = 2; -// const ssize_t imax = dims->nlg[0]-3; -// const ssize_t jmax = dims->nlg[1]-3; -// const ssize_t kmax = dims->nlg[2]-3; ssize_t imin = 0; ssize_t jmin = 0; ssize_t kmin = 0; @@ -57,7 +50,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean[0]); horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean_[0]); -// horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); +// horizontal_mean(dims, &vel_advected[0], &vel_advected_mean[0]); horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); // horizontal_mean_const(dims, &vel_advecting[0], &vel_advecting_mean[0]); // horizontal_mean_const(dims, &vel_advected[0], &vel_advected_mean[0]); @@ -69,12 +62,12 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j * jstride; for(ssize_t k=kmin;k0.0000001){ + ok = 1; + printf("!!! decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} + + diff = vel_advected[ijk]-(vel_advected_mean[ijk] + vel_advected_fluc[ijk]); + if(fabs(diff)>0.0000001){ + ok = 1; + printf("!!! decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} + + diff = vel_advecting[ijk]-(vel_advecting_mean_[k] + vel_advecting_fluc[ijk]); if(fabs(diff)>0.0000001){ ok = 1; printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} - diff = vel_advected[ijk]-(vel_advected_mean[k] + vel_advected_fluc[ijk]); + diff = vel_advected[ijk]-(vel_advected_mean_[k] + vel_advected_fluc[ijk]); if(fabs(diff)>0.0000001){ ok = 1; printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} @@ -108,7 +110,8 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } } // if(ok==0){printf("good decomposition \n");} - + free(vel_advected_mean_); + free(vel_advecting_mean_); // (3) Compute Fluxes @@ -176,10 +179,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' // (b) mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k]); + vel_adv = interp_4(vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; @@ -261,10 +264,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k]); + vel_adv = interp_4(vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; @@ -343,10 +346,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k], - vel_advecting_mean[k]); + vel_adv = interp_4(vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk]); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; From d7e44c2d648d990a218dd5f42d686e293c5371ec Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 15:43:08 +0200 Subject: [PATCH 113/511] print statement --- Csrc/momentum_advection_weno_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 0a045de9..0b467ce1 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -401,9 +401,9 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k0.01){count = count + 1;} +// if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){count = count + 1;} // if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} -// if(fabs((flux[ijk]-flux_old[ijk]))>fabs(flux_old[ijk])){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} + if(fabs((flux[ijk]-flux_old[ijk]))>0.05*fabs(flux_old[ijk])){count = count + 1;} // if(fabs(flux_old[ijk])<1e-10){printf("zero old flux\n");} } } From e6b26b8c85102407a21b24257131ac13dba066c9 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 16:43:46 +0200 Subject: [PATCH 114/511] print statement --- Csrc/momentum_advection_weno_ql.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 0b467ce1..5b57c0fc 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -395,20 +395,23 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } int count = 0; + max = 0; for(ssize_t i=imin;i0.01){count = count + 1;} // if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} - if(fabs((flux[ijk]-flux_old[ijk]))>0.05*fabs(flux_old[ijk])){count = count + 1;} + if(diff>0.05*fabs(flux_old[ijk])){count = count + 1;} + if(max 0){printf("MA Fluxes differences: count = %d\n", count);} + if(count > 0){printf("MA Fluxes differences: count = %d, max = %f\n", count, max);} // printf("flux: %f\n", flux); From 1ce85ffe1673026f30fada722d6907ee33cf4bc1 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 16:45:00 +0200 Subject: [PATCH 115/511] print statement --- Csrc/momentum_advection_weno_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 5b57c0fc..ad293ee4 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -402,7 +402,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k0.01){count = count + 1;} // if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} if(diff>0.05*fabs(flux_old[ijk])){count = count + 1;} From db5cbac99104b9643900fdc2e17150abd6b83616 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 16:45:51 +0200 Subject: [PATCH 116/511] print --- Csrc/momentum_advection_weno_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index ad293ee4..5854be11 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -395,7 +395,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do } int count = 0; - max = 0; + double max = 0.0; for(ssize_t i=imin;i Date: Mon, 2 May 2016 21:59:45 +0200 Subject: [PATCH 117/511] print --- Csrc/momentum_advection_central_ws_ql.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 7884a294..61f8b4a1 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -217,6 +217,24 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou } } + int ok_ing = 0; + int ok_ed = 0; + for(i=imin; i0.00001){ok_ing = ok_ing + 1;} + diff = vel_advected[ijk] - (vel_ed_fluc[ijk] + vel_mean_ed[ijk]); + if(fabs(diff)>0.00001){ok_ed = ok_ed + 1;} + } + } + } + if(ok_ing=1){printf("problem decomposition advecting: count = %f",ok_ing);} + if(ok_ed=1){printf("problem decomposition advected: count = %f",ok_ed);} + const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; const ssize_t sp2_ed = 2 * sp1_ed ; From f4f69818db8b7aad7b62bb647541ef8a301ad6ab Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 22:01:50 +0200 Subject: [PATCH 118/511] print --- Csrc/momentum_advection_central_ws_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 61f8b4a1..b1499481 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -232,8 +232,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou } } } - if(ok_ing=1){printf("problem decomposition advecting: count = %f",ok_ing);} - if(ok_ed=1){printf("problem decomposition advected: count = %f",ok_ed);} + if(ok_ing=1){printf("problem decomposition advecting: count = %d",ok_ing);} + if(ok_ed=1){printf("problem decomposition advected: count = %d",ok_ed);} const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; From 7474592c7dd4138131c09048330e8409d047fa11 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 22:02:51 +0200 Subject: [PATCH 119/511] print --- Csrc/momentum_advection_central_ws_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index b1499481..44aa1272 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -232,8 +232,8 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou } } } - if(ok_ing=1){printf("problem decomposition advecting: count = %d",ok_ing);} - if(ok_ed=1){printf("problem decomposition advected: count = %d",ok_ed);} + if(ok_ing==1){printf("problem decomposition advecting: count = %d",ok_ing);} + if(ok_ed==1){printf("problem decomposition advected: count = %d",ok_ed);} const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; From 50bf3e02179339a180530a12ca27dac3dd19c259 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 2 May 2016 22:04:08 +0200 Subject: [PATCH 120/511] print --- Csrc/momentum_advection_central_ws_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 44aa1272..caef4180 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -225,9 +225,9 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou const ssize_t jshift = j * jstride; for(k=kmin; k0.00001){ok_ing = ok_ing + 1;} - diff = vel_advected[ijk] - (vel_ed_fluc[ijk] + vel_mean_ed[ijk]); + diff = vel_advected[ijk] - (vel_ed_fluc[ijk] + vel_ed_mean[ijk]); if(fabs(diff)>0.00001){ok_ed = ok_ed + 1;} } } From a16be908063607df810005ecefcc4a1019e03e0b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 3 May 2016 13:02:02 +0200 Subject: [PATCH 121/511] adding u to visualisation files --- BM_files/MomentumAdvection_QL.pxd | 14 --- BM_files/MomentumAdvection_QL.pyx | 134 ---------------------------- BM_files/ScalarAdvection_QL.pxd | 21 ----- BM_files/ScalarAdvection_QL.pyx | 141 ------------------------------ VisualizationOutput.pyx | 2 +- 5 files changed, 1 insertion(+), 311 deletions(-) delete mode 100644 BM_files/MomentumAdvection_QL.pxd delete mode 100644 BM_files/MomentumAdvection_QL.pyx delete mode 100644 BM_files/ScalarAdvection_QL.pxd delete mode 100644 BM_files/ScalarAdvection_QL.pyx diff --git a/BM_files/MomentumAdvection_QL.pxd b/BM_files/MomentumAdvection_QL.pxd deleted file mode 100644 index d0ed6bbb..00000000 --- a/BM_files/MomentumAdvection_QL.pxd +++ /dev/null @@ -1,14 +0,0 @@ -cimport Grid -cimport PrognosticVariables -cimport ParallelMPI -cimport ReferenceState -from NetCDFIO cimport NetCDFIO_Stats - -cdef class MomentumAdvection: - cdef: - Py_ssize_t order - - cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) - cpdef double[:, :, :] get_flux(self, Py_ssize_t i_advected, Py_ssize_t i_advecting, Grid.Grid Gr) diff --git a/BM_files/MomentumAdvection_QL.pyx b/BM_files/MomentumAdvection_QL.pyx deleted file mode 100644 index d7d95785..00000000 --- a/BM_files/MomentumAdvection_QL.pyx +++ /dev/null @@ -1,134 +0,0 @@ -#!python -#cython: boundscheck=False -#cython: wraparound=False -#cython: initializedcheck=False -#cython: cdivision=True - -cimport Grid -cimport PrognosticVariables -cimport ParallelMPI -cimport ReferenceState -#from FluxDivergence cimport momentum_flux_divergence -from NetCDFIO cimport NetCDFIO_Stats - - -import numpy as np -cimport numpy as np - -cdef extern from "momentum_advection.h": - void compute_advective_tendencies_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, - double *alpha0, double *alpha0_half, double *vel_advected, - double *vel_advecting, double *tendency, Py_ssize_t d_advected, - Py_ssize_t d_advecting, Py_ssize_t scheme) nogil -# cdef extern from "momentum_advection_ql.h": -# void compute_eddy_fluxes_m(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *vel_advected, double *vel_advecting, -# double *flux, Py_ssize_t d_advected, Py_ssize_t d_advecting, Py_ssize_t scheme) nogil -cdef class MomentumAdvection: - def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): - try: - self.order = namelist['momentum_transport']['order'] - except: - Pa.root_print( - 'momentum_transport order not given in namelist') - Pa.root_print('Killing simulation now!') - Pa.kill() - - return - - cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - - #for i in xrange(Gr.dims.dims): - # NS.add_profile(PV.velocity_names_directional[i] + '_flux_z',Gr,Pa) - - return - - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs, PrognosticVariables.PrognosticVariables PV, ParallelMPI.ParallelMPI Pa): - - cdef: - Py_ssize_t i_advecting # Direction of advecting velocity - Py_ssize_t i_advected # Direction of momentum component - # Shift to beginning of momentum (velocity) component in the - # PV.values array - Py_ssize_t shift_advected - # Shift to beginning of advecting velocity componentin the - # PV.values array - Py_ssize_t shift_advecting - - - for i_advected in xrange(Gr.dims.dims): - # Compute the shift to the starting location of the advected - # velocity in the PV values array - shift_advected = PV.velocity_directions[i_advected] * Gr.dims.npg - for i_advecting in xrange(Gr.dims.dims): - - # Compute the shift to the starting location of the advecting - # velocity in the PV values array - shift_advecting = PV.velocity_directions[ - i_advecting] * Gr.dims.npg - - # Compute the fluxes - compute_advective_tendencies_m(&Gr.dims, &Rs.rho0[0], &Rs.rho0_half[0], &Rs.alpha0[0], &Rs.alpha0_half[0], - &PV.values[shift_advected], &PV.values[shift_advecting], - &PV.tendencies[shift_advected], i_advected, i_advecting, self.order) - return - - - cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - # cdef: - # Py_ssize_t i_advected, i_advecting = 2, shift_flux, k - # double[:] tmp - # double [:] tmp_interp = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') - # - # - # for i_advected in xrange(Gr.dims.dims): - # shift_flux = i_advected * Gr.dims.dims* Gr.dims.npg + i_advecting * Gr.dims.npg - # tmp = Pa.HorizontalMean(Gr, &self.flux[shift_flux]) - # if i_advected < 2: - # for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): - # tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) - # else: - # tmp_interp[:] = tmp[:] - # NS.write_profile(PV.velocity_names_directional[i_advected] + '_flux_z', tmp_interp[Gr.dims.gw:-Gr.dims.gw], Pa) - - return - - cpdef double [:, :, :] get_flux(self, Py_ssize_t i_advected, Py_ssize_t i_advecting, Grid.Grid Gr): - ''' - Returns momentum flux tensor component. - :param i_advected: direction of advection velocity - :param i_advecting: direction of advecting velocity - :param Gr: Grid class - :return: memory view type double rank-3 - ''' - cdef: - Py_ssize_t shift_flux = i_advected * Gr.dims.dims * Gr.dims.npg + i_advecting * Gr.dims.npg - Py_ssize_t i, j, k, ijk, ishift, jshift - Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] - Py_ssize_t jstride = Gr.dims.nlg[2] - - Py_ssize_t imin = 0 - Py_ssize_t jmin = 0 - Py_ssize_t kmin = 0 - - Py_ssize_t imax = Gr.dims.nlg[0] - Py_ssize_t jmax = Gr.dims.nlg[1] - Py_ssize_t kmax = Gr.dims.nlg[2] - - cdef double[:, :, :] return_flux = np.empty((Gr.dims.nlg[0], Gr.dims.nlg[1], Gr.dims.nlg[2]), dtype=np.double, order='c') - cdef double[:] flux = self.flux - - with nogil: - for i in xrange(imin, imax): - ishift = i * istride - for j in xrange(jmin, jmax): - jshift = j * jstride - for k in xrange(kmin, kmax): - return_flux[ - i, - j, - k] = flux[ - shift_flux + - ishift + - jshift + - k] - return return_flux diff --git a/BM_files/ScalarAdvection_QL.pxd b/BM_files/ScalarAdvection_QL.pxd deleted file mode 100644 index 3b835e9b..00000000 --- a/BM_files/ScalarAdvection_QL.pxd +++ /dev/null @@ -1,21 +0,0 @@ -cimport Grid -cimport PrognosticVariables -cimport ParallelMPI -cimport ReferenceState -cimport DiagnosticVariables -cimport TimeStepping -from NetCDFIO cimport NetCDFIO_Stats -from Thermodynamics cimport LatentHeat - -cdef class ScalarAdvection: - - cdef: - double [:] flux - Py_ssize_t order - Py_ssize_t order_sedimentation - double (*L_fp)(double T, double Lambda) nogil - double (*Lambda_fp)(double T) nogil - - cpdef initialize(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) \ No newline at end of file diff --git a/BM_files/ScalarAdvection_QL.pyx b/BM_files/ScalarAdvection_QL.pyx deleted file mode 100644 index 47b64299..00000000 --- a/BM_files/ScalarAdvection_QL.pyx +++ /dev/null @@ -1,141 +0,0 @@ -#!python -#cython: boundscheck=False -#cython: wraparound=False -#cython: initializedcheck=False -#cython: cdivision=True - -cimport Grid -cimport PrognosticVariables -cimport ParallelMPI -cimport ReferenceState -cimport DiagnosticVariables -cimport TimeStepping -from NetCDFIO cimport NetCDFIO_Stats - -from FluxDivergence cimport scalar_flux_divergence -from Thermodynamics cimport LatentHeat - -import numpy as np -cimport numpy as np - -import cython - -cdef extern from "scalar_advection.h": - void compute_advective_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, - double *scalar, double* flux, int d, int scheme) nogil -cdef extern from "scalar_advection_ql.h": - void compute_eddy_fluxes_a(Grid.DimStruct *dims, double *rho0, double *rho0_half, double *velocity, double *scalar, double* flux, int d, int scheme) nogil - - void compute_qt_sedimentation_s_source(Grid.DimStruct *dims, double *p0_half, double* rho0_half, double *flux, - double* qt, double* qv, double* T, double* tendency, double (*lam_fp)(double), - double (*L_fp)(double, double), double dx, Py_ssize_t d)nogil - - -cdef class ScalarAdvection: - def __init__(self, namelist, LatentHeat LH, ParallelMPI.ParallelMPI Pa): - - self.L_fp = LH.L_fp - self.Lambda_fp = LH.Lambda_fp - - try: - self.order = namelist['scalar_transport']['order'] - except: - Pa.root_print('scalar_transport order not given in namelist') - Pa.root_print('Killing simulation now!') - Pa.kill() - Pa.kill() - try: - self.order_sedimentation = namelist['scalar_transport']['order_sedimentation'] - except: - self.order_sedimentation = self.order - - - return - - cpdef initialize(self,Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - - self.flux = np.zeros((PV.nv_scalars*Gr.dims.npg*Gr.dims.dims,),dtype=np.double,order='c') - - #Initialize output fields - for i in xrange(PV.nv): - if PV.var_type[i] == 1: - NS.add_profile(PV.index_name[i] + '_flux_z',Gr,Pa) - - - return - - cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Rs,PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa): - - cdef: - Py_ssize_t d, i, vel_shift,scalar_shift, scalar_count = 0, flux_shift - Py_ssize_t s_shift = PV.get_varshift(Gr,'s') - Py_ssize_t t_shift = DV.get_varshift(Gr,'temperature') - Py_ssize_t ql_shift, qv_shift, qt_shift - - for i in xrange(PV.nv): #Loop over the prognostic variables - if PV.var_type[i] == 1: #Only compute advection if variable i is a scalar - scalar_shift = i * Gr.dims.npg - #No rescaling of fluxes - for d in xrange(Gr.dims.dims): #Loop over the cardinal direction - #The flux has a different shift since it is only for the scalars - flux_shift = scalar_count * (Gr.dims.dims * Gr.dims.npg) + d * Gr.dims.npg - - #Make sure that we get the velocity components in the correct order - #Check for a scalar-specific velocity - sc_vel_name = PV.velocity_names_directional[d] + '_' + PV.index_name[i] - if sc_vel_name in DV.name_index: - vel_shift = DV.get_varshift(Gr, sc_vel_name) - if sc_vel_name == 'w_qt': - ql_shift = DV.get_varshift(Gr,'ql') - qt_shift = PV.get_varshift(Gr,'qt') - qv_shift = DV.get_varshift(Gr,'qv') - - compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], - &DV.values[ql_shift],&self.flux[flux_shift],d,self.order_sedimentation) - scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], - &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) - - compute_qt_sedimentation_s_source(&Gr.dims, &Rs.p0_half[0], &Rs.rho0_half[0], &self.flux[flux_shift], - &PV.values[qt_shift], &DV.values[qv_shift], &DV.values[t_shift], - &PV.tendencies[s_shift], self.Lambda_fp,self.L_fp, Gr.dims.dx[d],d) - else: - - # print(sc_vel_name, ' detected as sedimentation velocity') - #First get the tendency associated with the sedimentation velocity - compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&DV.values[vel_shift], - &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order_sedimentation) - scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], - &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) - - - # now the advective flux for all scalars - vel_shift = PV.velocity_directions[d]*Gr.dims.npg - compute_advective_fluxes_a(&Gr.dims,&Rs.rho0[0],&Rs.rho0_half[0],&PV.values[vel_shift], - &PV.values[scalar_shift],&self.flux[flux_shift],d,self.order) - scalar_flux_divergence(&Gr.dims,&Rs.alpha0[0],&Rs.alpha0_half[0],&self.flux[flux_shift], - &PV.tendencies[scalar_shift],Gr.dims.dx[d],d) - - - scalar_count += 1 - - return - - cpdef stats_io(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - - cdef: - Py_ssize_t scalar_count = 0, i, d = 2, flux_shift, k - double[:] tmp - double [:] tmp_interp = np.zeros(Gr.dims.nlg[2],dtype=np.double,order='c') - - for i in xrange(PV.nv): - if PV.var_type[i] == 1: - flux_shift = scalar_count * (Gr.dims.dims * Gr.dims.npg) + d * Gr.dims.npg - tmp = Pa.HorizontalMean(Gr, &self.flux[flux_shift]) - for k in xrange(Gr.dims.gw,Gr.dims.nlg[2]-Gr.dims.gw): - tmp_interp[k] = 0.5*(tmp[k-1]+tmp[k]) - NS.write_profile(PV.index_name[i] + '_flux_z', tmp_interp[Gr.dims.gw:-Gr.dims.gw], Pa) - scalar_count += 1 - - - - return diff --git a/VisualizationOutput.pyx b/VisualizationOutput.pyx index 7c9259c4..90f3002e 100644 --- a/VisualizationOutput.pyx +++ b/VisualizationOutput.pyx @@ -111,7 +111,7 @@ cdef class VisualizationOutput: cdef: double [:,:] local_var double [:,:] reduced_var - list pv_vars = ['qt', 's', 'w'] + list pv_vars = ['qt', 's', 'w', 'u'] list dv_vars = ['ql', 'diffusivity'] From d755224e8c3321c90d4e7909d3081d0a490d245f Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 3 May 2016 14:14:12 +0200 Subject: [PATCH 122/511] print statements --- Csrc/momentum_advection_central_ws_ql.h | 31 +++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index caef4180..ffbdff45 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -219,6 +219,10 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou int ok_ing = 0; int ok_ed = 0; + int ok_nan_ed = 0; + int ok_nan_ing = 0; + int ok_nan_ed_mean = 0; + int ok_nan_ing_mean = 0; for(i=imin; i0.00001){ok_ing = ok_ing + 1;} diff = vel_advected[ijk] - (vel_ed_fluc[ijk] + vel_ed_mean[ijk]); if(fabs(diff)>0.00001){ok_ed = ok_ed + 1;} + + if(isnan(vel_ing_fluc[ijk])){ok_nan_ing = ok_nan_ing + 1;} + if(isnan(vel_ed_fluc[ijk])){ok_nan_ed = ok_nan_ed + 1;} + if(isnan(vel_ing_mean[ijk])){ok_nan_ing_mean = ok_nan_ing_mean + 1;} + if(isnan(vel_ed_mean[ijk])){ok_nan_ed_mean = ok_nan_ed_mean + 1;} } } } - if(ok_ing==1){printf("problem decomposition advecting: count = %d",ok_ing);} - if(ok_ed==1){printf("problem decomposition advected: count = %d",ok_ed);} + if(ok_ing > 1){printf("problem decomposition advecting: count = %d\n",ok_ing);} + if(ok_ed > 1){printf("problem decomposition advected: count = %d\n",ok_ed);} + if(ok_nan_ing > 1){printf("problem nan advecting fluc: count = %d\n",ok_nan_ing);} + if(ok_nan_ed > 1){printf("problem nan advected fluc: count = %d\n",ok_nan_ed);} + if(ok_nan_ing_mean > 1){printf("problem nan advecting mean: count = %d\n",ok_nan_ing_mean);} + if(ok_nan_ed_mean > 1){printf("problem nan advected mean: count = %d\n",ok_nan_ed_mean);} const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; @@ -323,6 +336,20 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou } } } + int ok_nan = 0; + for(i=imin; i 1){printf("problem decomposition advecting: count = %d\n",ok_nan);} +// else{printf("no nans in MA fluxes\n");} momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); From 615599b8881e58b1b60e58b4be1571d2634fd934 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 4 May 2016 10:50:45 +0200 Subject: [PATCH 123/511] changing mean phi interpolation in weno5 SA --- Csrc/momentum_advection_weno_ql.h | 2 - Csrc/scalar_advection_ql.h | 73 +++++++++++++++++-------------- 2 files changed, 40 insertions(+), 35 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 5854be11..eb5613e3 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -52,8 +52,6 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean_[0]); // horizontal_mean(dims, &vel_advected[0], &vel_advected_mean[0]); horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); -// horizontal_mean_const(dims, &vel_advecting[0], &vel_advecting_mean[0]); -// horizontal_mean_const(dims, &vel_advected[0], &vel_advected_mean[0]); // (2) compute eddy fields for(ssize_t i=imin;inlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -443,20 +442,21 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t sm1 = -sp1 ; const ssize_t sm2 = -2*sp1; - // (1) average velocity and scalar field double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); for(ssize_t k=kmin;knlg[0]-3; + jmax = dims->nlg[1]-3; + kmax = dims->nlg[2]-3; + double phip = 0.0; //???? do I need const double phip ??? Difference to declaring it within loop? double phim = 0.0; if(d==2){ @@ -507,21 +517,20 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sp1], phi_fluc[ijk], phi_fluc[ijk + sm1]); - // ????? different computation of mean eddy-flux - // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') + + // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') // ????? different computation of mean eddy-flux eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[ijk]+fabs(vel_mean[ijk]))*phip + (vel_mean[ijk]-fabs(vel_mean[ijk]))*phim)*rho0[k]; // eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; - // ????????? correct for 1D profiles?? -// phip = interp_weno5(phi_mean[k + sm2],phi_mean[k + sm1],phi_mean[k],phi_mean[k + sp1],phi_mean[k + sp2]); -// phim = interp_weno5(phi_mean[k + sp3],phi_mean[k + sp2],phi_mean[k + sp1],phi_mean[k],phi_mean[k + sm1]); - phip = interp_weno5(phi_mean[k - 2],phi_mean[k - 1],phi_mean[k],phi_mean[k + 1],phi_mean[k + 2]); - phim = interp_weno5(phi_mean[k + 3],phi_mean[k + 2],phi_mean[k + 1],phi_mean[k],phi_mean[k - 1]); + phip = interp_weno5(phi_mean[ijk+sm2],phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]); + phim = interp_weno5(phi_mean[ijk+sp3],phi_mean[ijk+sp2],phi_mean[ijk+sp1],phi_mean[ijk],phi_mean[ijk+sm1]); +// phip = interp_weno5(phi_mean[k - 2],phi_mean[k - 1],phi_mean[k],phi_mean[k + 1],phi_mean[k + 2]); +// phim = interp_weno5(phi_mean[k + 3],phi_mean[k + 2],phi_mean[k + 1],phi_mean[k],phi_mean[k - 1]); mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; - mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; // ?? 1D profile sufficient + mean_flux[k] = 0.5 * ((vel_mean[ijk]+fabs(vel_mean[ijk]))*phip + (vel_mean[ijk]-fabs(vel_mean[ijk]))*phim)*rho0[k]; // mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; // mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; @@ -542,8 +551,6 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do scalar[ijk + sm1]); flux_old[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; - - } // End k loop } // End j loop } // End i loop @@ -565,26 +572,24 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do phi_fluc[ijk + sp1], phi_fluc[ijk], phi_fluc[ijk + sm1]); - // ????? different computation of mean eddy-flux - // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') + + // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') // ????? different computation of mean eddy-flux eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[ijk]+fabs(vel_mean[ijk]))*phip + (vel_mean[ijk]-fabs(vel_mean[ijk]))*phim)*rho0_half[k]; // eddy_flux = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; // mix_flux_phiprime = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; - // ????????? correct for 1D profiles?? - phip = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); - phim = interp_weno5(phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k],phi_mean[k]); + phip = interp_weno5(phi_mean[ijk+sm2],phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]); + phim = interp_weno5(phi_mean[ijk+sp3],phi_mean[ijk+sp2],phi_mean[ijk+sp1],phi_mean[ijk],phi_mean[ijk+sm1]); mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; - mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient + mean_flux[k] = 0.5 * ((vel_mean[ijk]+fabs(vel_mean[ijk]))*phip + (vel_mean[ijk]-fabs(vel_mean[ijk]))*phim)*rho0_half[k]; // mix_flux_phimean = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; // mean_flux = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; // ?? 1D profile sufficient flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; // flux[ijk] = mean_flux + mix_flux_phiprime + mix_flux_phimean + eddy_flux; - //Upwind for positive velocity const double phip = interp_weno5(scalar[ijk + sm2], scalar[ijk + sm1], @@ -611,8 +616,10 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do free(mean_flux); free(vel_fluc); free(vel_mean); + free(vel_mean_); free(phi_fluc); free(phi_mean); + free(phi_mean_); return; } From bf657bc71eaa88ee49cae5fca0030f3298cf67bb Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Wed, 4 May 2016 12:42:27 +0200 Subject: [PATCH 124/511] new scheme 4th SA (changing mean phi interpolation) --- Csrc/momentum_advection_central_ws_ql.h | 5 +- Csrc/scalar_advection_ql.h | 167 +++++++++--------------- 2 files changed, 67 insertions(+), 105 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index ffbdff45..5edcdb0b 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -172,7 +172,7 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if(d_advected==2 && d_advecting==2){ - printf("4th order Momentum Transport decomp \n");} + printf("4th order Momentum Transport decomp\n");} // Dynamically allocate flux array double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -248,6 +248,7 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou if(ok_nan_ing_mean > 1){printf("problem nan advecting mean: count = %d\n",ok_nan_ing_mean);} if(ok_nan_ed_mean > 1){printf("problem nan advected mean: count = %d\n",ok_nan_ed_mean);} + // (2) compute flux const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1_ed = stencil[d_advecting]; const ssize_t sp2_ed = 2 * sp1_ed ; @@ -348,7 +349,7 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou } } } - if(ok_nan > 1){printf("problem decomposition advecting: count = %d\n",ok_nan);} + if(ok_nan > 1){printf("problem nan flux: count = %d\n",ok_nan);} // else{printf("no nans in MA fluxes\n");} momentum_flux_divergence(dims, alpha0, alpha0_half, flux, diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 93c71117..40f6ffa9 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -62,7 +62,6 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re } } - // (2) average velocity field and interpolated scalar field for(ssize_t k=kmin;knlg[0]-1; jmax = dims->nlg[1]-1; @@ -108,11 +104,9 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re } // End i loop } // end else - // (4) compute mean eddy flux horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); - // (5) compute QL flux: flux = flux - eddy_flux + mean_eddy_flux for(ssize_t i=imin;inlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; -// const ssize_t imin = 1; -// const ssize_t jmin = 1; -// const ssize_t kmin = 1; -// const ssize_t imax = dims->nlg[0]-2; -// const ssize_t jmax = dims->nlg[1]-2; -// const ssize_t kmax = dims->nlg[2]-2; + if(d==2){printf("4th order Scalar Transport decomp \n");} - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1 = stencil[d]; - const ssize_t sp2 = 2 * sp1; - const ssize_t sm1 = -sp1 ; - - // (1) average advecting and advected velocity +// double *vel_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *vel_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *vel_advecting_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_advecting_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); - horizontal_mean(dims, &velocity[0], &vel_advecting_mean[0]); - horizontal_mean(dims, &scalar[0], &phi_mean[0]); + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; - // (2) compute eddy fields ssize_t imin = 0; ssize_t jmin = 0; ssize_t kmin = 0; ssize_t imax = dims->nlg[0]; ssize_t jmax = dims->nlg[1]; ssize_t kmax = dims->nlg[2]; - for(ssize_t i=imin;i0.00001){ok = 1; - printf("decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, velocity[ijk]);} - - diff = scalar[ijk]-(phi_mean[k] + phi_fluc[ijk]); - if(fabs(diff)>0.00001){ok_s = 1; - printf("decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, scalar[ijk]);} + for(k=kmin; k 0){printf("Problem in decomposition of velocity\n");} -// else{printf("good decomposition of velocity\n");} - if(ok_s > 0){printf("Problem in decomposition of scalar\n");} -// else{printf("good decomposition of scalar\n");} +// free(vel_mean_); + free(phi_mean_); + + + // (2) compute flux + double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sm1 = -sp1 ; - // (3) Compute Fluxes - // mix_flux_one = u_ed' - // mix_flux_two = u_ing' - // eddy_flux = u_ing' u_ed' - // mean_flux = imin = 1; jmin = 1; kmin = 1; imax = dims->nlg[0]-2; jmax = dims->nlg[1]-2; kmax = dims->nlg[2]-2; - double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? - double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - ok = 0; if(d==2){ for(ssize_t i=imin;i Date: Wed, 4 May 2016 15:31:41 +0200 Subject: [PATCH 125/511] 4th SA decomp: changing fluxes from arrays to scalars --- Csrc/scalar_advection_ql.h | 55 +++++++++++++++++++++++++------------- 1 file changed, 37 insertions(+), 18 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 40f6ffa9..a352a4f3 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -180,10 +180,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (2) compute flux - double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; @@ -205,15 +205,25 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Thu, 5 May 2016 16:16:14 +0200 Subject: [PATCH 126/511] 4th SA decomp: debugging --- Csrc/scalar_advection_ql.h | 50 ++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index a352a4f3..39935417 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -137,9 +137,6 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double if(d==2){printf("4th order Scalar Transport decomp \n");} -// double *vel_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *vel_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -158,7 +155,6 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double ssize_t i,j,k; // (1) compute mean fields -// horizontal_mean(dims, &velocity[0], &vel_mean_[0]); horizontal_mean(dims, &velocity[0], &vel_mean[0]); horizontal_mean(dims, &scalar[0], &phi_mean_[0]); @@ -170,8 +166,6 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t ijk = ishift + jshift + k; phi_mean[ijk] = phi_mean_[k]; phi_fluc[ijk] = scalar[ijk] - phi_mean[ijk]; -// vel_mean[ijk] = vel_mean_[k]; -// vel_fluc[ijk] = velocity[ijk] - vel_mean[ijk]; } } } @@ -206,15 +200,15 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t k=kmin;k Date: Thu, 5 May 2016 16:22:27 +0200 Subject: [PATCH 127/511] 4th SA decomp: debugging --- Csrc/scalar_advection_ql.h | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 39935417..ca06bc01 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -169,15 +169,14 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } } } -// free(vel_mean_); free(phi_mean_); // (2) compute flux -// double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; @@ -261,10 +260,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } // end else return; -// free(eddy_flux); -// free(mix_flux_phiprime); -// free(mix_flux_phimean); -// free(mean_flux); + free(eddy_flux); + free(mix_flux_phiprime); + free(mix_flux_phimean); + free(mean_flux); free(flux_old); free(phi_fluc); free(phi_mean); From 09a75db3ca37a277037bf692be0e3fd902e5e0a2 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 5 May 2016 16:22:41 +0200 Subject: [PATCH 128/511] 4th SA decomp: debugging --- Csrc/scalar_advection_ql.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index ca06bc01..861f7fb5 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -268,6 +268,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double free(phi_fluc); free(phi_mean); free(vel_mean); + } From af7440819bc3b7fcc2be4b33659ca02a9a3c6895 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 09:42:20 +0200 Subject: [PATCH 129/511] 4th SA decomp: debugging (again debugging Nr. 1) --- Csrc/scalar_advection_ql.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 861f7fb5..e6075aa4 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -173,10 +173,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (2) compute flux - double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; @@ -260,10 +260,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } // end else return; - free(eddy_flux); - free(mix_flux_phiprime); - free(mix_flux_phimean); - free(mean_flux); +// free(eddy_flux); +// free(mix_flux_phiprime); +// free(mix_flux_phimean); +// free(mean_flux); free(flux_old); free(phi_fluc); free(phi_mean); From 287426de5dd7b8743eb18af5038dc25d9b72acc7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 10:08:38 +0200 Subject: [PATCH 130/511] 4th SA decomp: debugging (debugging Nr. 3) --- Csrc/scalar_advection_ql.h | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index e6075aa4..5f9f7623 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -138,8 +138,8 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double if(d==2){printf("4th order Scalar Transport decomp \n");} double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; @@ -158,18 +158,17 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double horizontal_mean(dims, &velocity[0], &vel_mean[0]); horizontal_mean(dims, &scalar[0], &phi_mean_[0]); - for(i=imin; inlg[0] * dims->nlg[1] * dims->nlg[2]); // double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -264,9 +263,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // free(mix_flux_phiprime); // free(mix_flux_phimean); // free(mean_flux); - free(flux_old); - free(phi_fluc); - free(phi_mean); +// free(flux_old); +// free(phi_fluc); +// free(phi_mean); + free(phi_mean_); free(vel_mean); } From 88d15fc1bcf5dfd70a6519c29d90c9c7a8611b28 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 10:32:23 +0200 Subject: [PATCH 131/511] 4th SA decomp: debugging (debugging Nr. 4) --- Csrc/scalar_advection_ql.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 5f9f7623..415db8e3 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -158,17 +158,17 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double horizontal_mean(dims, &velocity[0], &vel_mean[0]); horizontal_mean(dims, &scalar[0], &phi_mean_[0]); -// for(i=imin; i Date: Fri, 6 May 2016 10:56:08 +0200 Subject: [PATCH 132/511] 4th SA decomp: debugging (debugging Nr. 5) --- Csrc/scalar_advection_ql.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 415db8e3..cadee74f 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -154,6 +154,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double ssize_t i,j,k; + // (1) compute mean fields horizontal_mean(dims, &velocity[0], &vel_mean[0]); horizontal_mean(dims, &scalar[0], &phi_mean_[0]); @@ -164,7 +165,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j * jstride; for(k=kmin; k Date: Fri, 6 May 2016 10:57:46 +0200 Subject: [PATCH 133/511] 4th SA decomp: debugging (debugging Nr. 5) --- Csrc/scalar_advection_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index cadee74f..d65ce5f9 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -139,7 +139,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); // double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; @@ -266,7 +266,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // free(mean_flux); // free(flux_old); // free(phi_fluc); -// free(phi_mean); + free(phi_mean); free(phi_mean_); free(vel_mean); From b455cccb166ae1389f983ecef77d7a7bcd88e18d Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 11:06:03 +0200 Subject: [PATCH 134/511] 4th SA decomp: debugging (debugging Nr. 6; adding memory phi_fluc) --- Csrc/scalar_advection_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index d65ce5f9..00682ed0 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -138,7 +138,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double if(d==2){printf("4th order Scalar Transport decomp \n");} double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -265,7 +265,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // free(mix_flux_phimean); // free(mean_flux); // free(flux_old); -// free(phi_fluc); + free(phi_fluc); free(phi_mean); free(phi_mean_); free(vel_mean); From 9bf3a9dbfe996253ab9a5b92d0596b8805097168 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 11:18:51 +0200 Subject: [PATCH 135/511] 4th SA decomp: debugging (debugging Nr. 7) --- Csrc/scalar_advection_ql.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 00682ed0..67c6ee27 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -138,7 +138,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double if(d==2){printf("4th order Scalar Transport decomp \n");} double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); - double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -165,7 +165,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j * jstride; for(k=kmin; k Date: Fri, 6 May 2016 11:28:55 +0200 Subject: [PATCH 136/511] 4th SA decomp: debugging (debugging Nr. 8) --- Csrc/scalar_advection_ql.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 67c6ee27..cf4083e4 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -165,6 +165,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j * jstride; for(k=kmin; k Date: Fri, 6 May 2016 11:37:21 +0200 Subject: [PATCH 137/511] 4th SA decomp: debugging (debugging Nr. 9) --- Csrc/scalar_advection_ql.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index cf4083e4..3b66ffa7 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -166,6 +166,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(k=kmin; k Date: Fri, 6 May 2016 11:42:21 +0200 Subject: [PATCH 138/511] 4th SA decomp: debugging (debugging Nr. 10) --- Csrc/scalar_advection_ql.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 3b66ffa7..10bc05d0 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -156,6 +156,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (1) compute mean fields + for(k=kmin; k Date: Fri, 6 May 2016 11:56:28 +0200 Subject: [PATCH 139/511] 4th SA decomp: debugging (debugging Nr. 10) --- Csrc/scalar_advection_ql.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 10bc05d0..eac1018c 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -138,7 +138,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double if(d==2){printf("4th order Scalar Transport decomp \n");} double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -156,9 +156,9 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (1) compute mean fields - for(k=kmin; k Date: Fri, 6 May 2016 12:03:14 +0200 Subject: [PATCH 140/511] 4th SA decomp: debugging (debugging Nr. 11) --- Csrc/scalar_advection_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index eac1018c..b3465fea 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -179,7 +179,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (2) compute flux -// double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); // double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -266,7 +266,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } // end else return; -// free(eddy_flux); + free(eddy_flux); // free(mix_flux_phiprime); // free(mix_flux_phimean); // free(mean_flux); From 1a03e3b9a4323b28eae42d6ab086a317a5f50e54 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 12:08:28 +0200 Subject: [PATCH 141/511] 4th SA decomp: debugging (debugging Nr. 12) --- Csrc/scalar_advection_ql.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index b3465fea..170711d9 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -145,12 +145,12 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - ssize_t imin = 0; - ssize_t jmin = 0; - ssize_t kmin = 0; - ssize_t imax = dims->nlg[0]; - ssize_t jmax = dims->nlg[1]; - ssize_t kmax = dims->nlg[2]; + ssize_t imin = 1; + ssize_t jmin = 1; + ssize_t kmin = 1; + ssize_t imax = dims->nlg[0]-2; + ssize_t jmax = dims->nlg[1]-2; + ssize_t kmax = dims->nlg[2]-2; ssize_t i,j,k; @@ -169,8 +169,8 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j * jstride; for(k=kmin; k Date: Fri, 6 May 2016 12:37:55 +0200 Subject: [PATCH 142/511] 4th SA decomp: debugging (debugging Nr. 13) --- Csrc/scalar_advection_ql.h | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 170711d9..a06554e3 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -145,12 +145,13 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - ssize_t imin = 1; - ssize_t jmin = 1; - ssize_t kmin = 1; - ssize_t imax = dims->nlg[0]-2; - ssize_t jmax = dims->nlg[1]-2; - ssize_t kmax = dims->nlg[2]-2; + const ssize_t imin = 1; + const ssize_t jmin = 1; + const ssize_t kmin = 1; + + const ssize_t imax = dims->nlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; ssize_t i,j,k; @@ -190,12 +191,12 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t sp2 = 2 * sp1; const ssize_t sm1 = -sp1 ; - imin = 1; - jmin = 1; - kmin = 1; - imax = dims->nlg[0]-2; - jmax = dims->nlg[1]-2; - kmax = dims->nlg[2]-2; +// imin = 1; +// jmin = 1; +// kmin = 1; +// imax = dims->nlg[0]-2; +// jmax = dims->nlg[1]-2; +// kmax = dims->nlg[2]-2; if(d==2){ for(ssize_t i=imin;i Date: Fri, 6 May 2016 13:03:03 +0200 Subject: [PATCH 143/511] 4th SA decomp: debugging (debugging Nr. 14) --- Csrc/scalar_advection_ql.h | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index a06554e3..a1b1dee3 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -145,13 +145,13 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 1; - const ssize_t jmin = 1; - const ssize_t kmin = 1; + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0]-2; - const ssize_t jmax = dims->nlg[1]-2; - const ssize_t kmax = dims->nlg[2]-2; + const ssize_t imax = dims->nlg[0]; + const ssize_t jmax = dims->nlg[1]; + const ssize_t kmax = dims->nlg[2]; ssize_t i,j,k; @@ -198,12 +198,20 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // jmax = dims->nlg[1]-2; // kmax = dims->nlg[2]-2; + const ssize_t iimin = 0; + const ssize_t jjmin = 0; + const ssize_t kkmin = 0; + + const ssize_t iimax = dims->nlg[0]; + const ssize_t jjmax = dims->nlg[1]; + const ssize_t kkmax = dims->nlg[2]; + if(d==2){ - for(ssize_t i=imin;i Date: Fri, 6 May 2016 18:18:35 +0200 Subject: [PATCH 144/511] 4th SA decomp: debug 1 (restart: normal 4th order SA) --- Csrc/scalar_advection_ql.h | 290 +++++++++++++++++++++---------------- 1 file changed, 168 insertions(+), 122 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index a1b1dee3..abbbf8a8 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -132,163 +132,209 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re -void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, - double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ +//void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, +// double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ +// +// if(d==2){printf("4th order Scalar Transport decomp \n");} +// +// double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); +// +// const ssize_t istride = dims->nlg[1] * dims->nlg[2]; +// const ssize_t jstride = dims->nlg[2]; +// +// const ssize_t imin = 0; +// const ssize_t jmin = 0; +// const ssize_t kmin = 0; +// +// const ssize_t imax = dims->nlg[0]; +// const ssize_t jmax = dims->nlg[1]; +// const ssize_t kmax = dims->nlg[2]; +// +// ssize_t i,j,k; +// +// +// // (1) compute mean fields +//// for(k=kmin; knlg[0] * dims->nlg[1] * dims->nlg[2]); +//// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +//// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +//// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +//// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// +// const ssize_t stencil[3] = {istride,jstride,1}; +// const ssize_t sp1 = stencil[d]; +// const ssize_t sp2 = 2 * sp1; +// const ssize_t sm1 = -sp1 ; +// +//// imin = 1; +//// jmin = 1; +//// kmin = 1; +//// imax = dims->nlg[0]-2; +//// jmax = dims->nlg[1]-2; +//// kmax = dims->nlg[2]-2; +// +// const ssize_t iimin = 0; +// const ssize_t jjmin = 0; +// const ssize_t kkmin = 0; +// +// const ssize_t iimax = dims->nlg[0]; +// const ssize_t jjmax = dims->nlg[1]; +// const ssize_t kkmax = dims->nlg[2]; +// +// if(d==2){ +// for(ssize_t i=iimin;inlg[2]); - double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + +void fourth_order_a_decomp(const struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half,const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]; - const ssize_t jmax = dims->nlg[1]; - const ssize_t kmax = dims->nlg[2]; - - ssize_t i,j,k; - - - // (1) compute mean fields -// for(k=kmin; knlg[0]-2; + const ssize_t jmax = dims->nlg[1]-2; + const ssize_t kmax = dims->nlg[2]-2; - // (2) compute flux - double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; const ssize_t sp2 = 2 * sp1; const ssize_t sm1 = -sp1 ; -// imin = 1; -// jmin = 1; -// kmin = 1; -// imax = dims->nlg[0]-2; -// jmax = dims->nlg[1]-2; -// kmax = dims->nlg[2]-2; - - const ssize_t iimin = 0; - const ssize_t jjmin = 0; - const ssize_t kkmin = 0; - - const ssize_t iimax = dims->nlg[0]; - const ssize_t jjmax = dims->nlg[1]; - const ssize_t kkmax = dims->nlg[2]; if(d==2){ - for(ssize_t i=iimin;i Date: Fri, 6 May 2016 18:20:12 +0200 Subject: [PATCH 145/511] 4th SA decomp: debugging 15 (like 14, but return to end) --- Csrc/scalar_advection_ql.h | 290 ++++++++++++++++--------------------- 1 file changed, 122 insertions(+), 168 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index abbbf8a8..05af845d 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -132,208 +132,162 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re -//void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, -// double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ -// -// if(d==2){printf("4th order Scalar Transport decomp \n");} -// -// double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); -// -// const ssize_t istride = dims->nlg[1] * dims->nlg[2]; -// const ssize_t jstride = dims->nlg[2]; -// -// const ssize_t imin = 0; -// const ssize_t jmin = 0; -// const ssize_t kmin = 0; -// -// const ssize_t imax = dims->nlg[0]; -// const ssize_t jmax = dims->nlg[1]; -// const ssize_t kmax = dims->nlg[2]; -// -// ssize_t i,j,k; -// -// -// // (1) compute mean fields -//// for(k=kmin; knlg[0] * dims->nlg[1] * dims->nlg[2]); -//// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -//// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -//// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); -//// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// -// const ssize_t stencil[3] = {istride,jstride,1}; -// const ssize_t sp1 = stencil[d]; -// const ssize_t sp2 = 2 * sp1; -// const ssize_t sm1 = -sp1 ; -// -//// imin = 1; -//// jmin = 1; -//// kmin = 1; -//// imax = dims->nlg[0]-2; -//// jmax = dims->nlg[1]-2; -//// kmax = dims->nlg[2]-2; -// -// const ssize_t iimin = 0; -// const ssize_t jjmin = 0; -// const ssize_t kkmin = 0; -// -// const ssize_t iimax = dims->nlg[0]; -// const ssize_t jjmax = dims->nlg[1]; -// const ssize_t kkmax = dims->nlg[2]; -// -// if(d==2){ -// for(ssize_t i=iimin;inlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 1; - const ssize_t jmin = 1; - const ssize_t kmin = 1; + const ssize_t imin = 0; + const ssize_t jmin = 0; + const ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0]-2; - const ssize_t jmax = dims->nlg[1]-2; - const ssize_t kmax = dims->nlg[2]-2; + const ssize_t imax = dims->nlg[0]; + const ssize_t jmax = dims->nlg[1]; + const ssize_t kmax = dims->nlg[2]; + + ssize_t i,j,k; + // (1) compute mean fields +// for(k=kmin; knlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; const ssize_t sp2 = 2 * sp1; const ssize_t sm1 = -sp1 ; +// imin = 1; +// jmin = 1; +// kmin = 1; +// imax = dims->nlg[0]-2; +// jmax = dims->nlg[1]-2; +// kmax = dims->nlg[2]-2; + + const ssize_t iimin = 0; + const ssize_t jjmin = 0; + const ssize_t kkmin = 0; + + const ssize_t iimax = dims->nlg[0]; + const ssize_t jjmax = dims->nlg[1]; + const ssize_t kkmax = dims->nlg[2]; if(d==2){ - for(ssize_t i=imin;i Date: Fri, 6 May 2016 18:25:43 +0200 Subject: [PATCH 146/511] 4th SA decomp: debugging 16 (no const index limits) --- Csrc/scalar_advection_ql.h | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 05af845d..776fcc57 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -145,17 +145,16 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; - const ssize_t imax = dims->nlg[0]; - const ssize_t jmax = dims->nlg[1]; - const ssize_t kmax = dims->nlg[2]; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; ssize_t i,j,k; - // (1) compute mean fields // for(k=kmin; knlg[1]-2; // kmax = dims->nlg[2]-2; - const ssize_t iimin = 0; - const ssize_t jjmin = 0; - const ssize_t kkmin = 0; + ssize_t iimin = 0; + ssize_t jjmin = 0; + ssize_t kkmin = 0; - const ssize_t iimax = dims->nlg[0]; - const ssize_t jjmax = dims->nlg[1]; - const ssize_t kkmax = dims->nlg[2]; + ssize_t iimax = dims->nlg[0]; + ssize_t jjmax = dims->nlg[1]; + ssize_t kkmax = dims->nlg[2]; if(d==2){ for(ssize_t i=iimin;i Date: Fri, 6 May 2016 18:31:46 +0200 Subject: [PATCH 147/511] 4th SA decomp: debugging 17 (adding phi_mean = phi_mean_) --- Csrc/scalar_advection_ql.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 776fcc57..fb0215e7 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -169,9 +169,9 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j * jstride; for(k=kmin; k Date: Fri, 6 May 2016 18:45:08 +0200 Subject: [PATCH 148/511] 4th SA decomp: debugging 18 (computing phi_fluc) --- Csrc/scalar_advection_ql.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index fb0215e7..5de9a4a6 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -172,7 +172,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // phi_mean[ijk] = 1.0; // !!!!! // phi_mean_[k] = 1.0; // !!!!! phi_mean[ijk] = phi_mean_[k]; -// phi_fluc[ijk] = scalar[ijk] - phi_mean[ijk]; + phi_fluc[ijk] = scalar[ijk] - phi_mean[ijk]; } } } From 1f312462e02d6e5c45ca7de4c6cabcfe8257bf93 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 18:51:45 +0200 Subject: [PATCH 149/511] 4th SA decomp: debugging 19 (computing eddy flux) --- Csrc/scalar_advection_ql.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 5de9a4a6..386dd72a 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -213,8 +213,8 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t k=kkmin;k Date: Fri, 6 May 2016 19:01:36 +0200 Subject: [PATCH 150/511] 4th SA decomp: debugging 20 (computing fluxes) --- Csrc/scalar_advection_ql.h | 68 +++++++++++++++++++------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 386dd72a..5b8ec2c8 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -180,10 +180,10 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // (2) compute flux double *eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); -// double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); -// double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -213,8 +213,8 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double for(ssize_t k=kkmin;k Date: Fri, 6 May 2016 19:03:40 +0200 Subject: [PATCH 151/511] 4th SA decomp: debugging 20 (computing fluxes) --- Csrc/scalar_advection_ql.h | 41 +++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 5b8ec2c8..43a91c35 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -212,7 +212,6 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double const ssize_t jshift = j*jstride; for(ssize_t k=kkmin;k Date: Fri, 6 May 2016 19:09:05 +0200 Subject: [PATCH 152/511] 4th SA decomp: debugging 21 (computing fluxes) --- Csrc/scalar_advection_ql.h | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 43a91c35..f76ee26a 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -223,15 +223,15 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // flux[ijk] = eddy_flux + mix_flux_phimean + mix_flux_phiprime + mean_flux; eddy_flux[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * (velocity[ijk]-vel_mean[k]) * rho0[k]; -// mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) -// * (velocity[ijk]-vel_mean[k]) * rho0[k]; -// mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) -// * vel_mean[k] * rho0[k]; -// mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] -// * vel_mean[k] * rho0[k]; -// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; + mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) + * (velocity[ijk]-vel_mean[k]) * rho0[k]; + mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) + * vel_mean[k] * rho0[k]; + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + * vel_mean[k] * rho0[k]; + flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; -// flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; + flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; // flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; // flux[ijk] = flux_old[ijk]; } // End k loop @@ -256,15 +256,15 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // flux[ijk] = eddy_flux + mix_flux_phimean + mix_flux_phiprime + mean_flux; eddy_flux[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; -// mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) -// * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; -// mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) -// * vel_mean[k] * rho0_half[k]; -// mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] -// * vel_mean[k] * rho0_half[k]; -// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; + mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) + * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; + mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) + * vel_mean[k] * rho0_half[k]; + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + * vel_mean[k] * rho0_half[k]; + flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; -// flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; + flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; // flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; // flux[ijk] = flux_old[ijk]; } // End k loop From c9e35c991414081aa4741115bedffeef5c9b42e3 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 6 May 2016 19:14:34 +0200 Subject: [PATCH 153/511] 4th SA decomp: debugging 22 (changing index limits) --- Csrc/scalar_advection_ql.h | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index f76ee26a..47227267 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -148,18 +148,12 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double ssize_t imin = 0; ssize_t jmin = 0; ssize_t kmin = 0; - ssize_t imax = dims->nlg[0]; ssize_t jmax = dims->nlg[1]; ssize_t kmax = dims->nlg[2]; ssize_t i,j,k; - // (1) compute mean fields -// for(k=kmin; knlg[1]-2; // kmax = dims->nlg[2]-2; - ssize_t iimin = 0; - ssize_t jjmin = 0; - ssize_t kkmin = 0; + imin = 1; + jmin = 1; + kmin = 1; - ssize_t iimax = dims->nlg[0]; - ssize_t jjmax = dims->nlg[1]; - ssize_t kkmax = dims->nlg[2]; + imax = dims->nlg[0]-2; + jmax = dims->nlg[1]-2; + kmax = dims->nlg[2]-2; if(d==2){ - for(ssize_t i=iimin;i Date: Sat, 7 May 2016 12:59:47 +0200 Subject: [PATCH 154/511] 4th SA decomp: debugging 23 (back to 20 plus changing loop indices limits) --- Csrc/scalar_advection_ql.h | 62 +++++++++++++++++++++----------------- 1 file changed, 34 insertions(+), 28 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 47227267..17ec8daf 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -148,12 +148,18 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double ssize_t imin = 0; ssize_t jmin = 0; ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; ssize_t jmax = dims->nlg[1]; ssize_t kmax = dims->nlg[2]; ssize_t i,j,k; + // (1) compute mean fields +// for(k=kmin; knlg[0]-2; -// jmax = dims->nlg[1]-2; -// kmax = dims->nlg[2]-2; - imin = 1; jmin = 1; kmin = 1; - imax = dims->nlg[0]-2; jmax = dims->nlg[1]-2; kmax = dims->nlg[2]-2; +// +// ssize_t iimin = 0; +// ssize_t jjmin = 0; +// ssize_t kkmin = 0; +// +// ssize_t iimax = dims->nlg[0]; +// ssize_t jjmax = dims->nlg[1]; +// ssize_t kkmax = dims->nlg[2]; if(d==2){ for(ssize_t i=imin;i Date: Sun, 8 May 2016 04:00:37 +0200 Subject: [PATCH 155/511] 4th SA decomp: debugging 24 (computing all fluxes) --- Csrc/scalar_advection_ql.h | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 17ec8daf..60b42cb7 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -223,15 +223,15 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // flux[ijk] = eddy_flux + mix_flux_phimean + mix_flux_phiprime + mean_flux; eddy_flux[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * (velocity[ijk]-vel_mean[k]) * rho0[k]; -// mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) -// * (velocity[ijk]-vel_mean[k]) * rho0[k]; -// mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) -// * vel_mean[k] * rho0[k]; -// mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] -// * vel_mean[k] * rho0[k]; + mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) + * (velocity[ijk]-vel_mean[k]) * rho0[k]; + mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) + * vel_mean[k] * rho0[k]; + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + * vel_mean[k] * rho0[k]; // flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; -// flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; + flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; // flux[ijk] = flux_old[ijk]; } // End k loop @@ -256,15 +256,15 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double // flux[ijk] = eddy_flux + mix_flux_phimean + mix_flux_phiprime + mean_flux; eddy_flux[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; -// mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) -// * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; -// mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) -// * vel_mean[k] * rho0_half[k]; -// mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] -// * vel_mean[k] * rho0_half[k]; + mix_flux_phimean[ijk] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) + * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; + mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) + * vel_mean[k] * rho0_half[k]; + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + * vel_mean[k] * rho0_half[k]; // flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; -// flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; + flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; // flux[ijk] = flux_old[ijk]; } // End k loop From cf37ac716ba4405c209287d3b002d49a4c4a0aa8 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Sun, 8 May 2016 04:03:57 +0200 Subject: [PATCH 156/511] 4th SA decomp: debugging 25 (computing total flux decomp) --- Csrc/scalar_advection_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 60b42cb7..dfc2cc72 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -229,7 +229,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double * vel_mean[k] * rho0[k]; mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] * vel_mean[k] * rho0[k]; -// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; + flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; @@ -262,7 +262,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double * vel_mean[k] * rho0_half[k]; mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] * vel_mean[k] * rho0_half[k]; -// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; + flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; From ee654d3d33e6e347acd1ad018e3dcb3697c1bc59 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Sun, 8 May 2016 04:05:49 +0200 Subject: [PATCH 157/511] 4th SA decomp: debugging 26 (computing total flux decomp only) --- Csrc/scalar_advection_ql.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index dfc2cc72..54eabc8e 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -232,7 +232,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; - flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; +// flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; // flux[ijk] = flux_old[ijk]; } // End k loop } // End j loop @@ -265,7 +265,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; - flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; +// flux[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; // flux[ijk] = flux_old[ijk]; } // End k loop } // End j loop From 1892feb2d183fb8a6bead91df6e2b42edf7259f7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Sun, 8 May 2016 09:21:21 +0200 Subject: [PATCH 158/511] 4th SA decomp: debugging 27 (problem in mean flux) --- Csrc/scalar_advection_ql.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 54eabc8e..67988dfc 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -131,7 +131,6 @@ void second_order_a_ql(struct DimStruct *dims, double* restrict rho0, double* re - void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ @@ -227,7 +226,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double * (velocity[ijk]-vel_mean[k]) * rho0[k]; mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * vel_mean[k] * rho0[k]; - mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) * vel_mean[k] * rho0[k]; flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; @@ -260,7 +259,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double * (velocity[ijk]-vel_mean[k]) * rho0_half[k]; mix_flux_phiprime[ijk] = interp_4(phi_fluc[ijk+sm1],phi_fluc[ijk],phi_fluc[ijk+sp1],phi_fluc[ijk+sp2]) * vel_mean[k] * rho0_half[k]; - mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2])*velocity[ijk] + mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) * vel_mean[k] * rho0_half[k]; flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; From beeef7d8ae0ba9406d768c292cab668042f00848 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 11:52:32 +0200 Subject: [PATCH 159/511] weno5 SA decomp: refactoring --- Csrc/scalar_advection_ql.h | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 67988dfc..97427105 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -435,8 +435,9 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do // (1) average velocity and scalar field double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *vel_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); +// double *vel_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *vel_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); @@ -446,7 +447,8 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do vel_mean[k] = 0; } // horizontal_mean(dims, &vel_fluc[0], &phi_mean[0]); - horizontal_mean_const(dims, &velocity[0], &vel_mean_[0]); +// horizontal_mean_const(dims, &velocity[0], &vel_mean_[0]); + horizontal_mean_const(dims, &velocity[0], &vel_mean[0]); horizontal_mean_const(dims, &scalar[0], &phi_mean_[0]); // (2) compute eddy fields @@ -456,10 +458,11 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t jshift = j * jstride; for(ssize_t k=kmin;k Date: Mon, 9 May 2016 12:00:38 +0200 Subject: [PATCH 160/511] weno5 MA decomp: debugging Nr. 1 (change in vel_advecting_mean interpolation) --- Csrc/momentum_advection_weno_ql.h | 18 +++++++++--------- Csrc/scalar_advection_ql.h | 1 + 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index eb5613e3..f3a4ffd5 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -177,10 +177,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' // (b) mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk], + vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk]); + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; @@ -262,10 +262,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk], - vel_advecting_mean[ijk], + vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], - vel_advecting_mean[ijk]); + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; @@ -344,10 +344,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk], - vel_advecting_mean[ijk], + vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], - vel_advecting_mean[ijk]); + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 97427105..8bbb1744 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -443,6 +443,7 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); for(ssize_t k=kmin;k Date: Mon, 9 May 2016 12:54:05 +0200 Subject: [PATCH 161/511] weno5 MA decomp: debugging Nr. 2 --- Csrc/momentum_advection_weno_ql.h | 42 ++++++++++++++++--------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index f3a4ffd5..bece81eb 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -63,8 +63,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk] = vel_advecting_mean_[k]; vel_advected_mean[ijk] = vel_advected_mean_[k]; - vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean[ijk]; - vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean[ijk]; +// vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean[ijk]; +// vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean[ijk]; + vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean_[k]; + vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean_[k]; if(isnan(vel_advected_fluc[ijk])) { printf("Nan in vel_advected_fluc\n"); @@ -220,6 +222,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; + flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; // printf("old flux: %f\n", fabs(flux_old[ijk])); } @@ -303,6 +306,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; + flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; } } @@ -386,30 +390,28 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; + flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; } } } } - int count = 0; - double max = 0.0; - for(ssize_t i=imin;i0.01){count = count + 1;} -// if(fabs((flux[ijk]-flux_old[ijk])/flux_old[ijk])>0.01){printf("achtung, ijk= %d, diff = %f, flux_old = %f \n", ijk, flux[ijk]-flux_old[ijk], flux_old[ijk]);} - if(diff>0.05*fabs(flux_old[ijk])){count = count + 1;} - if(max 0){printf("MA Fluxes differences: count = %d, max = %f\n", count, max);} +// int count = 0; +// double max = 0.0; +// for(ssize_t i=imin;i0.05*fabs(flux_old[ijk])){count = count + 1;} +// if(max 0){printf("MA Fluxes differences: count = %d, max = %f\n", count, max);} // printf("flux: %f\n", flux); From df287267485370b42f52470f8b41ca09018316b8 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 12:57:21 +0200 Subject: [PATCH 162/511] weno5 MA decomp: debugging Nr. 3 --- Csrc/momentum_advection_weno_ql.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index bece81eb..c32c340f 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -63,10 +63,10 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk] = vel_advecting_mean_[k]; vel_advected_mean[ijk] = vel_advected_mean_[k]; -// vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean[ijk]; -// vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean[ijk]; - vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean_[k]; - vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean_[k]; + vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean[ijk]; + vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean[ijk]; +// vel_advecting_fluc[ijk] = vel_advecting[ijk] - vel_advecting_mean_[k]; +// vel_advected_fluc[ijk] = vel_advected[ijk] - vel_advected_mean_[k]; if(isnan(vel_advected_fluc[ijk])) { printf("Nan in vel_advected_fluc\n"); From eb17a58ea9d250caa81c291c6e6d260eeaf186d7 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:12:47 +0200 Subject: [PATCH 163/511] weno5 MA decomp: debugging Nr. 4 (double phip etc. -> const double phip etc) --- Csrc/momentum_advection_weno_ql.h | 63 ++++++++++++++++--------------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index c32c340f..7d324486 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -130,12 +130,12 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? - double phip; - double phim; - double phip_fluc; //???? do I need const double phip ??? Difference to declaring it within loop? - double phim_fluc; - double phip_mean; - double phim_mean; +// double phip; +// double phim; +// double phip_fluc; //???? do I need const double phip ??? Difference to declaring it within loop? +// double phim_fluc; +// double phip_mean; +// double phim_mean; double vel_adv; if (d_advected !=2 && d_advecting !=2){ @@ -147,32 +147,33 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t ijk = ishift + jshift + k; // printf("d_adv != 2, d_ing != 2\n"); - phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], + const double phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], vel_advected_fluc[ijk + sm1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], vel_advected_mean[ijk + sm1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk + sp2_ed]); -// phip_mean = interp_weno5(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); +// phip_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); // Upwind for negative velocity - phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], + const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], vel_advected_mean[ijk + sp2_ed], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sm1_ed]); +// phip_mean = vel_advected_mean_[k]; +// phim_mean = vel_advected_mean_[k]; -// phim_mean = phip_mean; -// phim_mean = interp_weno5(vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k],vel_advected_mean[k]); +// phim_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); // phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect // phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -203,14 +204,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do //Upwind for positive velocity - phip = interp_weno5(vel_advected[ijk + sm2_ed], + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - phim = interp_weno5(vel_advected[ijk + sp3_ed], + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], @@ -238,30 +239,30 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t ijk = ishift + jshift + k; // printf("d_adv = 2, d_ing = 2\n"); - phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], + const double phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], vel_advected_fluc[ijk + sm1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], vel_advected_mean[ijk + sm1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk + sp2_ed]); - phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], + const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], vel_advected_mean[ijk + sp2_ed], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sm1_ed]); -// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect -// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -287,14 +288,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do //Upwind for positive velocity - phip = interp_weno5(vel_advected[ijk + sm2_ed], + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - phim = interp_weno5(vel_advected[ijk + sp3_ed], + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], @@ -321,30 +322,30 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do const ssize_t ijk = ishift + jshift + k; // printf("d_adv != 2, d_ing = 2\n"); - phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], + const double phip_fluc = interp_weno5(vel_advected_fluc[ijk + sm2_ed], vel_advected_fluc[ijk + sm1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], vel_advected_mean[ijk + sm1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk + sp2_ed]); - phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], + const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], vel_advected_mean[ijk + sp2_ed], vel_advected_mean[ijk + sp1_ed], vel_advected_mean[ijk], vel_advected_mean[ijk + sm1_ed]); -// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect -// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -371,14 +372,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // Original Flux computation //Upwind for positive velocity - phip = interp_weno5(vel_advected[ijk + sm2_ed], + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], vel_advected[ijk + sm1_ed], vel_advected[ijk], vel_advected[ijk + sp1_ed], vel_advected[ijk + sp2_ed]); // Upwind for negative velocity - phim = interp_weno5(vel_advected[ijk + sp3_ed], + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], vel_advected[ijk + sp2_ed], vel_advected[ijk + sp1_ed], vel_advected[ijk], From b1723ad2d01ffc56221f00db615d56ea4d795a80 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:16:23 +0200 Subject: [PATCH 164/511] weno5 MA decomp: debugging Nr. 5 (mean field interpolation phi changed back) --- Csrc/momentum_advection_weno_ql.h | 79 +++++++++++++++---------------- 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 7d324486..b549fb40 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -152,11 +152,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], - vel_advected_mean[ijk + sm1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk + sp2_ed]); +// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], +// vel_advected_mean[ijk + sm1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk + sp2_ed]); // phip_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); // Upwind for negative velocity @@ -165,17 +165,16 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], - vel_advected_mean[ijk + sp2_ed], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sm1_ed]); -// phip_mean = vel_advected_mean_[k]; -// phim_mean = vel_advected_mean_[k]; - +// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], +// vel_advected_mean[ijk + sp2_ed], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sm1_ed]); // phim_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); -// phip_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect -// phim_mean = vel_advected_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect + phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + + // (a) mix_flux_one = u_ed' // (b) mean_flux = @@ -244,25 +243,25 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], - vel_advected_mean[ijk + sm1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk + sp2_ed]); +// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], +// vel_advected_mean[ijk + sm1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk + sp2_ed]); const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], - vel_advected_mean[ijk + sp2_ed], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sm1_ed]); +// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], +// vel_advected_mean[ijk + sp2_ed], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sm1_ed]); -// phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -327,25 +326,25 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); - const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], - vel_advected_mean[ijk + sm1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk + sp2_ed]); +// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], +// vel_advected_mean[ijk + sm1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk + sp2_ed]); const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); - const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], - vel_advected_mean[ijk + sp2_ed], - vel_advected_mean[ijk + sp1_ed], - vel_advected_mean[ijk], - vel_advected_mean[ijk + sm1_ed]); - -// phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], +// vel_advected_mean[ijk + sp2_ed], +// vel_advected_mean[ijk + sp1_ed], +// vel_advected_mean[ijk], +// vel_advected_mean[ijk + sm1_ed]); + + phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect From 4ad778eb1bf12f568ba52e7805cb8e7d0140c1f9 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:27:02 +0200 Subject: [PATCH 165/511] weno5 MA decomp: debugging Nr. 5 (mean field interpolation phi and vel changed back) --- Csrc/momentum_advection_weno_ql.h | 104 +++++++++++++++--------------- 1 file changed, 53 insertions(+), 51 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index b549fb40..e19ae7bd 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -136,7 +136,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // double phim_fluc; // double phip_mean; // double phim_mean; - double vel_adv; +// double vel_adv; if (d_advected !=2 && d_advecting !=2){ for(ssize_t i=imin;i u_ed' // (b) mean_flux = -// vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); - mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; - mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0_half[k] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0_half[k] ; // (c) mix_flux_two = u_ing' // (d) eddy_flux = u_ing' u_ed' - vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], - vel_advecting_fluc[ijk], - vel_advecting_fluc[ijk + sp1_ing], - vel_advecting_fluc[ijk + sp2_ing]); - mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k] ; - eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k] ; + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k] ; flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; @@ -216,7 +214,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected[ijk], vel_advected[ijk + sm1_ed]); - vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); @@ -260,25 +258,28 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // vel_advected_mean[ijk], // vel_advected_mean[ijk + sm1_ed]); - phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + + +// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk] + sp2_ing); + const double vel_adv_mean = vel_advecting_mean_[k]; + const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], + vel_advecting_fluc[ijk], + vel_advecting_fluc[ijk + sp1_ing], + vel_advecting_fluc[ijk + sp2_ing]); // (a) mix_flux_one = u_ed' && mean_flux = // vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); - mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; - mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0_half[k+1] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0_half[k+1] ; // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' - vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], - vel_advecting_fluc[ijk], - vel_advecting_fluc[ijk + sp1_ing], - vel_advecting_fluc[ijk + sp2_ing]); - mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0_half[k+1] ; - eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0_half[k+1] ; + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k+1] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k+1] ; flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; if(isnan(flux[ijk])) { @@ -300,7 +301,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected[ijk], vel_advected[ijk + sm1_ed]); - vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); @@ -343,25 +344,26 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // vel_advected_mean[ijk], // vel_advected_mean[ijk + sm1_ed]); - phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect + +// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk] + sp2_ing); + const double vel_adv_mean = vel_advecting_mean_[k]; + const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], + vel_advecting_fluc[ijk], + vel_advecting_fluc[ijk + sp1_ing], + vel_advecting_fluc[ijk + sp2_ing]); // (a) mix_flux_one = u_ed' && mean_flux = -// vel_adv = vel_advecting_mean[k]; // interpolation of mean profiles in x-, y-direction has no effect - vel_adv = interp_4(vel_advecting_mean[ijk + sm1_ing], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); - mix_flux_one[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; - mean_flux[k] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0[k] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0[k] ; // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' - vel_adv = interp_4(vel_advecting_fluc[ijk + sm1_ing], - vel_advecting_fluc[ijk], - vel_advecting_fluc[ijk + sp1_ing], - vel_advecting_fluc[ijk + sp2_ing]); - mix_flux_two[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_mean + (vel_adv-fabs(vel_adv))*phim_mean)*rho0[k] ; - eddy_flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip_fluc + (vel_adv-fabs(vel_adv))*phim_fluc)*rho0[k] ; + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0[k] ; flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; if(isnan(flux[ijk])) { @@ -384,7 +386,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected[ijk], vel_advected[ijk + sm1_ed]); - vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], vel_advecting[ijk], vel_advecting[ijk + sp1_ing], vel_advecting[ijk + sp2_ing]); From 39f786d13ff6419810ca6e683c3b2f4f2af74739 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:30:03 +0200 Subject: [PATCH 166/511] weno5 MA decomp: debugging Nr. 6 (flux!=old_flux) --- Csrc/momentum_advection_weno_ql.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index e19ae7bd..dd7d4818 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -220,7 +220,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; +// flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; // printf("old flux: %f\n", fabs(flux_old[ijk])); } @@ -307,7 +307,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; +// flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; } } @@ -392,7 +392,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting[ijk + sp2_ing]); flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; - flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; +// flux[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; } } From db5e437c863df056949ec56f0d38a4d4b8720e9a Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:32:43 +0200 Subject: [PATCH 167/511] weno5 MA decomp: debugging Nr. 7 (phip_mean interpolated) --- Csrc/momentum_advection_weno_ql.h | 36 +++++++++++++++---------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index dd7d4818..147fdd93 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -152,11 +152,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); -// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], -// vel_advected_mean[ijk + sm1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk + sp2_ed]); + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); // phip_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], @@ -170,7 +170,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // vel_advected_mean[ijk], // vel_advected_mean[ijk + sm1_ed]); // phim_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); - const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], @@ -241,11 +241,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); -// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], -// vel_advected_mean[ijk + sm1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk + sp2_ed]); + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], @@ -258,7 +258,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // vel_advected_mean[ijk], // vel_advected_mean[ijk + sm1_ed]); - const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect @@ -327,11 +327,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk], vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk + sp2_ed]); -// const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], -// vel_advected_mean[ijk + sm1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk + sp2_ed]); + const double phip_mean = interp_weno5(vel_advected_mean[ijk + sm2_ed], + vel_advected_mean[ijk + sm1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk + sp2_ed]); const double phim_fluc = interp_weno5(vel_advected_fluc[ijk + sp3_ed], vel_advected_fluc[ijk + sp2_ed], @@ -344,7 +344,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // vel_advected_mean[ijk], // vel_advected_mean[ijk + sm1_ed]); - const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], From 329342f6cf166a5758d2cc2612f475f15ba5204b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:38:09 +0200 Subject: [PATCH 168/511] weno5 MA decomp: debugging Nr. 8 (phim_mean interpolated) --- Csrc/momentum_advection_weno_ql.h | 39 ++++++++++++++++--------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 147fdd93..eb549794 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -164,14 +164,15 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); -// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], -// vel_advected_mean[ijk + sp2_ed], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sm1_ed]); + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); // phim_mean = interp_weno5(vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k],vel_advected_mean_[k]); + // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], // vel_advecting_mean[ijk], @@ -252,14 +253,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); -// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], -// vel_advected_mean[ijk + sp2_ed], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sm1_ed]); - + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); +// // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], @@ -338,14 +339,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advected_fluc[ijk + sp1_ed], vel_advected_fluc[ijk], vel_advected_fluc[ijk + sm1_ed]); -// const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], -// vel_advected_mean[ijk + sp2_ed], -// vel_advected_mean[ijk + sp1_ed], -// vel_advected_mean[ijk], -// vel_advected_mean[ijk + sm1_ed]); + const double phim_mean = interp_weno5(vel_advected_mean[ijk + sp3_ed], + vel_advected_mean[ijk + sp2_ed], + vel_advected_mean[ijk + sp1_ed], + vel_advected_mean[ijk], + vel_advected_mean[ijk + sm1_ed]); // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect +// const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], // vel_advecting_mean[ijk], From 440601267c7ed0182b77b46145f0c390b01e8b8f Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:43:24 +0200 Subject: [PATCH 169/511] weno5 MA decomp: debugging Nr. 9 (val_adv_mean interpolated) --- Csrc/momentum_advection_weno_ql.h | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index eb549794..46b7c96c 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -174,11 +174,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - const double vel_adv_mean = vel_advecting_mean_[k]; + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); +// const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], vel_advecting_fluc[ijk + sp1_ing], @@ -263,11 +263,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - const double vel_adv_mean = vel_advecting_mean_[k]; + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); +// const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], vel_advecting_fluc[ijk + sp1_ing], @@ -348,11 +348,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - const double vel_adv_mean = vel_advecting_mean_[k]; + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); +// const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], vel_advecting_fluc[ijk + sp1_ing], From 393fade889a5cf58381f17a1677023281bde6a4b Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:47:08 +0200 Subject: [PATCH 170/511] weno5 MA decomp: debugging Nr. 10 (val_adv_mean interpolated but not used) --- Csrc/momentum_advection_weno_ql.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 46b7c96c..d508dad6 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -178,6 +178,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk] + sp2_ing); + vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], @@ -267,6 +268,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk] + sp2_ing); + vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], @@ -352,6 +354,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk] + sp2_ing); + vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], From b142843bcc4814d302f29ccc7657e959e6de922c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:49:33 +0200 Subject: [PATCH 171/511] weno5 MA decomp: debugging Nr. 10 (val_adv_mean interpolated but not used) --- Csrc/momentum_advection_weno_ql.h | 30 +++++++++++++++++++++--------- 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index d508dad6..68c0ffa6 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -174,7 +174,11 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk] + sp2_ing); + double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk] + sp2_ing); @@ -264,10 +268,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); + // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk] + sp2_ing); + double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -350,10 +358,14 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], - vel_advecting_mean[ijk], - vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); +// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk] + sp2_ing); + double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + vel_advecting_mean[ijk], + vel_advecting_mean[ijk + sp1_ing], + vel_advecting_mean[ijk] + sp2_ing); vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], From 55d3c4d851f38e157b423425e6a2124e55bd8a1c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:51:30 +0200 Subject: [PATCH 172/511] weno5 MA decomp: debugging Nr. 11 (val_adv_mean interpolation debug discovered) --- Csrc/momentum_advection_weno_ql.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 68c0ffa6..7d2890ef 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -181,7 +181,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); + vel_advecting_mean[ijk + sp2_ing]); vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -275,7 +275,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); + vel_advecting_mean[ijk + sp2_ing]); vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -365,7 +365,7 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], - vel_advecting_mean[ijk] + sp2_ing); + vel_advecting_mean[ijk + sp2_ing]); vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], From 594ff94389c1eca70ca7f0a563a00bfd04604ac0 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 9 May 2016 13:54:25 +0200 Subject: [PATCH 173/511] weno5 MA decomp: debugging Nr. 12 (val_adv_mean interpolated used) --- Csrc/momentum_advection_weno_ql.h | 36 +++++++++++++++---------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 7d2890ef..0dce451b 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -174,15 +174,15 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); - vel_adv_mean = vel_advecting_mean_[k]; +// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk + sp2_ing]); +// vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], @@ -268,15 +268,15 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect - // const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); - vel_adv_mean = vel_advecting_mean_[k]; +// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk + sp2_ing]); +// vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], @@ -358,15 +358,15 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do // const double phip_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect // const double phim_mean = vel_advected_mean_[k]; // interpolation of mean profiles in x-, y-direction has no effect -// const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk] + sp2_ing); - double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], + const double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); - vel_adv_mean = vel_advecting_mean_[k]; +// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], +// vel_advecting_mean[ijk], +// vel_advecting_mean[ijk + sp1_ing], +// vel_advecting_mean[ijk + sp2_ing]); +// vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], vel_advecting_fluc[ijk], From 8c0c49b333529d6e6fe394f0654345facc664298 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 10 May 2016 00:09:44 +0200 Subject: [PATCH 174/511] weno5 MA decomp QL: adding mean eddy flux computatoin --- Csrc/momentum_advection_weno_ql.h | 380 +++++++++++++++++++++++++++++- 1 file changed, 368 insertions(+), 12 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 0dce451b..739c0a15 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -178,10 +178,6 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); -// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk + sp2_ing]); // vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -272,10 +268,6 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); -// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk + sp2_ing]); // vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -362,10 +354,6 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do vel_advecting_mean[ijk], vel_advecting_mean[ijk + sp1_ing], vel_advecting_mean[ijk + sp2_ing]); -// double vel_adv_mean = interp_4(vel_advecting_mean[ijk + sm1_ing], -// vel_advecting_mean[ijk], -// vel_advecting_mean[ijk + sp1_ing], -// vel_advecting_mean[ijk + sp2_ing]); // vel_adv_mean = vel_advecting_mean_[k]; // const double vel_adv_mean = vel_advecting_mean_[k]; const double vel_adv_fluc = interp_4(vel_advecting_fluc[ijk + sm1_ing], @@ -453,6 +441,374 @@ void weno_fifth_order_m_decomp(struct DimStruct *dims, double* restrict rho0, do + +void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + if (d_advected==1 && d_advecting==1){ + printf("WENO5 decompositioned Momentum Transport \n");} + + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; + + const ssize_t stencil[3] = {istride,jstride,1}; + + const ssize_t sp1_ed = stencil[d_advecting]; + const ssize_t sp2_ed = 2*sp1_ed ; + const ssize_t sp3_ed = 3*sp1_ed ; + const ssize_t sm1_ed = -sp1_ed ; + const ssize_t sm2_ed = -2*sp1_ed ; + + const ssize_t sp1_ing = stencil[d_advected]; + const ssize_t sp2_ing = 2*sp1_ing ; + const ssize_t sm1_ing = -sp1_ing ; + + + // (1) average advecting and advected velocity + double *vel_advected_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advected_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advected_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_advecting_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_advecting_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + + horizontal_mean(dims, &vel_advecting[0], &vel_advecting_mean_[0]); + horizontal_mean(dims, &vel_advected[0], &vel_advected_mean_[0]); + + // (2) compute eddy fields + for(ssize_t i=imin;i0.0000001){ + ok = 1; + printf("!!! decomposition advecting , ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advecting[ijk]);} + + diff = vel_advected[ijk]-(vel_advected_mean[ijk] + vel_advected_fluc[ijk]); + if(fabs(diff)>0.0000001){ + ok = 1; + printf("!!! decomposition advected, ijk= %d, diff = %f, vel = %f \n", ijk, diff, vel_advected[ijk]);} + } + } + } +// if(ok==0){printf("good decomposition \n");} + free(vel_advected_mean_); + free(vel_advecting_mean_); + + + // (3) Compute Fluxes + // mix_flux_one = u_ed' + // mix_flux_two = u_ing' + // eddy_flux = u_ing' u_ed' + // mean_flux = + imin = 2; + jmin = 2; + kmin = 2; + imax = dims->nlg[0]-3; + jmax = dims->nlg[1]-3; + kmax = dims->nlg[2]-3; + double *mix_flux_one = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_two = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + + if (d_advected !=2 && d_advecting !=2){ + for(ssize_t i=imin;i u_ed' + // (b) mean_flux = + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0_half[k] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0_half[k] ; + + // (c) mix_flux_two = u_ing' + // (d) eddy_flux = u_ing' u_ed' + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + + if(isnan(flux[ijk])) { + printf("Nan in flux, d1!=2, d2!=2\n"); + } + + + // Old Flux + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + vel_advected[ijk + sm1_ed], + vel_advected[ijk], + vel_advected[ijk + sp1_ed], + vel_advected[ijk + sp2_ed]); + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + vel_advected[ijk + sp2_ed], + vel_advected[ijk + sp1_ed], + vel_advected[ijk], + vel_advected[ijk + sm1_ed]); + + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_advecting[ijk], + vel_advecting[ijk + sp1_ing], + vel_advecting[ijk + sp2_ing]); + + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k] ; + } + } + } + } + else if(d_advected == 2 && d_advecting == 2){ + for(ssize_t i=imin;i u_ed' && mean_flux = + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0_half[k+1] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0_half[k+1] ; + + // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k+1] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k+1] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) { + printf("Nan in flux, d1=2, d2=2\n"); + } + + + // Old Flux + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + vel_advected[ijk + sm1_ed], + vel_advected[ijk], + vel_advected[ijk + sp1_ed], + vel_advected[ijk + sp2_ed]); + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + vel_advected[ijk + sp2_ed], + vel_advected[ijk + sp1_ed], + vel_advected[ijk], + vel_advected[ijk + sm1_ed]); + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_advecting[ijk], + vel_advecting[ijk + sp1_ing], + vel_advecting[ijk + sp2_ing]); + + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0_half[k+1]; + } + } + } + } + else{ + for(ssize_t i=imin;i u_ed' && mean_flux = + mix_flux_one[ijk] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_fluc + (vel_adv_mean-fabs(vel_adv_mean))*phim_fluc)*rho0[k] ; + mean_flux[k] = 0.5 * ((vel_adv_mean+fabs(vel_adv_mean))*phip_mean + (vel_adv_mean-fabs(vel_adv_mean))*phim_mean)*rho0[k] ; + + // (b) mix_flux_two = u_ing' && eddy_flux = u_ing' u_ed' + mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0[k] ; + eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0[k] ; + + flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; + if(isnan(flux[ijk])) { + printf("Nan in flux, d1=2, d2!=2\n"); + } + + + // Original Flux computation + const double phip = interp_weno5(vel_advected[ijk + sm2_ed], + vel_advected[ijk + sm1_ed], + vel_advected[ijk], + vel_advected[ijk + sp1_ed], + vel_advected[ijk + sp2_ed]); + const double phim = interp_weno5(vel_advected[ijk + sp3_ed], + vel_advected[ijk + sp2_ed], + vel_advected[ijk + sp1_ed], + vel_advected[ijk], + vel_advected[ijk + sm1_ed]); + const double vel_adv = interp_4(vel_advecting[ijk + sm1_ing], + vel_advecting[ijk], + vel_advecting[ijk + sp1_ing], + vel_advecting[ijk + sp2_ing]); + + flux_old[ijk] = 0.5 * ((vel_adv+fabs(vel_adv))*phip + (vel_adv-fabs(vel_adv))*phim)*rho0[k]; + } + } + } + } + + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); + + + momentum_flux_divergence(dims, alpha0, alpha0_half, flux, + tendency, d_advected, d_advecting); + free(flux); + free(flux_old); + free(mix_flux_one); + free(mix_flux_two); + free(eddy_flux); + free(mean_eddy_flux); + free(mean_flux); + free(vel_advecting_fluc); + free(vel_advected_fluc); + free(vel_advecting_mean); + free(vel_advected_mean); + return; + } + + + + void weno_fifth_order_m_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict alpha0, double* restrict alpha0_half, double* restrict vel_advected, double* restrict vel_advecting, From e2d9a55bb0abd4fd0b3dc12fa8fc4c1af3f8cd8c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 10 May 2016 00:14:01 +0200 Subject: [PATCH 175/511] weno5 MA decomp QL: adding to momentum_advection.h --- Csrc/momentum_advection.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index 82cbe2e8..0b39d023 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -126,6 +126,10 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho fourth_order_ws_m_decomp(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + case 305: + weno_fifth_order_m_decomp_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; default: // Default to second order scheme. From dac506c627d47478b951053a508b29a5f9e0283c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 10 May 2016 00:19:12 +0200 Subject: [PATCH 176/511] weno5 MA decomp QL: computing flux_ql --- Csrc/momentum_advection_weno_ql.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 739c0a15..68171139 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -451,6 +451,7 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -788,12 +789,29 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, } horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); + for(ssize_t i=imin;i Date: Tue, 10 May 2016 00:23:20 +0200 Subject: [PATCH 177/511] weno5 MA decomp QL: computing flux as QL flux --- Csrc/momentum_advection_weno_ql.h | 35 ++++++++++++++++--------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 68171139..1110c0ae 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -451,7 +451,7 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; @@ -603,12 +603,11 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k] ; eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k] ; - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - - if(isnan(flux[ijk])) { - printf("Nan in flux, d1!=2, d2!=2\n"); - } +// flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; +// if(isnan(flux[ijk])) { +// printf("Nan in flux, d1!=2, d2!=2\n"); +// } // Old Flux const double phip = interp_weno5(vel_advected[ijk + sm2_ed], @@ -683,10 +682,10 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0_half[k+1] ; eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0_half[k+1] ; - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - if(isnan(flux[ijk])) { - printf("Nan in flux, d1=2, d2=2\n"); - } +// flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; +// if(isnan(flux[ijk])) { +// printf("Nan in flux, d1=2, d2=2\n"); +// } // Old Flux @@ -760,10 +759,10 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, mix_flux_two[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_mean + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_mean)*rho0[k] ; eddy_flux[ijk] = 0.5 * ((vel_adv_fluc+fabs(vel_adv_fluc))*phip_fluc + (vel_adv_fluc-fabs(vel_adv_fluc))*phim_fluc)*rho0[k] ; - flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; - if(isnan(flux[ijk])) { - printf("Nan in flux, d1=2, d2!=2\n"); - } +// flux[ijk] = mean_flux[k] + mix_flux_one[ijk] + mix_flux_two[ijk] + eddy_flux[ijk]; +// if(isnan(flux[ijk])) { +// printf("Nan in flux, d1=2, d2!=2\n"); +// } // Original Flux computation @@ -796,9 +795,11 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, for(ssize_t k=kmin;k Date: Tue, 10 May 2016 00:36:54 +0200 Subject: [PATCH 178/511] weno5 SA decomp QL: adding decomp_ql case; computing mean edd flux --- Csrc/scalar_advection.h | 7 +- Csrc/scalar_advection_ql.h | 178 ++++++++++++++++++++++++++++++++++++- 2 files changed, 183 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index 9d4664ba..7581bfea 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -746,9 +746,14 @@ void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, d break; case 205: weno_fifth_order_a_decomp(dims, rho0, rho0_half, velocity, scalar, flux, d); -// weno_fifth_order_a_decomp(dims, rho0, rho0_half, velocity, scalar, flux, flux_old, d); break; + case 305: + weno_fifth_order_a_decomp_ql(dims, rho0, rho0_half, velocity, scalar, flux, d); + break; + + + default: // Make WENO5 default case. The central schemes may not be necessarily stable, however WENO5 should be. weno_fifth_order_a(dims, rho0, rho0_half, velocity, scalar, flux, d); diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 8bbb1744..6f2c6aa5 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -613,7 +613,6 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do free(mean_flux); free(vel_fluc); free(vel_mean); -// free(vel_mean_); free(phi_fluc); free(phi_mean); free(phi_mean_); @@ -623,6 +622,183 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do +void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + const double* restrict velocity, const double* restrict scalar, + double* restrict flux, int d){ + if (d==1){printf("Scalar Advection: WENO 5 decomposition QL\n");} + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sp3 = 3 * sp1; + const ssize_t sm1 = -sp1 ; + const ssize_t sm2 = -2*sp1; + + // (1) average velocity and scalar field + double *vel_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + + horizontal_mean_const(dims, &velocity[0], &vel_mean[0]); + horizontal_mean_const(dims, &scalar[0], &phi_mean_[0]); + + // (2) compute eddy fields + for(ssize_t i=imin;iphi' + // mix_flux_phimean = u' + // eddy_flux = u' phi' + // mean_flux = + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double)*dims->nlg[2]); // ??? 1D profile sufficient!? + + imin = 2; + jmin = 2; + kmin = 2; + imax = dims->nlg[0]-3; + jmax = dims->nlg[1]-3; + kmax = dims->nlg[2]-3; + + double phip = 0.0; + double phim = 0.0; + if(d==2){ + for(ssize_t i=imin;iphi' + phip = interp_weno5(phi_fluc[ijk + sm2], + phi_fluc[ijk + sm1], + phi_fluc[ijk], + phi_fluc[ijk + sp1], + phi_fluc[ijk + sp2]); + phim = interp_weno5(phi_fluc[ijk + sp3], + phi_fluc[ijk + sp2], + phi_fluc[ijk + sp1], + phi_fluc[ijk], + phi_fluc[ijk + sm1]); + + // mean_eddy_flux = rms(v')*rms(phi')*covar(v',phi') // ????? different computation of mean eddy-flux + eddy_flux[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mix_flux_phiprime[ijk] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + + phip = interp_weno5(phi_mean[ijk+sm2],phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]); + phim = interp_weno5(phi_mean[ijk+sp3],phi_mean[ijk+sp2],phi_mean[ijk+sp1],phi_mean[ijk],phi_mean[ijk+sm1]); + + mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; + mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; + + flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; + + // Original Flux + phip = interp_weno5(scalar[ijk + sm2], + scalar[ijk + sm1], + scalar[ijk], + scalar[ijk + sp1], + scalar[ijk + sp2]); + phim = interp_weno5(scalar[ijk + sp3], + scalar[ijk + sp2], + scalar[ijk + sp1], + scalar[ijk], + scalar[ijk + sm1]); + + flux_old[ijk] = 0.5 * ((velocity[ijk]+fabs(velocity[ijk]))*phip + (velocity[ijk]-fabs(velocity[ijk]))*phim)*rho0[k]; + } // End k loop + } // End j loop + } // End i loop + } // End if + else{ + for(ssize_t i=imin;i Date: Tue, 10 May 2016 00:43:25 +0200 Subject: [PATCH 179/511] weno5 SA decomp QL: computing QL flux separately --- Csrc/scalar_advection_ql.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 6f2c6aa5..90f94687 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -673,6 +673,7 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, // eddy_flux = u' phi' // mean_flux = double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -784,7 +785,19 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, horizontal_mean_const(dims, &eddy_flux[0], &mean_eddy_flux[0]); + for(ssize_t i=imin;i Date: Tue, 10 May 2016 00:46:15 +0200 Subject: [PATCH 180/511] weno5 SA decomp QL: making QL approximation --- Csrc/scalar_advection_ql.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 90f94687..528cabe5 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -673,7 +673,7 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, // eddy_flux = u' phi' // mean_flux = double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phiprime = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phimean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -718,7 +718,7 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0[k]; mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0[k]; - flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; // Original Flux phip = interp_weno5(scalar[ijk + sm2], @@ -763,7 +763,7 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, mix_flux_phimean[ijk] = 0.5 * ((vel_fluc[ijk]+fabs(vel_fluc[ijk]))*phip + (vel_fluc[ijk]-fabs(vel_fluc[ijk]))*phim)*rho0_half[k]; mean_flux[k] = 0.5 * ((vel_mean[k]+fabs(vel_mean[k]))*phip + (vel_mean[k]-fabs(vel_mean[k]))*phim)*rho0_half[k]; - flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; +// flux[ijk] = mean_flux[k] + mix_flux_phiprime[ijk] + mix_flux_phimean[ijk] + eddy_flux[ijk]; // Original Flux phip = interp_weno5(scalar[ijk + sm2], @@ -791,13 +791,14 @@ void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Thu, 12 May 2016 14:59:38 +0200 Subject: [PATCH 181/511] 4th ws MA decomp QL: adding QL case; allocating fluxes as arrays --- Csrc/momentum_advection.h | 4 + Csrc/momentum_advection_central_ws_ql.h | 186 ++++++++++++++++++++++++ 2 files changed, 190 insertions(+) diff --git a/Csrc/momentum_advection.h b/Csrc/momentum_advection.h index 0b39d023..8ccf6795 100644 --- a/Csrc/momentum_advection.h +++ b/Csrc/momentum_advection.h @@ -130,6 +130,10 @@ void compute_advective_tendencies_m(struct DimStruct *dims, double* restrict rho weno_fifth_order_m_decomp_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, tendency, d_advected, d_advecting); break; + case 314: + fourth_order_ws_m_decomp_ql(dims, rho0, rho0_half, alpha0, alpha0_half, vel_advected, vel_advecting, + tendency, d_advected, d_advecting); + break; default: // Default to second order scheme. diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 5edcdb0b..9bd6433d 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -364,3 +364,189 @@ void fourth_order_ws_m_decomp(struct DimStruct *dims, double* restrict rho0, dou free(vel_ing_fluc); return; } + + + +void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict alpha0, double* restrict alpha0_half, + double* restrict vel_advected, double* restrict vel_advecting, + double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ + + if(d_advected==2 && d_advecting==2){ + printf("4th order Momentum Transport decomp\n");} + + // Dynamically allocate flux array + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + double *vel_ed_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ing_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ed_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_ing_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *vel_ed_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *vel_ing_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; + + ssize_t i,j,k; + + // (1) compute mean velocities + horizontal_mean(dims, &vel_advecting[0], &vel_ing_mean_[0]); + horizontal_mean(dims, &vel_advected[0], &vel_ed_mean_[0]); + + for(i=imin; inlg[0]-2; + jmax = dims->nlg[1]-2; + kmax = dims->nlg[2]-2; + + double *flux_eddy_mean = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_mean_eddy = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *eddy_flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + + if (d_advected != 2 && d_advecting !=2){ + for(ssize_t i=imin;i 1){printf("problem nan flux: count = %d\n",ok_nan);} +// else{printf("no nans in MA fluxes\n");} + + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); + + + momentum_flux_divergence(dims, alpha0, alpha0_half, flux, + tendency, d_advected, d_advecting); + free(flux); + free(flux_old); + free(flux_eddy_mean); + free(flux_mean_eddy); + free(eddy_flux); + free(mean_eddy_flux); + free(mean_flux); + + free(vel_ed_mean); + free(vel_ing_mean); + free(vel_ed_mean_); + free(vel_ing_mean_); + free(vel_ed_fluc); + free(vel_ing_fluc); + return; + } From e34e31b94a30d06d9e9c2d099574758c948f0539 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 12 May 2016 15:07:07 +0200 Subject: [PATCH 182/511] 4th ws MA decomp QL: calculating fluxes as arrays --- Csrc/momentum_advection_central_ws_ql.h | 33 ++++++++++++++----------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 9bd6433d..a2569c04 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -450,16 +450,17 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, const ssize_t jshift = j*jstride; for(ssize_t k=kmin;k Date: Thu, 12 May 2016 15:10:29 +0200 Subject: [PATCH 183/511] 4th ws MA decomp QL: calculating QL flux --- Csrc/momentum_advection_central_ws_ql.h | 26 ++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index a2569c04..b47fdd7b 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -378,6 +378,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, // Dynamically allocate flux array double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_ed_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_ing_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -517,6 +518,27 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, } } } + + + horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); + for(ssize_t i=imin;i 1){printf("problem nan flux: count = %d\n",ok_nan);} // else{printf("no nans in MA fluxes\n");} - horizontal_mean(dims, &eddy_flux[0], &mean_eddy_flux[0]); - - momentum_flux_divergence(dims, alpha0, alpha0_half, flux, tendency, d_advected, d_advecting); free(flux); free(flux_old); + free(flux_ql); free(flux_eddy_mean); free(flux_mean_eddy); free(eddy_flux); From 0eb757cc507c08293b33ba944a91a09d9619027e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 12 May 2016 15:14:04 +0200 Subject: [PATCH 184/511] 4th ws MA decomp QL: making QL approximation --- Csrc/momentum_advection_central_ws_ql.h | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index b47fdd7b..192f0077 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -378,7 +378,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, // Dynamically allocate flux array double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_ed_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *vel_ing_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); @@ -461,7 +461,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k]; // flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; - flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; +// flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k]; } @@ -485,8 +485,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0_half[k+1]; // flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; - flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; - +// flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0_half[k+1]; } @@ -510,8 +509,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, interp_4(vel_ed_mean[ijk+sm1_ed],vel_ed_mean[ijk],vel_ed_mean[ijk+sp1_ed],vel_ed_mean[ijk+sp2_ed]) * rho0[k+1]; // flux[ijk] = flux_eddy + flux_m1 + flux_m2 + flux_mean; - flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; - +// flux[ijk] = eddy_flux[ijk] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_flux[k]; flux_old[ijk] = (interp_2(vel_advecting[ijk],vel_advecting[ijk+sp1_ing]) * interp_4(vel_advected[ijk+sm1_ed],vel_advected[ijk],vel_advected[ijk+sp1_ed],vel_advected[ijk+sp2_ed])) * rho0[k]; } @@ -528,11 +526,11 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, for(ssize_t k=kmin;k Date: Thu, 12 May 2016 15:17:58 +0200 Subject: [PATCH 185/511] 4th ws SA decomp QL: adding QL case --- Csrc/scalar_advection.h | 3 + Csrc/scalar_advection_ql.h | 153 ++++++++++++++++++++++++++++++++++++- 2 files changed, 154 insertions(+), 2 deletions(-) diff --git a/Csrc/scalar_advection.h b/Csrc/scalar_advection.h index 7581bfea..8ee27f5e 100644 --- a/Csrc/scalar_advection.h +++ b/Csrc/scalar_advection.h @@ -748,6 +748,9 @@ void compute_advective_fluxes_a(struct DimStruct *dims, double* restrict rho0, d weno_fifth_order_a_decomp(dims, rho0, rho0_half, velocity, scalar, flux, d); break; + case 304: + fourth_order_a_decomp_ql(dims, rho0, rho0_half, velocity, scalar, flux, d); + break; case 305: weno_fifth_order_a_decomp_ql(dims, rho0, rho0_half, velocity, scalar, flux, d); break; diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 528cabe5..ec8da04c 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -285,7 +285,158 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double } +void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, + double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ + + if(d==2){printf("4th order Scalar Transport decomp \n");} + + double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *phi_mean_ = (double *)malloc(sizeof(double) * dims->nlg[2]); + + const ssize_t istride = dims->nlg[1] * dims->nlg[2]; + const ssize_t jstride = dims->nlg[2]; + + ssize_t imin = 0; + ssize_t jmin = 0; + ssize_t kmin = 0; + + ssize_t imax = dims->nlg[0]; + ssize_t jmax = dims->nlg[1]; + ssize_t kmax = dims->nlg[2]; + + ssize_t i,j,k; + + // (1) compute mean fields +// for(k=kmin; knlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); + double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + + const ssize_t stencil[3] = {istride,jstride,1}; + const ssize_t sp1 = stencil[d]; + const ssize_t sp2 = 2 * sp1; + const ssize_t sm1 = -sp1 ; + + imin = 1; + jmin = 1; + kmin = 1; + imax = dims->nlg[0]-2; + jmax = dims->nlg[1]-2; + kmax = dims->nlg[2]-2; +// +// ssize_t iimin = 0; +// ssize_t jjmin = 0; +// ssize_t kkmin = 0; +// +// ssize_t iimax = dims->nlg[0]; +// ssize_t jjmax = dims->nlg[1]; +// ssize_t kkmax = dims->nlg[2]; + + if(d==2){ + for(ssize_t i=imin;inlg[1] * dims->nlg[2]; From 353a19a56bb19e52b4142ad73ffdff3cac79c466 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 12 May 2016 15:21:47 +0200 Subject: [PATCH 186/511] 4th ws SA decomp QL: computing mean_eddy_flux, flux_ql --- Csrc/momentum_advection_central_ws_ql.h | 6 -- Csrc/scalar_advection_ql.h | 76 ++++++++++++------------- 2 files changed, 37 insertions(+), 45 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 192f0077..4e44e4ff 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -527,12 +527,6 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, const ssize_t ijk = ishift + jshift + k; flux[ijk] = mean_flux[k] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_eddy_flux[k]; -// flux_ql[ijk] = mean_flux[k] + flux_mean_eddy[ijk] + flux_eddy_mean[ijk] + mean_eddy_flux[k]; - -// if(isnan(flux_ql[ijk])) { - if(isnan(flux[ijk])) { - printf("Nan in QL flux, because of mean eddy flux\n"); - } } } } diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index ec8da04c..20cafd1c 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -305,14 +305,8 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou ssize_t imax = dims->nlg[0]; ssize_t jmax = dims->nlg[1]; ssize_t kmax = dims->nlg[2]; - ssize_t i,j,k; - // (1) compute mean fields -// for(k=kmin; knlg[0] * dims->nlg[1] * dims->nlg[2]); + double *mean_eddy_flux = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phimean = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); + double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -349,14 +342,6 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou imax = dims->nlg[0]-2; jmax = dims->nlg[1]-2; kmax = dims->nlg[2]-2; -// -// ssize_t iimin = 0; -// ssize_t jjmin = 0; -// ssize_t kkmin = 0; -// -// ssize_t iimax = dims->nlg[0]; -// ssize_t jjmax = dims->nlg[1]; -// ssize_t kkmax = dims->nlg[2]; if(d==2){ for(ssize_t i=imin;i 1){printf("problem nan flux: count = %d\n",ok_nan);} + free(eddy_flux); + free(mean_eddy_flux); free(mix_flux_phiprime); free(mix_flux_phimean); free(mean_flux); free(flux_old); + free(flux_ql); free(phi_fluc); free(phi_mean); free(phi_mean_); From 88a8e8685a6832e766283268de15f6d9c0f7d81e Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Thu, 12 May 2016 15:24:56 +0200 Subject: [PATCH 187/511] 4th ws SA decomp QL: making QL approximation --- Csrc/scalar_advection_ql.h | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 20cafd1c..097185e7 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -329,7 +329,7 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou double *mix_flux_phiprime = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *mean_flux = (double *)malloc(sizeof(double) * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); +// double *flux_ql = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); const ssize_t stencil[3] = {istride,jstride,1}; const ssize_t sp1 = stencil[d]; @@ -358,7 +358,7 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou * vel_mean[k] * rho0[k]; mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) * vel_mean[k] * rho0[k]; - flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; +// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0[k]; } // End k loop @@ -380,7 +380,7 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou * vel_mean[k] * rho0_half[k]; mean_flux[k] = interp_4(phi_mean[ijk+sm1],phi_mean[ijk],phi_mean[ijk+sp1],phi_mean[ijk+sp2]) * vel_mean[k] * rho0_half[k]; - flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; +// flux[ijk] = eddy_flux[ijk] + mix_flux_phimean[ijk] + mix_flux_phiprime[ijk] + mean_flux[k]; flux_old[ijk] = interp_4(scalar[ijk+sm1],scalar[ijk],scalar[ijk+sp1],scalar[ijk+sp2])*velocity[ijk]*rho0_half[k]; } // End k loop @@ -396,13 +396,12 @@ void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, dou for(ssize_t k=kmin;k Date: Thu, 12 May 2016 15:28:24 +0200 Subject: [PATCH 188/511] print statements --- Csrc/momentum_advection_central_ws_ql.h | 2 +- Csrc/scalar_advection_ql.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_central_ws_ql.h b/Csrc/momentum_advection_central_ws_ql.h index 4e44e4ff..dc62387c 100644 --- a/Csrc/momentum_advection_central_ws_ql.h +++ b/Csrc/momentum_advection_central_ws_ql.h @@ -373,7 +373,7 @@ void fourth_order_ws_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if(d_advected==2 && d_advecting==2){ - printf("4th order Momentum Transport decomp\n");} + printf("4th order Momentum Transport decomp QL\n");} // Dynamically allocate flux array double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 097185e7..7f4565de 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -288,7 +288,7 @@ void fourth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, double void fourth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, double* restrict velocity, double* restrict scalar, double* restrict flux, int d){ - if(d==2){printf("4th order Scalar Transport decomp \n");} + if(d==2){printf("4th order Scalar Transport decomp QL\n");} double *vel_mean = (double *)malloc(sizeof(double) * dims->nlg[2]); double *phi_fluc = (double *)malloc(sizeof(double) * dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); From a3b45634073478a3cc3a291cae0d507b24d573b4 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Fri, 13 May 2016 10:47:16 +0200 Subject: [PATCH 189/511] print statements --- Csrc/momentum_advection_weno_ql.h | 2 +- Csrc/scalar_advection_ql.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Csrc/momentum_advection_weno_ql.h b/Csrc/momentum_advection_weno_ql.h index 1110c0ae..6479663a 100644 --- a/Csrc/momentum_advection_weno_ql.h +++ b/Csrc/momentum_advection_weno_ql.h @@ -447,7 +447,7 @@ void weno_fifth_order_m_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict vel_advected, double* restrict vel_advecting, double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ if (d_advected==1 && d_advecting==1){ - printf("WENO5 decompositioned Momentum Transport \n");} + printf("MA: WENO5 decompositioned QL\n");} double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); double *flux_old = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); diff --git a/Csrc/scalar_advection_ql.h b/Csrc/scalar_advection_ql.h index 7f4565de..cc58680a 100644 --- a/Csrc/scalar_advection_ql.h +++ b/Csrc/scalar_advection_ql.h @@ -773,7 +773,7 @@ void weno_fifth_order_a_decomp(struct DimStruct *dims, double* restrict rho0, do void weno_fifth_order_a_decomp_ql(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, const double* restrict velocity, const double* restrict scalar, double* restrict flux, int d){ - if (d==1){printf("Scalar Advection: WENO 5 decomposition QL\n");} + if (d==1){printf("SA: WENO 5 decomposition QL\n");} const ssize_t istride = dims->nlg[1] * dims->nlg[2]; const ssize_t jstride = dims->nlg[2]; From 632ea237f172f3279c15347811587316224c6ab0 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Sat, 21 May 2016 18:20:07 +0200 Subject: [PATCH 190/511] devel_weno5_ql --- generate_namelist.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/generate_namelist.py b/generate_namelist.py index 07c73449..d5364b72 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -1004,7 +1004,7 @@ def DCBLSoares_moist(): # profile outputs namelist['stats_io'] = {} namelist['stats_io']['stats_dir'] = 'stats' - namelist['stats_io']['auxiliary'] = ['None'] # AuxiliaryStatistics + namelist['stats_io']['auxiliary'] = ['Fluxes'] # AuxiliaryStatistics namelist['stats_io']['frequency'] = 900.0 # field outputs From 20792c80f5faae5f262bc574523f7841219f1569 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Mon, 23 May 2016 15:17:35 +0200 Subject: [PATCH 191/511] new Radiation scheme merged; setup.py changed path for desktop computer --- Radiation.pxd | 103 +++++-- Radiation.pyx | 733 ++++++++++++++++++++++++++++++++++++++++++++++---- setup.py | 3 +- 3 files changed, 761 insertions(+), 78 deletions(-) diff --git a/Radiation.pxd b/Radiation.pxd index 9d16ae24..91a83190 100644 --- a/Radiation.pxd +++ b/Radiation.pxd @@ -4,55 +4,118 @@ cimport PrognosticVariables cimport DiagnosticVariables from NetCDFIO cimport NetCDFIO_Stats cimport ParallelMPI +cimport TimeStepping -cdef class Radiation: +cdef class RadiationBase: cdef: - object scheme + double [:] heating_rate + ParallelMPI.Pencil z_pencil + double srf_lw_down + double srf_lw_up + double srf_sw_down + double srf_sw_up + + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) -cdef class RadiationNone: +cdef class RadiationNone(RadiationBase): cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) -cdef class RadiationDyCOMS_RF01: +cdef class RadiationDyCOMS_RF01(RadiationBase): cdef: double alpha_z double kap double f0 double f1 double divergence - double [:] heating_rate - ParallelMPI.Pencil z_pencil cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) -cdef class RadiationSmoke: +cdef class RadiationSmoke(RadiationBase): cdef: double f0 double kap - ParallelMPI.Pencil z_pencil + + + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, + ParallelMPI.ParallelMPI Pa) + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + + +cdef class RadiationRRTM(RadiationBase): + cdef: + + str profile_name + Py_ssize_t n_buffer + Py_ssize_t n_ext + double stretch_factor + double patch_pressure + double [:] p_ext + double [:] t_ext + double [:] rv_ext + double [:] p_full + double [:] pi_full + + + double co2_factor + double h2o_factor + int dyofyr + double scon + double adjes + double solar_constant + double coszen + double adif + double adir + double radiation_frequency + double next_radiation_calculate + + double [:] o3vmr + double [:] co2vmr + double [:] ch4vmr + double [:] n2ovmr + double [:] o2vmr + double [:] cfc11vmr + double [:] cfc12vmr + double [:] cfc22vmr + double [:] ccl4vmr + bint uniform_reliq + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa) - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cdef update_RRTM(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV,ParallelMPI.ParallelMPI Pa) + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) \ No newline at end of file diff --git a/Radiation.pyx b/Radiation.pyx index bcff760b..559fd547 100644 --- a/Radiation.pyx +++ b/Radiation.pyx @@ -1,6 +1,6 @@ #!python #cython: boundscheck=False -#cython: wraparound=False +#cython: wraparound=True #cython: initializedcheck=False #cython: cdivision=True @@ -10,60 +10,112 @@ cimport PrognosticVariables cimport DiagnosticVariables from NetCDFIO cimport NetCDFIO_Stats cimport ParallelMPI - +cimport TimeStepping import numpy as np cimport numpy as np -from libc.math cimport pow, cbrt, exp +import netCDF4 as nc +from scipy.interpolate import pchip_interpolate +from libc.math cimport pow, cbrt, exp, fmin, fmax +from thermodynamic_functions cimport cpm_c include 'parameters.pxi' - -cdef class Radiation: - def __init__(self, namelist, ParallelMPI.ParallelMPI Pa): +from profiles import profile_data + +def RadiationFactory(namelist, ParallelMPI.ParallelMPI Pa): + # if namelist specifies RRTM is to be used, this will override any case-specific radiation schemes + try: + use_rrtm = namelist['radiation']['use_RRTM'] + except: + use_rrtm = False + if use_rrtm: + return RadiationRRTM(namelist) + else: casename = namelist['meta']['casename'] if casename == 'DYCOMS_RF01': - self.scheme = RadiationDyCOMS_RF01() + return RadiationDyCOMS_RF01() elif casename == 'DYCOMS_RF02': #Dycoms RF01 and RF02 use the same radiation - self.scheme = RadiationDyCOMS_RF01() + return RadiationDyCOMS_RF01() elif casename == 'SMOKE': - self.scheme = RadiationSmoke() + return RadiationSmoke() else: - self.scheme = RadiationNone() + return RadiationNone() + + + +cdef class RadiationBase: + def __init__(self): return cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.scheme.initialize(Gr, NS, Pa) + self.z_pencil = ParallelMPI.Pencil() + self.z_pencil.initialize(Gr, Pa, 2) + self.heating_rate = np.zeros((Gr.dims.npg,), dtype=np.double, order='c') + + NS.add_profile('radiative_heating_rate', Gr, Pa) + NS.add_profile('radiative_entropy_tendency', Gr, Pa) + NS.add_ts('srf_lw_flux_up', Gr, Pa) + NS.add_ts('srf_lw_flux_down', Gr, Pa) + NS.add_ts('srf_sw_flux_up', Gr, Pa) + NS.add_ts('srf_sw_flux_down', Gr, Pa) + + + return + + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, - ParallelMPI.ParallelMPI Pa): - self.scheme.update(Gr, Ref, PV, DV, Pa) + TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa): return - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.scheme.stats_io(Gr, PV, DV, NS, Pa) + + cdef: + Py_ssize_t i + Py_ssize_t t_shift = DV.get_varshift(Gr, 'temperature') + double [:] entropy_tendency = np.zeros((Gr.dims.npg,), dtype=np.double, order='c') + double [:] tmp + + # Now update entropy tendencies + with nogil: + for i in xrange(Gr.dims.npg): + entropy_tendency[i] = self.heating_rate[i] / DV.values[i + t_shift] + + tmp = Pa.HorizontalMean(Gr, &self.heating_rate[0]) + NS.write_profile('radiative_heating_rate', tmp[Gr.dims.gw:-Gr.dims.gw], Pa) + + tmp = Pa.HorizontalMean(Gr, &entropy_tendency[0]) + NS.write_profile('radiative_entropy_tendency', tmp[Gr.dims.gw:-Gr.dims.gw], Pa) + + NS.write_ts('srf_lw_flux_up',self.srf_lw_up, Pa ) # Units are W/m^2 + NS.write_ts('srf_lw_flux_down', self.srf_lw_down, Pa) + NS.write_ts('srf_sw_flux_up', self.srf_sw_up, Pa) + NS.write_ts('srf_sw_flux_down', self.srf_sw_down, Pa) return -cdef class RadiationNone: +cdef class RadiationNone(RadiationBase): def __init__(self): return cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): return + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, - ParallelMPI.ParallelMPI Pa): + TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa): return - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): return -cdef class RadiationDyCOMS_RF01: +cdef class RadiationDyCOMS_RF01(RadiationBase): def __init__(self): self.alpha_z = 1.0 self.kap = 85.0 @@ -71,20 +123,20 @@ cdef class RadiationDyCOMS_RF01: self.f1 = 22.0 self.divergence = 3.75e-6 - self.z_pencil = ParallelMPI.Pencil() return cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.z_pencil.initialize(Gr, Pa, 2) - self.heating_rate = np.zeros((Gr.dims.npg,), dtype=np.double, order='c') - NS.add_profile('radiative_heating_rate', Gr, Pa) - NS.add_profile('radiative_entropy_tendency', Gr, Pa) + RadiationBase.initialize(self, Gr, NS, Pa) return + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + return + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, - ParallelMPI.ParallelMPI Pa): + TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa): cdef: Py_ssize_t imin = Gr.dims.gw @@ -177,29 +229,9 @@ cdef class RadiationDyCOMS_RF01: return - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - - - - cdef: - Py_ssize_t i - Py_ssize_t t_shift = DV.get_varshift(Gr, 'temperature') - double [:] entropy_tendency = np.zeros((Gr.dims.npg,), dtype=np.double, order='c') - double [:] tmp - - # Now update entropy tendencies - with nogil: - for i in xrange(Gr.dims.npg): - entropy_tendency[i] = self.heating_rate[i] / DV.values[i + t_shift] - - tmp = Pa.HorizontalMean(Gr, &self.heating_rate[0]) - NS.write_profile('radiative_heating_rate', tmp[Gr.dims.gw:-Gr.dims.gw], Pa) - - tmp = Pa.HorizontalMean(Gr, &entropy_tendency[0]) - NS.write_profile('radiative_entropy_tendency', tmp[Gr.dims.gw:-Gr.dims.gw], Pa) - + RadiationBase.stats_io(self, Gr, DV, NS, Pa) return @@ -217,16 +249,20 @@ cdef class RadiationSmoke: def __init__(self): self.f0 = 60.0 self.kap = 0.02 - self.z_pencil = ParallelMPI.Pencil() + return cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.z_pencil.initialize(Gr, Pa, 2) + RadiationBase.initialize(self, Gr, NS, Pa) + return + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, - ParallelMPI.ParallelMPI Pa): + TimeStepping.TimeStepping TS, ParallelMPI.ParallelMPI Pa): cdef: Py_ssize_t imin = Gr.dims.gw @@ -247,7 +283,7 @@ cdef class RadiationSmoke: double [:, :] smoke_pencils = self.z_pencil.forward_double(&Gr.dims, Pa, &PV.values[smoke_shift]) double[:, :] f_rad = np.zeros((self.z_pencil.n_local_pencils, Gr.dims.n[2] + 1), dtype=np.double, order='c') double[:, :] f_heat = np.zeros((self.z_pencil.n_local_pencils, Gr.dims.n[2]), dtype=np.double, order='c') - double[:] heating_rate = np.zeros((Gr.dims.npg, ), dtype=np.double, order='c') + double q_0 double zi @@ -275,7 +311,388 @@ cdef class RadiationSmoke: (f_rad[pi, k + 1] - f_rad[pi, k]) * dzi / rho_half[k] # Now transpose the flux pencils - self.z_pencil.reverse_double(&Gr.dims, Pa, f_heat, &heating_rate[0]) + self.z_pencil.reverse_double(&Gr.dims, Pa, f_heat, &self.heating_rate[0]) + + + # Now update entropy tendencies + with nogil: + for i in xrange(imin, imax): + ishift = i * istride + for j in xrange(jmin, jmax): + jshift = j * jstride + for k in xrange(kmin, kmax): + ijk = ishift + jshift + k + PV.tendencies[ + s_shift + ijk] += self.heating_rate[ijk] / DV.values[ijk + t_shift] + + return + + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + RadiationBase.stats_io(self, Gr, DV, NS, Pa) + + return + + +# Note: the RRTM modules are compiled in the 'RRTMG' directory: +cdef extern: + void c_rrtmg_lw_init(double *cpdair) + void c_rrtmg_lw ( + int *ncol ,int *nlay ,int *icld ,int *idrv , + double *play ,double *plev ,double *tlay ,double *tlev ,double *tsfc , + double *h2ovmr ,double *o3vmr ,double *co2vmr ,double *ch4vmr ,double *n2ovmr ,double *o2vmr, + double *cfc11vmr,double *cfc12vmr,double *cfc22vmr,double *ccl4vmr ,double *emis , + int *inflglw ,int *iceflglw,int *liqflglw,double *cldfr , + double *taucld ,double *cicewp ,double *cliqwp ,double *reice ,double *reliq , + double *tauaer , + double *uflx ,double *dflx ,double *hr ,double *uflxc ,double *dflxc, double *hrc, + double *duflx_dt,double *duflxc_dt ) + void c_rrtmg_sw_init(double *cpdair) + void c_rrtmg_sw (int *ncol ,int *nlay ,int *icld ,int *iaer , + double *play ,double *plev ,double *tlay ,double *tlev ,double *tsfc , + double *h2ovmr ,double *o3vmr ,double *co2vmr ,double *ch4vmr ,double *n2ovmr ,double *o2vmr, + double *asdir ,double *asdif ,double *aldir ,double *aldif , + double *coszen ,double *adjes ,int *dyofyr ,double *scon , + int *inflgsw ,int *iceflgsw,int *liqflgsw,double *cldfr , + double *taucld ,double *ssacld ,double *asmcld ,double *fsfcld , + double *cicewp ,double *cliqwp ,double *reice ,double *reliq , + double *tauaer ,double *ssaaer ,double *asmaer ,double *ecaer , + double *swuflx ,double *swdflx ,double *swhr ,double *swuflxc ,double *swdflxc ,double *swhrc) + + + + +cdef class RadiationRRTM: + def __init__(self, namelist): + # Required for surface energy budget calculations, can also be used for stats io + self.srf_lw_down = 0.0 + self.srf_sw_down = 0.0 + self.srf_lw_up = 0.0 + self.srf_sw_down = 0.0 + + casename = namelist['meta']['casename'] + if casename == 'SHEBA': + self.profile_name = 'sheba' + elif casename == 'DYCOMS_RF01': + self.profile_name = 'cgils_s12' + else: + self.profile_name = 'default' + + # Namelist options related to the profile extension + try: + self.n_buffer = namelist['radiation']['RRTM']['buffer_points'] + except: + self.n_buffer = 0 + try: + self.stretch_factor = namelist['radiation']['RRTM']['stretch_factor'] + except: + self.stretch_factor = 1.0 + + try: + self.patch_pressure = namelist['radiation']['RRTM']['patch_pressure'] + except: + self.patch_pressure = 600.00*100.0 + + # Namelist options related to gas concentrations + try: + self.co2_factor = namelist['radiation']['RRTM']['co2_factor'] + except: + self.co2_factor = 1.0 + + try: + self.h2o_factor = namelist['radiation']['RRTM']['h2o_factor'] + except: + self.h2o_factor = 1.0 + + # Namelist options related to insolation + try: + self.dyofyr = namelist['radiation']['RRTM']['dyofyr'] + except: + self.dyofyr = 0 + try: + self.adjes = namelist['radiation']['RRTM']['adjes'] + except: + print('Insolation adjustive factor not set so RadiationRRTM takes default value: adjes = 0.5 (12 hour of daylight).') + self.adjes = 0.5 + + try: + self.scon = namelist['radiation']['RRTM']['solar_constant'] + except: + print('Solar Constant not set so RadiationRRTM takes default value: scon = 1360.0 .') + self.scon = 1360.0 + + try: + self.coszen =namelist['radiation']['RRTM']['coszen'] + except: + print('Mean Daytime cos(SZA) not set so RadiationRRTM takes default value: coszen = 2.0/pi .') + self.coszen = 2.0/pi + + try: + self.adif = namelist['radiation']['RRTM']['adif'] + except: + print('Surface diffusive albedo not set so RadiationRRTM takes default value: adif = 0.06 .') + self.adif = 0.06 + + try: + self.adir = namelist['radiation']['RRTM']['adir'] + except: + if (self.coszen > 0.0): + self.adir = (.026/(self.coszen**1.7 + .065)+(.15*(self.coszen-0.10)*(self.coszen-0.50)*(self.coszen- 1.00))) + else: + self.adir = 0.0 + print('Surface direct albedo not set so RadiationRRTM computes value: adif = %5.4f .'%(self.adir)) + + try: + self.uniform_reliq = namelist['radiation']['RRTM']['uniform_reliq'] + except: + print('uniform_reliq not set so RadiationRRTM takes default value: uniform_reliq = False.') + self.uniform_reliq = False + + try: + self.radiation_frequency = namelist['radiation']['RRTM']['frequency'] + except: + print('radiation_frequency not set so RadiationRRTM takes default value: radiation_frequency = 0.0 (compute at every step).') + self.radiation_frequency = 0.0 + + self.next_radiation_calculate = 0.0 + + + + return + + + cpdef initialize(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + RadiationBase.initialize(self, Gr, NS, Pa) + return + + + + cpdef initialize_profiles(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, DiagnosticVariables.DiagnosticVariables DV, + NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + + + cdef: + Py_ssize_t qv_shift = DV.get_varshift(Gr, 'qv') + Py_ssize_t t_shift = DV.get_varshift(Gr, 'temperature') + double [:,:] qv_pencils = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[qv_shift]) + double [:,:] t_pencils = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[t_shift]) + Py_ssize_t nz = Gr.dims.n[2] + Py_ssize_t gw = Gr.dims.gw + Py_ssize_t i,k + + + # Construct the extension of the profiles, including a blending region between the given profile and LES domain (if desired) + pressures = profile_data[self.profile_name]['pressure'][:] + temperatures = profile_data[self.profile_name]['temperature'][:] + vapor_mixing_ratios = profile_data[self.profile_name]['vapor_mixing_ratio'][:] + + n_profile = len(pressures[pressures<=self.patch_pressure]) # nprofile = # of points in the fixed profile to use + self.n_ext = n_profile + self.n_buffer # n_ext = total # of points to add to LES domain (buffer portion + fixed profile portion) + + + # Create the space for the extensions (to be tacked on to top of LES pencils) + # we declare these as class members in case we want to modify the buffer zone during run time + # i.e. if there is some drift to top of LES profiles + + self.p_ext = np.zeros((self.n_ext,),dtype=np.double) + self.t_ext = np.zeros((self.n_ext,),dtype=np.double) + self.rv_ext = np.zeros((self.n_ext,),dtype=np.double) + cdef Py_ssize_t count = 0 + for k in xrange(len(pressures)-n_profile, len(pressures)): + self.p_ext[self.n_buffer+count] = pressures[k] + self.t_ext[self.n_buffer+count] = temperatures[k] + self.rv_ext[self.n_buffer+count] = vapor_mixing_ratios[k] + count += 1 + + + # Now create the buffer zone + if self.n_buffer > 0: + dp = np.abs(Ref.p0_half_global[nz + gw -1] - Ref.p0_half_global[nz + gw -2]) + self.p_ext[0] = Ref.p0_half_global[nz + gw -1] - dp + print(self.p_ext[0]) + for i in range(1,self.n_buffer): + self.p_ext[i] = self.p_ext[i-1] - (i+1.0)**self.stretch_factor * dp + + for i in xrange(self.n_ext): + print i, self.p_ext[i] + + # Pressures of "data" points for interpolation, must be INCREASING pressure + xi = np.array([self.p_ext[self.n_buffer+1],self.p_ext[self.n_buffer],Ref.p0_half_global[nz + gw -1],Ref.p0_half_global[nz + gw -2] ],dtype=np.double) + print(xi) + + + # interpolation for temperature + ti = np.array([self.t_ext[self.n_buffer+1],self.t_ext[self.n_buffer], t_pencils[0,nz-1],t_pencils[0,nz-2] ], dtype = np.double) + # interpolation for vapor mixing ratio + rv_m2 = qv_pencils[0, nz-2]/ (1.0 - qv_pencils[0, nz-2]) + rv_m1 = qv_pencils[0,nz-1]/(1.0-qv_pencils[0,nz-1]) + ri = np.array([self.rv_ext[self.n_buffer+1],self.rv_ext[self.n_buffer], rv_m1, rv_m2 ], dtype = np.double) + + for i in xrange(self.n_buffer): + self.rv_ext[i] = pchip_interpolate(xi, ri, self.p_ext[i] ) + self.t_ext[i] = pchip_interpolate(xi,ti, self.p_ext[i]) + + + + self.p_full = np.zeros((self.n_ext+nz,), dtype=np.double) + self.pi_full = np.zeros((self.n_ext+1+nz,),dtype=np.double) + + self.p_full[0:nz] = Ref.p0_half_global[gw:nz+gw] + self.p_full[nz:]=self.p_ext[:] + + self.pi_full[0:nz] = Ref.p0_global[gw:nz+gw] + for i in range(nz,self.n_ext+nz): + self.pi_full[i] = (self.p_full[i] + self.p_full[i-1]) * 0.5 + self.pi_full[self.n_ext + nz] = 2.0 * self.p_full[self.n_ext + nz -1 ] - self.pi_full[self.n_ext + nz -1] + + # try to get ozone + try: + o3_trace = profile_data[self.profile_name]['o3_vmr'][:] # O3 VMR (from SRF to TOP) + o3_pressure = profile_data[self.profile_name]['pressure'][:]/100.0 # Pressure (from SRF to TOP) in hPa + # can't do simple interpolation... Need to conserve column path !!! + use_o3in = True + except: + try: + o3_trace = profile_data[self.profile_name]['o3_mr'][:]*28.97/47.9982 # O3 MR converted to VMR + o3_pressure = profile_data[self.profile_name]['pressure'][:]/100.0 # Pressure (from SRF to TOP) in hPa + # can't do simple interpolation... Need to conserve column path !!! + use_o3in = True + + except: + print('O3 profile not set so default RRTM profile will be used.') + use_o3in = False + + #Initialize rrtmg_lw and rrtmg_sw + cdef double cpdair = np.float64(cpd) + c_rrtmg_lw_init(&cpdair) + c_rrtmg_sw_init(&cpdair) + + # Read in trace gas data + lw_input_file = './RRTMG/lw/data/rrtmg_lw.nc' + lw_gas = nc.Dataset(lw_input_file, "r") + + lw_pressure = np.asarray(lw_gas.variables['Pressure']) + lw_absorber = np.asarray(lw_gas.variables['AbsorberAmountMLS']) + lw_absorber = np.where(lw_absorber>2.0, np.zeros_like(lw_absorber), lw_absorber) + lw_ngas = lw_absorber.shape[1] + lw_np = lw_absorber.shape[0] + + # 9 Gases: O3, CO2, CH4, N2O, O2, CFC11, CFC12, CFC22, CCL4 + # From rad_driver.f90, lines 546 to 552 + trace = np.zeros((9,lw_np),dtype=np.double,order='F') + for i in xrange(lw_ngas): + gas_name = ''.join(lw_gas.variables['AbsorberNames'][i,:]) + if 'O3' in gas_name: + trace[0,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'CO2' in gas_name: + trace[1,:] = lw_absorber[:,i].reshape(1,lw_np)*self.co2_factor + elif 'CH4' in gas_name: + trace[2,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'N2O' in gas_name: + trace[3,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'O2' in gas_name: + trace[4,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'CFC11' in gas_name: + trace[5,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'CFC12' in gas_name: + trace[6,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'CFC22' in gas_name: + trace[7,:] = lw_absorber[:,i].reshape(1,lw_np) + elif 'CCL4' in gas_name: + trace[8,:] = lw_absorber[:,i].reshape(1,lw_np) + + # From rad_driver.f90, lines 585 to 620 + trpath = np.zeros((nz + self.n_ext + 1, 9),dtype=np.double,order='F') + # plev = self.pi_full[:]/100.0 + for i in xrange(1, nz + self.n_ext + 1): + trpath[i,:] = trpath[i-1,:] + if (self.pi_full[i-1]/100.0 > lw_pressure[0]): + trpath[i,:] = trpath[i,:] + (self.pi_full[i-1]/100.0 - np.max((self.pi_full[i]/100.0,lw_pressure[0])))/g*trace[:,0] + for m in xrange(1,lw_np): + #print i, m + plow = np.min((self.pi_full[i-1]/100.0,np.max((self.pi_full[i]/100.0, lw_pressure[m-1])))) + pupp = np.min((self.pi_full[i-1]/100.0,np.max((self.pi_full[i]/100.0, lw_pressure[m])))) + if (plow > pupp): + pmid = 0.5*(plow+pupp) + wgtlow = (pmid-lw_pressure[m])/(lw_pressure[m-1]-lw_pressure[m]) + wgtupp = (lw_pressure[m-1]-pmid)/(lw_pressure[m-1]-lw_pressure[m]) + trpath[i,:] = trpath[i,:] + (plow-pupp)/g*(wgtlow*trace[:,m-1] + wgtupp*trace[:,m]) + if (self.pi_full[i]/100.0 < lw_pressure[lw_np-1]): + trpath[i,:] = trpath[i,:] + (np.min((self.pi_full[i-1]/100.0,lw_pressure[lw_np-1]))-self.pi_full[i]/100.0)/g*trace[:,lw_np-1] + + tmpTrace = np.zeros((nz + self.n_ext,9),dtype=np.double,order='F') + for i in xrange(9): + for k in xrange(nz + self.n_ext): + tmpTrace[k,i] = g*100.0/(self.pi_full[k]-self.pi_full[k+1])*(trpath[k+1,i]-trpath[k,i]) + + if use_o3in == False: + self.o3vmr = np.array(tmpTrace[:,0],dtype=np.double, order='F') + else: + # o3_trace, o3_pressure + trpath_o3 = np.zeros(nz + self.n_ext+1, dtype=np.double, order='F') + # plev = self.pi_full/100.0 + o3_np = o3_trace.shape[0] + for i in xrange(1, nz + self.n_ext+1): + trpath_o3[i] = trpath_o3[i-1] + if (self.pi_full[i-1]/100.0 > o3_pressure[0]): + trpath_o3[i] = trpath_o3[i] + (self.pi_full[i-1]/100.0 - np.max((self.pi_full[i]/100.0,o3_pressure[0])))/g*o3_trace[0] + for m in xrange(1,o3_np): + #print i, m + plow = np.min((self.pi_full[i-1]/100.0,np.max((self.pi_full[i]/100.0, o3_pressure[m-1])))) + pupp = np.min((self.pi_full[i-1]/100.0,np.max((self.pi_full[i]/100.0, o3_pressure[m])))) + if (plow > pupp): + pmid = 0.5*(plow+pupp) + wgtlow = (pmid-o3_pressure[m])/(o3_pressure[m-1]-o3_pressure[m]) + wgtupp = (o3_pressure[m-1]-pmid)/(o3_pressure[m-1]-o3_pressure[m]) + trpath_o3[i] = trpath_o3[i] + (plow-pupp)/g*(wgtlow*o3_trace[m-1] + wgtupp*o3_trace[m]) + if (self.pi_full[i]/100.0 < o3_pressure[o3_np-1]): + trpath_o3[i] = trpath_o3[i] + (np.min((self.pi_full[i-1]/100.0,o3_pressure[o3_np-1]))-self.pi_full[i]/100.0)/g*o3_trace[o3_np-1] + tmpTrace_o3 = np.zeros( nz + self.n_ext, dtype=np.double, order='F') + for k in xrange(nz + self.n_ext): + tmpTrace_o3[k] = g *100.0/(self.pi_full[k]-self.pi_full[k+1])*(trpath_o3[k+1]-trpath_o3[k]) + self.o3vmr = np.array(tmpTrace_o3[:],dtype=np.double, order='F') + + self.co2vmr = np.array(tmpTrace[:,1],dtype=np.double, order='F') + self.ch4vmr = np.array(tmpTrace[:,2],dtype=np.double, order='F') + self.n2ovmr = np.array(tmpTrace[:,3],dtype=np.double, order='F') + self.o2vmr = np.array(tmpTrace[:,4],dtype=np.double, order='F') + self.cfc11vmr = np.array(tmpTrace[:,5],dtype=np.double, order='F') + self.cfc12vmr = np.array(tmpTrace[:,6],dtype=np.double, order='F') + self.cfc22vmr = np.array( tmpTrace[:,7],dtype=np.double, order='F') + self.ccl4vmr = np.array(tmpTrace[:,8],dtype=np.double, order='F') + + + + return + cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, + PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, TimeStepping.TimeStepping TS, + ParallelMPI.ParallelMPI Pa): + + + if TS.rk_step == 0: + if self.radiation_frequency <= 0.0: + self.update_RRTM(Gr, Ref, PV, DV, Pa) + elif TS.t >= self.next_radiation_calculate: + self.update_RRTM(Gr, Ref, PV, DV, Pa) + self.next_radiation_calculate = (TS.t//self.radiation_frequency + 1.0) * self.radiation_frequency + + + cdef: + Py_ssize_t imin = Gr.dims.gw + Py_ssize_t jmin = Gr.dims.gw + Py_ssize_t kmin = Gr.dims.gw + + Py_ssize_t imax = Gr.dims.nlg[0] - Gr.dims.gw + Py_ssize_t jmax = Gr.dims.nlg[1] - Gr.dims.gw + Py_ssize_t kmax = Gr.dims.nlg[2] - Gr.dims.gw + + Py_ssize_t i, j, k, ijk, ishift, jshift + Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] + Py_ssize_t jstride = Gr.dims.nlg[2] + Py_ssize_t s_shift = PV.get_varshift(Gr, 's') + Py_ssize_t t_shift = DV.get_varshift(Gr, 'temperature') + # Now update entropy tendencies @@ -287,12 +704,214 @@ cdef class RadiationSmoke: for k in xrange(kmin, kmax): ijk = ishift + jshift + k PV.tendencies[ - s_shift + ijk] += heating_rate[ijk] / DV.values[ijk + t_shift] + s_shift + ijk] += self.heating_rate[ijk] / DV.values[ijk + t_shift] + return - cpdef stats_io(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, - PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, + cdef update_RRTM(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, + DiagnosticVariables.DiagnosticVariables DV,ParallelMPI.ParallelMPI Pa): + cdef: + Py_ssize_t nz = Gr.dims.n[2] + Py_ssize_t nz_full = self.n_ext + nz + Py_ssize_t n_pencils = self.z_pencil.n_local_pencils + Py_ssize_t t_shift = DV.get_varshift(Gr, 'temperature') + Py_ssize_t qv_shift = DV.get_varshift(Gr, 'qv') + Py_ssize_t ql_shift = DV.get_varshift(Gr, 'ql') + Py_ssize_t qi_shift + double [:,:] t_pencil = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[t_shift]) + double [:,:] qv_pencil = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[qv_shift]) + double [:,:] ql_pencil = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[ql_shift]) + double [:,:] qi_pencil = np.zeros((n_pencils,nz),dtype=np.double, order='c') + double [:,:] rl_full = np.zeros((n_pencils,nz_full), dtype=np.double, order='F') + Py_ssize_t k, ip + bint use_ice = False + + + + if 'qi' in DV.name_index: + qi_shift = DV.get_varshift(Gr, 'qi') + qi_pencil = self.z_pencil.forward_double(&Gr.dims, Pa, &DV.values[qi_shift]) + use_ice = True + + + + + # Define input arrays for RRTM + cdef: + double [:,:] play_in = np.zeros((n_pencils,nz_full), dtype=np.double, order='F') + double [:,:] plev_in = np.zeros((n_pencils,nz_full + 1), dtype=np.double, order='F') + double [:,:] tlay_in = np.zeros((n_pencils,nz_full), dtype=np.double, order='F') + double [:,:] tlev_in = np.zeros((n_pencils,nz_full + 1), dtype=np.double, order='F') + double [:] tsfc_in = np.ones((n_pencils),dtype=np.double,order='F') * Ref.Tg + double [:,:] h2ovmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] o3vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] co2vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] ch4vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] n2ovmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] o2vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] cfc11vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] cfc12vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] cfc22vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] ccl4vmr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] emis_in = np.ones((n_pencils,16),dtype=np.double,order='F') * 0.95 + double [:,:] cldfr_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] cicewp_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] cliqwp_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] reice_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:,:] reliq_in = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double [:] coszen_in = np.ones((n_pencils),dtype=np.double,order='F') *self.coszen + double [:] asdir_in = np.ones((n_pencils),dtype=np.double,order='F') * self.adir + double [:] asdif_in = np.ones((n_pencils),dtype=np.double,order='F') * self.adif + double [:] aldir_in = np.ones((n_pencils),dtype=np.double,order='F') * self.adir + double [:] aldif_in = np.ones((n_pencils),dtype=np.double,order='F') * self.adif + double [:,:,:] taucld_lw_in = np.zeros((16,n_pencils,nz_full),dtype=np.double,order='F') + double [:,:,:] tauaer_lw_in = np.zeros((n_pencils,nz_full,16),dtype=np.double,order='F') + double [:,:,:] taucld_sw_in = np.zeros((14,n_pencils,nz_full),dtype=np.double,order='F') + double [:,:,:] ssacld_sw_in = np.zeros((14,n_pencils,nz_full),dtype=np.double,order='F') + double [:,:,:] asmcld_sw_in = np.zeros((14,n_pencils,nz_full),dtype=np.double,order='F') + double [:,:,:] fsfcld_sw_in = np.zeros((14,n_pencils,nz_full),dtype=np.double,order='F') + double [:,:,:] tauaer_sw_in = np.zeros((n_pencils,nz_full,14),dtype=np.double,order='F') + double [:,:,:] ssaaer_sw_in = np.zeros((n_pencils,nz_full,14),dtype=np.double,order='F') + double [:,:,:] asmaer_sw_in = np.zeros((n_pencils,nz_full,14),dtype=np.double,order='F') + double [:,:,:] ecaer_sw_in = np.zeros((n_pencils,nz_full,6),dtype=np.double,order='F') + + # Output + double[:,:] uflx_lw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] dflx_lw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] hr_lw_out = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double[:,:] uflxc_lw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] dflxc_lw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] hrc_lw_out = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double[:,:] duflx_dt_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] duflxc_dt_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] uflx_sw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] dflx_sw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] hr_sw_out = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + double[:,:] uflxc_sw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] dflxc_sw_out = np.zeros((n_pencils,nz_full +1),dtype=np.double,order='F') + double[:,:] hrc_sw_out = np.zeros((n_pencils,nz_full),dtype=np.double,order='F') + + double rv_to_reff = np.exp(np.log(1.2)**2.0)*10.0*1000.0 + + + with nogil: + for k in xrange(nz, nz_full): + for ip in xrange(n_pencils): + tlay_in[ip, k] = self.t_ext[k-nz] + h2ovmr_in[ip, k] = self.rv_ext[k-nz] * Rv/Rd * self.h2o_factor + # Assuming for now that there is no condensate above LES domain! + for k in xrange(nz): + for ip in xrange(n_pencils): + tlay_in[ip,k] = t_pencil[ip,k] + h2ovmr_in[ip,k] = qv_pencil[ip,k]/ (1.0 - qv_pencil[ip,k])* Rv/Rd * self.h2o_factor + rl_full[ip,k] = (ql_pencil[ip,k])/ (1.0 - qv_pencil[ip,k]) + cliqwp_in[ip,k] = ((ql_pencil[ip,k])/ (1.0 - qv_pencil[ip,k]) + *1.0e3*(self.pi_full[k] - self.pi_full[k+1])/g) + cicewp_in[ip,k] = ((qi_pencil[ip,k])/ (1.0 - qv_pencil[ip,k]) + *1.0e3*(self.pi_full[k] - self.pi_full[k+1])/g) + if ql_pencil[ip,k] + qi_pencil[ip,k] > ql_threshold: + cldfr_in[ip,k] = 1.0 + + + with nogil: + for k in xrange(nz_full): + for ip in xrange(n_pencils): + play_in[ip,k] = self.p_full[k]/100.0 + o3vmr_in[ip, k] = self.o3vmr[k] + co2vmr_in[ip, k] = self.co2vmr[k] + ch4vmr_in[ip, k] = self.ch4vmr[k] + n2ovmr_in[ip, k] = self.n2ovmr[k] + o2vmr_in [ip, k] = self.o2vmr[k] + cfc11vmr_in[ip, k] = self.cfc11vmr[k] + cfc12vmr_in[ip, k] = self.cfc12vmr[k] + cfc22vmr_in[ip, k] = self.cfc22vmr[k] + ccl4vmr_in[ip, k] = self.ccl4vmr[k] + + + if self.uniform_reliq: + reliq_in[ip, k] = 14.0*cldfr_in[ip,k] + else: + reliq_in[ip, k] = ((3.0*self.p_full[k]/Rd/tlay_in[ip,k]*rl_full[ip,k]/ + fmax(cldfr_in[ip,k],1.0e-6))/(4.0*pi*1.0e3*100.0))**(1.0/3.0) + reliq_in[ip, k] = fmin(fmax(reliq_in[ip, k]*rv_to_reff, 2.5), 60.0) + + for ip in xrange(n_pencils): + tlev_in[ip, 0] = Ref.Tg + plev_in[ip,0] = self.pi_full[0]/100.0 + for k in xrange(1,nz_full): + tlev_in[ip, k] = 0.5*(tlay_in[ip,k-1]+tlay_in[ip,k]) + plev_in[ip,k] = self.pi_full[k]/100.0 + tlev_in[ip, nz_full] = 2.0*tlay_in[ip,nz_full-1] - tlev_in[ip,nz_full-1] + plev_in[ip,nz_full] = self.pi_full[nz_full]/100.0 + + + cdef: + int ncol = n_pencils + int nlay = nz_full + int icld = 1 + int idrv = 0 + int iaer = 0 + int inflglw = 2 + int iceflglw = 3 + int liqflglw = 1 + int inflgsw = 2 + int iceflgsw = 3 + int liqflgsw = 1 + + c_rrtmg_lw ( + &ncol ,&nlay ,&icld ,&idrv, + &play_in[0,0] ,&plev_in[0,0] ,&tlay_in[0,0] ,&tlev_in[0,0] ,&tsfc_in[0] , + &h2ovmr_in[0,0] ,&o3vmr_in[0,0] ,&co2vmr_in[0,0] ,&ch4vmr_in[0,0] ,&n2ovmr_in[0,0] ,&o2vmr_in[0,0], + &cfc11vmr_in[0,0],&cfc12vmr_in[0,0],&cfc22vmr_in[0,0],&ccl4vmr_in[0,0] ,&emis_in[0,0] , + &inflglw ,&iceflglw,&liqflglw,&cldfr_in[0,0] , + &taucld_lw_in[0,0,0] ,&cicewp_in[0,0] ,&cliqwp_in[0,0] ,&reice_in[0,0] ,&reliq_in[0,0] , + &tauaer_lw_in[0,0,0] , + &uflx_lw_out[0,0] ,&dflx_lw_out[0,0] ,&hr_lw_out[0,0] ,&uflxc_lw_out[0,0] ,&dflxc_lw_out[0,0], &hrc_lw_out[0,0], + &duflx_dt_out[0,0],&duflxc_dt_out[0,0] ) + + + + c_rrtmg_sw ( + &ncol, &nlay, &icld, &iaer, &play_in[0,0], &plev_in[0,0], &tlay_in[0,0], &tlev_in[0,0],&tsfc_in[0], + &h2ovmr_in[0,0], &o3vmr_in[0,0], &co2vmr_in[0,0], &ch4vmr_in[0,0], &n2ovmr_in[0,0],&o2vmr_in[0,0], + &asdir_in[0] ,&asdif_in[0] ,&aldir_in[0] ,&aldif_in[0] , + &coszen_in[0] ,&self.adjes ,&self.dyofyr ,&self.scon , + &inflgsw ,&iceflgsw,&liqflgsw,&cldfr_in[0,0] , + &taucld_sw_in[0,0,0] ,&ssacld_sw_in[0,0,0] ,&asmcld_sw_in[0,0,0] ,&fsfcld_sw_in[0,0,0] , + &cicewp_in[0,0] ,&cliqwp_in[0,0] ,&reice_in[0,0] ,&reliq_in[0,0] , + &tauaer_sw_in[0,0,0] ,&ssaaer_sw_in[0,0,0] ,&asmaer_sw_in[0,0,0] ,&ecaer_sw_in[0,0,0] , + &uflx_sw_out[0,0] ,&dflx_sw_out[0,0] ,&hr_sw_out[0,0] ,&uflxc_sw_out[0,0] ,&dflxc_sw_out[0,0], &hrc_sw_out[0,0]) + + + + + cdef double [:,:] heating_rate_pencil = np.zeros((n_pencils,nz), dtype=np.double, order='c') + cdef double srf_lw_up_local =0.0, srf_lw_down_local=0.0, srf_sw_up_local=0.0, srf_sw_down_local=0.0 + cdef double nxny_i = 1.0/(Gr.dims.n[0]*Gr.dims.n[1]) + with nogil: + for ip in xrange(n_pencils): + srf_lw_up_local += uflx_lw_out[ip,0] * nxny_i + srf_lw_down_local += dflx_lw_out[ip,0] * nxny_i + srf_sw_up_local += uflx_sw_out[ip,0] * nxny_i + srf_sw_down_local += dflx_sw_out[ip,0] * nxny_i + for k in xrange(nz): + heating_rate_pencil[ip, k] = (hr_lw_out[ip,k] + hr_sw_out[ip,k]) * Ref.rho0_half_global[k] * cpm_c(qv_pencil[ip,k])/86400.0 + self.srf_lw_up = Pa.domain_scalar_sum(srf_lw_up_local) + self.srf_lw_down = Pa.domain_scalar_sum(srf_lw_down_local) + self.srf_sw_up= Pa.domain_scalar_sum(srf_sw_up_local) + self.srf_sw_down= Pa.domain_scalar_sum(srf_sw_down_local) + + + self.z_pencil.reverse_double(&Gr.dims, Pa, heating_rate_pencil, &self.heating_rate[0]) + + + return + cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + RadiationBase.stats_io(self, Gr, DV, NS, Pa) + + + return \ No newline at end of file diff --git a/setup.py b/setup.py index 9c06074b..c5b1a2e1 100644 --- a/setup.py +++ b/setup.py @@ -24,7 +24,8 @@ extra_objects=['./RRTMG/rrtmg_build/rrtmg_combined.o'] netcdf_include = '/opt/local/include' netcdf_lib = '/opt/local/lib' - f_compiler = 'gfortran' + # f_compiler = 'gfortran' + f_compiler = 'gfortran-mp-4.8' elif 'euler' in platform.node(): #Compile flags for euler @ ETHZ library_dirs = ['/cluster/apps/openmpi/1.6.5/x86_64/gcc_4.8.2/lib/'] From fb59ba25833d152f83024681e958564ff447cdfa Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 11:24:33 +0200 Subject: [PATCH 192/511] debugging Soares cases for new Surface scheme --- Surface.pxd | 12 +--- Surface.pyx | 175 +++++++++++++++++++++++----------------------------- 2 files changed, 80 insertions(+), 107 deletions(-) diff --git a/Surface.pxd b/Surface.pxd index 468e9f01..e9189f72 100644 --- a/Surface.pxd +++ b/Surface.pxd @@ -122,7 +122,7 @@ cdef class SurfaceRico(SurfaceBase): cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) -cdef class SurfaceSoares: +cdef class SurfaceSoares(SurfaceBase): cdef: double theta_flux # double qt_flux @@ -131,27 +131,21 @@ cdef class SurfaceSoares: double buoyancy_flux double theta_surface double qt_surface - double [:] s_flux - double [:] u_flux - double [:] v_flux cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) -cdef class SurfaceSoares_moist: +cdef class SurfaceSoares_moist(SurfaceBase): cdef: double theta_flux - double qt_flux + # double qt_flux double z0 double gustiness double buoyancy_flux double theta_surface double qt_surface - double [:] s_flux - double [:] u_flux - double [:] v_flux cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS) diff --git a/Surface.pyx b/Surface.pyx index dc3d08f5..beb572b3 100644 --- a/Surface.pyx +++ b/Surface.pyx @@ -41,7 +41,6 @@ cdef extern from "entropies.h": inline double sv_c(double pv, double T) nogil def SurfaceFactory(namelist, LatentHeat LH, ParallelMPI.ParallelMPI Par): - casename = namelist['meta']['casename'] if casename == 'SullivanPatton': return SurfaceSullivanPatton(LH) @@ -56,7 +55,9 @@ def SurfaceFactory(namelist, LatentHeat LH, ParallelMPI.ParallelMPI Par): elif casename == 'Rico': return SurfaceRico(LH) elif casename == 'DCBLSoares': - return SurfaceSoares() + return SurfaceSoares(LH) + elif casename == 'DCBLSoares_moist': + return SurfaceSoares_moist(LH) else: return SurfaceNone() @@ -67,7 +68,6 @@ cdef class SurfaceBase: return cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') self.qt_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') @@ -191,6 +191,7 @@ cdef class SurfaceNone(SurfaceBase): +# SULLIVAN cdef class SurfaceSullivanPatton(SurfaceBase): def __init__(self, LatentHeat LH): self.theta_flux = 0.24 # K m/s @@ -280,7 +281,7 @@ cdef class SurfaceBomex(SurfaceBase): cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): SurfaceBase.initialize(self,Gr,Ref,NS,Pa) - self.qt_flux = np.add(self.qt_flux,5.2e-5) # m/s #self.qt_flux = 2*5.2e-5 # m/s (original: 5.2e-5) + self.qt_flux = np.add(self.qt_flux,5.2e-5) # m/s self.theta_flux = 8.0e-3 # K m/s self.ustar_ = 0.28 #m/s @@ -289,8 +290,6 @@ cdef class SurfaceBomex(SurfaceBase): self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux[0] + self.qt_surface *self.theta_flux)) /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) - - return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV,DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): @@ -300,10 +299,8 @@ cdef class SurfaceBomex(SurfaceBase): cdef : - Py_ssize_t i - Py_ssize_t j + Py_ssize_t i, j, ij, ijk Py_ssize_t gw = Gr.dims.gw - Py_ssize_t ijk, ij Py_ssize_t imax = Gr.dims.nlg[0] Py_ssize_t jmax = Gr.dims.nlg[1] Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] @@ -369,7 +366,6 @@ cdef class SurfaceGabls(SurfaceBase): self.dry_case = True - return cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): @@ -535,6 +531,8 @@ cdef class SurfaceDYCOMS_RF01(SurfaceBase): return + + cdef class SurfaceDYCOMS_RF02(SurfaceBase): def __init__(self,namelist, LatentHeat LH): self.ft = 16.0 @@ -555,9 +553,6 @@ cdef class SurfaceDYCOMS_RF02(SurfaceBase): self.dry_case = False - - - cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): SurfaceBase.initialize(self,Gr,Ref,NS,Pa) self.windspeed = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') @@ -660,8 +655,6 @@ cdef class SurfaceRico(SurfaceBase): cdef double pd_star = Ref.Pg - pv_star self.s_star = (1.0-Ref.qtg) * sd_c(pd_star, Ref.Tg) + Ref.qtg * sv_c(pv_star,Ref.Tg) - - return cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, @@ -724,35 +717,39 @@ cdef class SurfaceRico(SurfaceBase): # SOARES # like in Sullivan case: z0 is given (ustar_fixed = 'False') # like in Bomex case: surface heat and moisture flux constant and prescribed -cdef class SurfaceSoares: - def __init__(self): - self.theta_flux = 0.06 # K m/s - # self.qt_flux = 2.5e-5 # m/s +cdef class SurfaceSoares(SurfaceBase): + def __init__(self, LatentHeat LH): self.z0 = 0.001 #m (Roughness length) self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* - self.theta_surface = 300.0 # K - # self.qt_surface = 5.0e-3 # kg/kg + self.L_fp = LH.L_fp + self.Lambda_fp = LH.Lambda_fp + self.dry_case = True return + @cython.boundscheck(False) #Turn off numpy array index bounds checking + @cython.wraparound(False) #Turn off numpy array wrap around indexing + @cython.cdivision(True) cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): # Sullivan + self.theta_surface = 300.0 # K + self.qt_surface = 5.0e-3 # kg/kg + + self.theta_flux = 0.06 # K m/s + # self.qt_flux = 2.5e-5 # m/s # Bomex: - # self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) + # self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux[ij] + self.qt_surface *self.theta_flux)) # /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? # Sullivan: T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd - self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 - - self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') - self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') - self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + self.buoyancy_flux = self.theta_flux * exner(Ref.p0_half[Gr.dims.gw]) * g /T0 - NS.add_ts('uw_surface_mean',Gr, Pa) - NS.add_ts('vw_surface_mean',Gr, Pa) - NS.add_ts('s_flux_surface_mean', Gr, Pa) + SurfaceBase.initialize(self,Gr,Ref,NS,Pa) return + @cython.boundscheck(False) + @cython.wraparound(False) + @cython.cdivision(True) # # update adopted and modified from Sullivan + Bomex cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple @@ -761,10 +758,8 @@ cdef class SurfaceSoares: return cdef: - Py_ssize_t i - Py_ssize_t j + Py_ssize_t i, j, ijk, ij Py_ssize_t gw = Gr.dims.gw - Py_ssize_t ijk, ij Py_ssize_t imax = Gr.dims.nlg[0] Py_ssize_t jmax = Gr.dims.nlg[1] Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] @@ -774,8 +769,6 @@ cdef class SurfaceSoares: Py_ssize_t s_shift = PV.get_varshift(Gr, 's') # Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') # Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') - double dzi = 1.0/Gr.dims.dx[2] - double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi # Scalar fluxes (adopted from Bomex) with nogil: @@ -786,9 +779,7 @@ cdef class SurfaceSoares: # Sullivan self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] # Bomex (entropy flux includes qt flux) - # self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) - PV.tendencies[s_shift + ijk] += self.s_flux[ij] * tendency_factor - # PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor + # self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux[ij], Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) # Windspeed (adopted from Sullivan, equivalent to Bomex) cdef: @@ -798,70 +789,68 @@ cdef class SurfaceSoares: compute_windspeed(&Gr.dims, &PV.values[u_shift], &PV.values[v_shift], &windspeed[0],Ref.u0, Ref.v0,self.gustiness) # Surface Values: friction velocity, obukhov lenght (adopted from Sullivan, since same Surface parameters prescribed) - cdef : - Py_ssize_t lmo_shift = DV.get_varshift_2d(Gr, 'obukhov_length') - Py_ssize_t ustar_shift = DV.get_varshift_2d(Gr, 'friction_velocity') with nogil: for i in xrange(1,imax): for j in xrange(1,jmax): ij = i * istride_2d + j - DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) - DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + # __ ??? + self.friction_velocity[ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + # self.obukhov_length[ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + # __ ??? # Get the shear stresses (adopted from Sullivan, since same Surface parameters prescribed) for i in xrange(1,imax-1): for j in xrange(1,jmax-1): ijk = i * istride + j * jstride + gw ij = i * istride_2d + j - self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) - self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) - PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor - PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor - return + self.u_flux[ij] = -interp_2(self.friction_velocity[ij], self.friction_velocity[ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) + self.v_flux[ij] = -interp_2(self.friction_velocity[ij], self.friction_velocity[ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) - cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - cdef double tmp + SurfaceBase.update(self, Gr, Ref, PV, DV, Pa, TS) + return - tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) - NS.write_ts('uw_surface_mean',tmp, Pa) - tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) - NS.write_ts('vw_surface_mean', tmp, Pa) - tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) - NS.write_ts('s_flux_surface_mean', tmp, Pa) + cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): + SurfaceBase.stats_io(self, Gr, NS, Pa) return -cdef class SurfaceSoares_moist: - def __init__(self): - self.theta_flux = 8.0e-3 # K m/s (Bomex) - self.qt_flux = 5.2e-5 # m/s (original: 5.2e-5) (Bomex) +cdef class SurfaceSoares_moist(SurfaceBase): + def __init__(self, LatentHeat LH): self.z0 = 0.001 #m (Roughness length) self.gustiness = 0.001 #m/s, minimum surface windspeed for determination of u* - self.theta_surface = 300.0 # K - self.qt_surface = 5.0e-3 # kg/kg + self.L_fp = LH.L_fp + self.Lambda_fp = LH.Lambda_fp + self.dry_case = False return + @cython.boundscheck(False) #Turn off numpy array index bounds checking + @cython.wraparound(False) #Turn off numpy array wrap around indexing + @cython.cdivision(True) cpdef initialize(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): # Sullivan + self.theta_surface = 300.0 # K + self.qt_surface = 5.0e-3 # kg/kg + + self.theta_flux = 8.0e-3 # K m/s (Bomex) + # self.qt_flux = 5.2e-5 # m/s (Soares: 2.5e-5) (Bomex: 5.2e-5) + self.qt_flux = np.add(self.qt_flux,2.5e-5) + # Bomex: - # self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux + self.qt_surface *self.theta_flux)) - # /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? + self.buoyancy_flux = g * ((self.theta_flux + (eps_vi-1.0)*(self.theta_surface*self.qt_flux[0] + self.qt_surface *self.theta_flux)) + /(self.theta_surface*(1.0 + (eps_vi-1)*self.qt_surface))) # adopted from Bomex ?? # Sullivan: - T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd - self.buoyancy_flux = self.theta_flux * exner(Ref.p0[Gr.dims.gw-1]) * g /T0 - - self.s_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') - self.u_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') - self.v_flux = np.zeros(Gr.dims.nlg[0]*Gr.dims.nlg[1], dtype=np.double, order='c') + # T0 = Ref.p0_half[Gr.dims.gw] * Ref.alpha0_half[Gr.dims.gw]/Rd + # self.buoyancy_flux = self.theta_flux * exner(Ref.p0_half[Gr.dims.gw]) * g /T0 - NS.add_ts('uw_surface_mean',Gr, Pa) - NS.add_ts('vw_surface_mean',Gr, Pa) - NS.add_ts('s_flux_surface_mean', Gr, Pa) + SurfaceBase.initialize(self,Gr,Ref,NS,Pa) return + @cython.boundscheck(False) #Turn off numpy array index bounds checking + @cython.wraparound(False) #Turn off numpy array wrap around indexing + @cython.cdivision(True) # # update adopted and modified from Sullivan + Bomex cpdef update(self, Grid.Grid Gr, ReferenceState.ReferenceState Ref, PrognosticVariables.PrognosticVariables PV, DiagnosticVariables.DiagnosticVariables DV, ParallelMPI.ParallelMPI Pa, TimeStepping.TimeStepping TS): # Since this case is completely dry, the computation of entropy flux from sensible heat flux is very simple @@ -870,10 +859,8 @@ cdef class SurfaceSoares_moist: return cdef: - Py_ssize_t i - Py_ssize_t j + Py_ssize_t i, j, ij, ijk Py_ssize_t gw = Gr.dims.gw - Py_ssize_t ijk, ij Py_ssize_t imax = Gr.dims.nlg[0] Py_ssize_t jmax = Gr.dims.nlg[1] Py_ssize_t istride = Gr.dims.nlg[1] * Gr.dims.nlg[2] @@ -883,8 +870,6 @@ cdef class SurfaceSoares_moist: Py_ssize_t s_shift = PV.get_varshift(Gr, 's') Py_ssize_t qt_shift = PV.get_varshift(Gr, 'qt') Py_ssize_t qv_shift = DV.get_varshift(Gr,'qv') - double dzi = 1.0/Gr.dims.dx[2] - double tendency_factor = Ref.alpha0_half[gw]/Ref.alpha0[gw-1]*dzi # Scalar fluxes (adopted from Bomex) with nogil: @@ -895,9 +880,8 @@ cdef class SurfaceSoares_moist: # Sullivan # self.s_flux[ij] = cpd * self.theta_flux*exner_c(Ref.p0_half[gw])/DV.values[temp_shift+ijk] # Bomex (entropy flux includes qt flux) - self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux, Ref.p0_half[gw], DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) - PV.tendencies[s_shift + ijk] += self.s_flux[ij] * tendency_factor - PV.tendencies[qt_shift + ijk] += self.qt_flux * tendency_factor + self.s_flux[ij] = entropyflux_from_thetaflux_qtflux(self.theta_flux, self.qt_flux[ij], Ref.p0_half[gw], + DV.values[temp_shift+ijk], PV.values[qt_shift+ijk], DV.values[qv_shift+ijk]) # Windspeed (adopted from Sullivan, equivalent to Bomex) cdef: @@ -914,30 +898,26 @@ cdef class SurfaceSoares_moist: for i in xrange(1,imax): for j in xrange(1,jmax): ij = i * istride_2d + j - DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) - DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb + self.friction_velocity[ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + self.obukhov_length[ij] = -self.friction_velocity[ij]*self.friction_velocity[ij]*self.friction_velocity[ij]/self.buoyancy_flux/vkb + # DV.values_2d[ustar_shift + ij] = compute_ustar(windspeed[ij],self.buoyancy_flux,self.z0, Gr.dims.dx[2]/2.0) + # DV.values_2d[lmo_shift + ij] = -DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]*DV.values_2d[ustar_shift + ij]/self.buoyancy_flux/vkb # Get the shear stresses (adopted from Sullivan, since same Surface parameters prescribed) for i in xrange(1,imax-1): for j in xrange(1,jmax-1): ijk = i * istride + j * jstride + gw ij = i * istride_2d + j - self.u_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) - self.v_flux[ij] = -interp_2(DV.values_2d[ustar_shift + ij], DV.values_2d[ustar_shift+ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) - PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor - PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor + self.u_flux[ij] = -interp_2(self.friction_velocity[ij], self.friction_velocity[ij+istride_2d])**2/interp_2(windspeed[ij], windspeed[ij+istride_2d]) * (PV.values[u_shift + ijk] + Ref.u0) + self.v_flux[ij] = -interp_2(self.friction_velocity[ij], self.friction_velocity[ij+1])**2/interp_2(windspeed[ij], windspeed[ij+1]) * (PV.values[v_shift + ijk] + Ref.v0) + # PV.tendencies[u_shift + ijk] += self.u_flux[ij] * tendency_factor + # PV.tendencies[v_shift + ijk] += self.v_flux[ij] * tendency_factor + + SurfaceBase.update(self, Gr, Ref, PV, DV, Pa, TS) return cpdef stats_io(self, Grid.Grid Gr, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa): - cdef double tmp - - tmp = Pa.HorizontalMeanSurface(Gr, &self.u_flux[0]) - NS.write_ts('uw_surface_mean',tmp, Pa) - tmp = Pa.HorizontalMeanSurface(Gr, &self.v_flux[0]) - NS.write_ts('vw_surface_mean', tmp, Pa) - tmp = Pa.HorizontalMeanSurface(Gr, &self.s_flux[0]) - NS.write_ts('s_flux_surface_mean', tmp, Pa) - + SurfaceBase.stats_io(self, Gr, NS, Pa) return @@ -947,5 +927,4 @@ cdef class SurfaceSoares_moist: # See also: ARPS documentation cdef inline double compute_z0(double z1, double windspeed) nogil: cdef double z0 =z1*exp(-kappa/sqrt((0.4 + 0.079*windspeed)*1e-3)) - return z0 - + return z0 \ No newline at end of file From 092c35a9dbe1c4ddd645123a03c18f44abaa068d Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 13:02:49 +0200 Subject: [PATCH 193/511] debugging UniformViscosity_cond for new SGS scheme --- SGS.pxd | 2 +- SGS.pyx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/SGS.pxd b/SGS.pxd index 70693a0c..e9e31ba3 100644 --- a/SGS.pxd +++ b/SGS.pxd @@ -41,7 +41,7 @@ cdef class UniformViscosity_cond: cpdef initialize(self, Grid.Grid Gr, PrognosticVariables.PrognosticVariables PV, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, - PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, ParallelMPI.ParallelMPI Pa) + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, Surface.SurfaceBase Sur, ParallelMPI.ParallelMPI Pa) cpdef stats_io(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, NetCDFIO_Stats NS, ParallelMPI.ParallelMPI Pa) diff --git a/SGS.pyx b/SGS.pyx index 0106e052..223b57d5 100644 --- a/SGS.pyx +++ b/SGS.pyx @@ -90,7 +90,7 @@ cdef class UniformViscosity: cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, - PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke,Surface.SurfaceBase Sur, ParallelMPI.ParallelMPI Pa): + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, Surface.SurfaceBase Sur, ParallelMPI.ParallelMPI Pa): cdef: @@ -136,7 +136,7 @@ cdef class UniformViscosity_cond: cpdef update(self, Grid.Grid Gr, DiagnosticVariables.DiagnosticVariables DV, - PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, ParallelMPI.ParallelMPI Pa): + PrognosticVariables.PrognosticVariables PV, Kinematics.Kinematics Ke, Surface.SurfaceBase Sur, ParallelMPI.ParallelMPI Pa): cdef: Py_ssize_t diff_shift = DV.get_varshift(Gr,'diffusivity') Py_ssize_t visc_shift = DV.get_varshift(Gr,'viscosity') From d9e75aa03003f066c559c3968c18f7fbc95ea279 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 13:10:40 +0200 Subject: [PATCH 194/511] adding Fluxes to Aux Output for Soares, Bomex --- generate_namelist.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/generate_namelist.py b/generate_namelist.py index 0d41d880..bab873cc 100644 --- a/generate_namelist.py +++ b/generate_namelist.py @@ -351,7 +351,7 @@ def Bomex(): namelist['stats_io'] = {} namelist['stats_io']['stats_dir'] = 'stats' - namelist['stats_io']['auxiliary'] = ['Cumulus','TKE'] + namelist['stats_io']['auxiliary'] = ['Cumulus','TKE','Flux'] namelist['stats_io']['frequency'] = 100.0 namelist['fields_io'] = {} @@ -894,7 +894,7 @@ def DCBLSoares(): # profile outputs namelist['stats_io'] = {} namelist['stats_io']['stats_dir'] = 'stats' - namelist['stats_io']['auxiliary'] = ['None'] # AuxiliaryStatistics + namelist['stats_io']['auxiliary'] = ['Flux'] # AuxiliaryStatistics namelist['stats_io']['frequency'] = 900.0 # field outputs From 5e64cac340f94e0947591c6d75be8a9ea0d28d82 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 13:56:29 +0200 Subject: [PATCH 195/511] removing momentum_advection_central_ml.h and test files --- Csrc/momentum_advection_central_ml.h | 377 --------------------------- test.txt | 2 - test2.txt | 1 - test3.txt | 1 - 4 files changed, 381 deletions(-) delete mode 100644 Csrc/momentum_advection_central_ml.h delete mode 100644 test.txt delete mode 100644 test2.txt delete mode 100644 test3.txt diff --git a/Csrc/momentum_advection_central_ml.h b/Csrc/momentum_advection_central_ml.h deleted file mode 100644 index 361a0937..00000000 --- a/Csrc/momentum_advection_central_ml.h +++ /dev/null @@ -1,377 +0,0 @@ -#pragma once -#include "grid.h" -#include "advection_interpolation.h" -#include "flux_divergence.h" -#include - - -void second_order_ml_m(struct DimStruct *dims, double* restrict rho0, double* restrict rho0_half, - double* restrict alpha0, double* restrict alpha0_half, - double* restrict vel_advected, double* restrict vel_advecting, - double* restrict tendency, ssize_t d_advected, ssize_t d_advecting){ - - // Dynamically allocate flux array - double *flux = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 0; - const ssize_t jmin = 0; - const ssize_t kmin = 0; - - const ssize_t imax = dims->nlg[0]-1; - const ssize_t jmax = dims->nlg[1]-1; - const ssize_t kmax = dims->nlg[2]-1; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp1_ing = stencil[d_advected]; - - if (d_advected != 2 && d_advecting !=2){ - for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux3 = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 1; - const ssize_t jmin = 1; - const ssize_t kmin = 1; - - const ssize_t imax = dims->nlg[0]-2; - const ssize_t jmax = dims->nlg[1]-2; - const ssize_t kmax = dims->nlg[2]-2; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp2_ed = 2 * sp1_ed ; - const ssize_t sm1_ed = -sp1_ed ; - const ssize_t sm2_ed = 2 * sm1_ed; - - const ssize_t sp1_ing = stencil[d_advected]; - const ssize_t sp2_ing = 2 * sp1_ing; - const ssize_t sm1_ing = -sp1_ing; - - const double dxi = dims->dxi[d_advecting]; - - if (d_advected != 2 && d_advecting !=2){ - for(ssize_t i=imin;inlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux3 = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - double *flux5 = (double *)malloc(sizeof(double)*dims->nlg[0] * dims->nlg[1] * dims->nlg[2]); - - const ssize_t istride = dims->nlg[1] * dims->nlg[2]; - const ssize_t jstride = dims->nlg[2]; - - const ssize_t imin = 2; - const ssize_t jmin = 2; - const ssize_t kmin = 2; - - const ssize_t imax = dims->nlg[0]-3; - const ssize_t jmax = dims->nlg[1]-3; - const ssize_t kmax = dims->nlg[2]-3; - - const ssize_t stencil[3] = {istride,jstride,1}; - const ssize_t sp1_ed = stencil[d_advecting]; - const ssize_t sp2_ed = 2 * sp1_ed ; - const ssize_t sp3_ed = 3 * sp1_ed; - const ssize_t sm1_ed = -sp1_ed ; - const ssize_t sm2_ed = 2 * sm1_ed; - const ssize_t sm3_ed = 3 * sm1_ed; - - const ssize_t sp1_ing = stencil[d_advected]; - const ssize_t sp2_ing = 2 * sp1_ing; - const ssize_t sp3_ing = 3 * sp1_ing; - const ssize_t sm1_ing = -sp1_ing; - const ssize_t sm2_ing = -2 * sp1_ing; - - - const double dxi = dims->dxi[d_advecting]; - - if (d_advected != 2 && d_advecting !=2){ - for(ssize_t i=imin;i Date: Tue, 24 May 2016 14:00:36 +0200 Subject: [PATCH 196/511] adding RRTMG Radiation files to be tracked --- RRTMG/rrtmg_build/obj_rrtmg/parkind.mod | 50 + RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod | 172 ++++ RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod | 150 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod | 58 ++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod | 72 ++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod | 145 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod | 128 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod | 163 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod | 134 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod | 157 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod | 117 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod | 154 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod | 193 ++++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod | 154 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod | 124 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod | 145 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod | 95 ++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod | 143 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod | 124 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod | 110 ++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod | 128 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod | 117 +++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod | 48 + RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod | 55 + RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod | 105 ++ RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod | 128 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod | 54 + RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod | 107 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod | 75 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod | 123 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod | 129 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod | 125 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod | 125 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod | 129 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod | 129 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod | 125 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod | 101 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod | 157 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod | 97 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod | 55 + RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod | 105 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod | 107 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod | 138 +++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod | 235 +++++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod | 43 + RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod | 53 + RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod | 111 ++ RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod | 102 ++ .../obj_rrtmg/rrtmg_lw_cldprmc.mod | 126 +++ .../obj_rrtmg/rrtmg_lw_cldprop.mod | 117 +++ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod | 213 ++++ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod | 971 ++++++++++++++++++ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod | 178 ++++ .../rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod | 184 ++++ .../rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod | 178 ++++ .../obj_rrtmg/rrtmg_lw_setcoef.mod | 272 +++++ .../rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod | 222 ++++ .../obj_rrtmg/rrtmg_lw_wrapper.mod | 382 +++++++ .../obj_rrtmg/rrtmg_sw_cldprmc.mod | 201 ++++ .../obj_rrtmg/rrtmg_sw_cldprop.mod | 206 ++++ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod | 177 ++++ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod | 862 ++++++++++++++++ .../rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod | 88 ++ .../obj_rrtmg/rrtmg_sw_setcoef.mod | 161 +++ .../rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod | 437 ++++++++ .../rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod | 436 ++++++++ .../rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod | 134 +++ .../rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod | 73 ++ .../obj_rrtmg/rrtmg_sw_wrapper.mod | 434 ++++++++ 69 files changed, 11646 insertions(+) create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parkind.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod b/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod new file mode 100644 index 00000000..5b8bc5ae --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod @@ -0,0 +1,50 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/parkind.f90 +MD5:44cc497f860d30a0e300109e4ce41762 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () () +() () ()) + +() + +() + +() + +() + +() + +(2 'kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 2 () +() () 0 0) +3 'kind_ib' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'kind_in' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +6 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +7 'kind_rm' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +8 'kind_rn' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +9 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +10 'selected_int_kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) +0 0 () () 10 () () () 0 0) +11 'selected_real_kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) +0 0 () () 11 () () () 0 0) +) + +('kind' 0 2 'kind_ib' 0 3 'kind_im' 0 4 'kind_in' 0 5 'kind_rb' 0 6 +'kind_rm' 0 7 'kind_rn' 0 8 'parkind' 0 9 'selected_int_kind' 0 10 +'selected_real_kind' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod b/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod new file mode 100644 index 00000000..7cc80e2d --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod @@ -0,0 +1,172 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/parrrsw.f90 +MD5:e0e526d47627d9cc836e1b686d6023d3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'jmcmu' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '32') () 0 () () () 0 0) +4 'jmphi' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () () () 0 0) +5 'jmumu' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '32') () 0 () () () 0 0) +6 'jmxang' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +7 'jmxstr' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +8 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +9 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +10 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +11 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'mxlay' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '203') () 0 () () () 0 0) +13 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +14 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +15 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +16 'ng16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +17 'ng17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +18 'ng18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'ng19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +20 'ng20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +21 'ng21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +22 'ng22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +23 'ng23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +24 'ng24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +25 'ng25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +26 'ng26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +27 'ng27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +28 'ng28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +29 'ng29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +30 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +31 'ngs16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +32 'ngs17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '18') () 0 () () () 0 0) +33 'ngs18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '26') () 0 () () () 0 0) +34 'ngs19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '34') () 0 () () () 0 0) +35 'ngs20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '44') () 0 () () () 0 0) +36 'ngs21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '54') () 0 () () () 0 0) +37 'ngs22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '56') () 0 () () () 0 0) +38 'ngs23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '66') () 0 () () () 0 0) +39 'ngs24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '74') () 0 () () () 0 0) +40 'ngs25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '80') () 0 () () () 0 0) +41 'ngs26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '86') () 0 () () () 0 0) +42 'ngs27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '94') () 0 () () () 0 0) +43 'ngs28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '100') () 0 () () () 0 0) +44 'ngs29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +45 'nmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '7') () 0 () () () 0 0) +46 'nstr' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +47 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +48 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +49 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +50 'rrsw_scon' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.5583851eb851ec@3') () 0 () () () 0 0) +) + +('im' 0 2 'jmcmu' 0 3 'jmphi' 0 4 'jmumu' 0 5 'jmxang' 0 6 'jmxstr' 0 7 +'jpb1' 0 8 'jpb2' 0 9 'jpband' 0 10 'mg' 0 11 'mxlay' 0 12 'mxmol' 0 13 +'naerec' 0 14 'nbndsw' 0 15 'ng16' 0 16 'ng17' 0 17 'ng18' 0 18 'ng19' 0 +19 'ng20' 0 20 'ng21' 0 21 'ng22' 0 22 'ng23' 0 23 'ng24' 0 24 'ng25' 0 +25 'ng26' 0 26 'ng27' 0 27 'ng28' 0 28 'ng29' 0 29 'ngptsw' 0 30 'ngs16' +0 31 'ngs17' 0 32 'ngs18' 0 33 'ngs19' 0 34 'ngs20' 0 35 'ngs21' 0 36 +'ngs22' 0 37 'ngs23' 0 38 'ngs24' 0 39 'ngs25' 0 40 'ngs26' 0 41 'ngs27' +0 42 'ngs28' 0 43 'ngs29' 0 44 'nmol' 0 45 'nstr' 0 46 'parkind' 0 47 +'parrrsw' 0 48 'rb' 0 49 'rrsw_scon' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod b/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod new file mode 100644 index 00000000..8496b45e --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod @@ -0,0 +1,150 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/parrrtm.f90 +MD5:f0f94fd1fcea48f628e9f2208bf995fb -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +4 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +6 'mxlay' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '203') () 0 () () () 0 0) +7 'mxmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +8 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +9 'ng1' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +10 'ng10' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +11 'ng11' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +12 'ng12' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +13 'ng13' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +14 'ng14' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +15 'ng15' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +16 'ng16' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +17 'ng2' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +18 'ng3' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +19 'ng4' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +20 'ng5' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'ng6' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +22 'ng7' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +23 'ng8' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +24 'ng9' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +25 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +26 'ngs1' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +27 'ngs10' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '114') () 0 () () () 0 0) +28 'ngs11' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '122') () 0 () () () 0 0) +29 'ngs12' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '130') () 0 () () () 0 0) +30 'ngs13' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '134') () 0 () () () 0 0) +31 'ngs14' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '136') () 0 () () () 0 0) +32 'ngs15' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '138') () 0 () () () 0 0) +33 'ngs2' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '22') () 0 () () () 0 0) +34 'ngs3' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +35 'ngs4' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '52') () 0 () () () 0 0) +36 'ngs5' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '68') () 0 () () () 0 0) +37 'ngs6' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '76') () 0 () () () 0 0) +38 'ngs7' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '88') () 0 () () () 0 0) +39 'ngs8' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '96') () 0 () () () 0 0) +40 'ngs9' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '108') () 0 () () () 0 0) +41 'nmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '7') () 0 () () () 0 0) +42 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +43 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +) + +('im' 0 2 'maxinpx' 0 3 'maxxsec' 0 4 'mg' 0 5 'mxlay' 0 6 'mxmol' 0 7 +'nbndlw' 0 8 'ng1' 0 9 'ng10' 0 10 'ng11' 0 11 'ng12' 0 12 'ng13' 0 13 +'ng14' 0 14 'ng15' 0 15 'ng16' 0 16 'ng2' 0 17 'ng3' 0 18 'ng4' 0 19 'ng5' +0 20 'ng6' 0 21 'ng7' 0 22 'ng8' 0 23 'ng9' 0 24 'ngptlw' 0 25 'ngs1' 0 +26 'ngs10' 0 27 'ngs11' 0 28 'ngs12' 0 29 'ngs13' 0 30 'ngs14' 0 31 +'ngs15' 0 32 'ngs2' 0 33 'ngs3' 0 34 'ngs4' 0 35 'ngs5' 0 36 'ngs6' 0 37 +'ngs7' 0 38 'ngs8' 0 39 'ngs9' 0 40 'nmol' 0 41 'parkind' 0 42 'parrrtm' +0 43) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod new file mode 100644 index 00000000..ae7e02e7 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod @@ -0,0 +1,58 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_cld.f90 +MD5:8e94152a0815ae8cc35491bd289c3fd3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +10 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +11 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +) + +('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 +'absliq0' 0 7 'absliq1' 0 8 'parkind' 0 9 'rb' 0 10 'rrlw_cld' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod new file mode 100644 index 00000000..01120367 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod @@ -0,0 +1,72 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_con.f90 +MD5:2b29e343042b725dd2e27629e189c58a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'alosmt' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'avogad' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +4 'boltz' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +5 'clight' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +6 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +7 'gascon' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'grav' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +9 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +10 'oneminus' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +12 'pi' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +13 'planck' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +14 'radcn1' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +15 'radcn2' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'sbcnst' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +19 'secdy' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +) + +('alosmt' 0 2 'avogad' 0 3 'boltz' 0 4 'clight' 0 5 'fluxfac' 0 6 'gascon' +0 7 'grav' 0 8 'heatfac' 0 9 'oneminus' 0 10 'parkind' 0 11 'pi' 0 12 +'planck' 0 13 'radcn1' 0 14 'radcn2' 0 15 'rb' 0 16 'rrlw_con' 0 17 +'sbcnst' 0 18 'secdy' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod new file mode 100644 index 00000000..09c792d0 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod @@ -0,0 +1,145 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg01.f90 +MD5:cd3b6e8e85b8735f3f6d6626e46011c3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg01.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg01.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg01.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg01.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +3 'absb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +6 'forref' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () +() () 0 0) +13 'ka_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +14 'kao' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'kao_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () +() () 0 0) +16 'kb_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +17 'kbo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +18 'kbo_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'ng1' 'rrlw_kg01' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +20 'no1' 'rrlw_kg01' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg01' 'rrlw_kg01' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 +'ka_mn2' 0 13 'kao' 0 14 'kao_mn2' 0 15 'kb' 0 2 'kb_mn2' 0 16 'kbo' 0 +17 'kbo_mn2' 0 18 'ng1' 0 19 'no1' 0 20 'parkind' 0 21 'rb' 0 22 +'rrlw_kg01' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod new file mode 100644 index 00000000..afb994eb --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod @@ -0,0 +1,128 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg02.f90 +MD5:790d03892d075df75771a33a24df8a37 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg02.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg02.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg02.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg02.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +3 'absb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +6 'forref' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +13 'kao' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +14 'kbo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng2' 'rrlw_kg02' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +16 'no2' 'rrlw_kg02' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'refparam' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13')) 0 () () () 0 0) +20 'rrlw_kg02' 'rrlw_kg02' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'selfref' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +22 'selfrefo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' +0 13 'kb' 0 2 'kbo' 0 14 'ng2' 0 15 'no2' 0 16 'parkind' 0 17 'rb' 0 18 +'refparam' 0 19 'rrlw_kg02' 0 20 'selfref' 0 21 'selfrefo' 0 22) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod new file mode 100644 index 00000000..f9c08129 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod @@ -0,0 +1,163 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg03.f90 +MD5:121f803f02261a8c2b07c7f4d314b698 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg03.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg03.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg03.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrlw_kg03.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +3 'absb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'forref' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +13 'ka_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +14 'kao' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'kao_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +16 'kb_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +17 'kbo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +18 'kbo_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +19 'ng3' 'rrlw_kg03' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +20 'no3' 'rrlw_kg03' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg03' 'rrlw_kg03' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 +'ka_mn2o' 0 13 'kao' 0 14 'kao_mn2o' 0 15 'kb' 0 2 'kb_mn2o' 0 16 'kbo' +0 17 'kbo_mn2o' 0 18 'ng3' 0 19 'no3' 0 20 'parkind' 0 21 'rb' 0 22 +'rrlw_kg03' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod new file mode 100644 index 00000000..a3d95de4 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod @@ -0,0 +1,134 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg04.f90 +MD5:5c8e14a9ce25854efa81cd65bf5f9f95 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg04.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg04.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg04.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrlw_kg04.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 +0) +3 'absb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +6 'forref' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '14')) 0 () () () 0 0) +13 'kao' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '14')) 0 () () () 0 0) +14 'kbo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'ng4' 'rrlw_kg04' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +16 'no4' 'rrlw_kg04' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'rrlw_kg04' 'rrlw_kg04' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'selfref' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +21 'selfrefo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' +0 13 'kb' 0 2 'kbo' 0 14 'ng4' 0 15 'no4' 0 16 'parkind' 0 17 'rb' 0 18 +'rrlw_kg04' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod new file mode 100644 index 00000000..ac6e6d23 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod @@ -0,0 +1,157 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg05.f90 +MD5:6d25c0a4845768a1cbcb1221acbbb654 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg05.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg05.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg05.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrlw_kg05.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +3 'absb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'ccl4' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +7 'ccl4o' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'forref' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'forrefo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefa' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +11 'fracrefao' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +12 'fracrefb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +13 'fracrefbo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +14 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'ka_mo3' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +16 'kao' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +17 'kao_mo3' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +18 'kbo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'ng5' 'rrlw_kg05' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +20 'no5' 'rrlw_kg05' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg05' 'rrlw_kg05' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'ccl4' 0 6 'ccl4o' 0 7 'forref' 0 8 'forrefo' 0 9 +'fracrefa' 0 10 'fracrefao' 0 11 'fracrefb' 0 12 'fracrefbo' 0 13 'im' 0 +14 'ka' 0 4 'ka_mo3' 0 15 'kao' 0 16 'kao_mo3' 0 17 'kb' 0 2 'kbo' 0 18 +'ng5' 0 19 'no5' 0 20 'parkind' 0 21 'rb' 0 22 'rrlw_kg05' 0 23 'selfref' +0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod new file mode 100644 index 00000000..c43b2fb2 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod @@ -0,0 +1,117 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg06.f90 +MD5:fcc1cbb873dcbd7a202b4abaf0852bea -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg06.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg06.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +4 'cfc11adj' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +5 'cfc11adjo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'cfc12' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'cfc12o' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'forref' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'forrefo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefa' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +11 'fracrefao' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +13 'ka_mco2' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +14 'kao' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'kao_mco2' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +16 'ng6' 'rrlw_kg06' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'no6' 'rrlw_kg06' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +18 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +19 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +20 'rrlw_kg06' 'rrlw_kg06' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'selfref' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +22 'selfrefo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'cfc11adj' 0 4 'cfc11adjo' 0 5 'cfc12' 0 6 'cfc12o' 0 7 +'forref' 0 8 'forrefo' 0 9 'fracrefa' 0 10 'fracrefao' 0 11 'im' 0 12 'ka' +0 2 'ka_mco2' 0 13 'kao' 0 14 'kao_mco2' 0 15 'ng6' 0 16 'no6' 0 17 +'parkind' 0 18 'rb' 0 19 'rrlw_kg06' 0 20 'selfref' 0 21 'selfrefo' 0 22) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod new file mode 100644 index 00000000..109fa625 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod @@ -0,0 +1,154 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg07.f90 +MD5:1b823613986677874b1a0c7a1524f0af -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg07.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg07.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg07.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg07.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 +0) +3 'absb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +6 'forref' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '12')) 0 () () () 0 0) +13 'ka_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '12')) 0 () () () 0 0) +14 'kao' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'kao_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +16 'kb_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +17 'kbo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +18 'kbo_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'ng7' 'rrlw_kg07' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +20 'no7' 'rrlw_kg07' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg07' 'rrlw_kg07' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 +'ka_mco2' 0 13 'kao' 0 14 'kao_mco2' 0 15 'kb' 0 2 'kb_mco2' 0 16 'kbo' +0 17 'kbo_mco2' 0 18 'ng7' 0 19 'no7' 0 20 'parkind' 0 21 'rb' 0 22 +'rrlw_kg07' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod new file mode 100644 index 00000000..d7f3d04a --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod @@ -0,0 +1,193 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg08.f90 +MD5:e2d9325a7ea80d59f690387d98cf9f75 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg08.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg08.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg08.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg08.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'cfc12' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'cfc12o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'cfc22adj' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'cfc22adjo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'forref' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +11 'forrefo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'fracrefa' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +13 'fracrefao' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +14 'fracrefb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +15 'fracrefbo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +16 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +17 'ka_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +18 'ka_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +19 'ka_mo3' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +20 'kao' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +21 'kao_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +22 'kao_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +23 'kao_mo3' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +24 'kb_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +25 'kb_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +26 'kbo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +27 'kbo_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +28 'kbo_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +29 'ng8' 'rrlw_kg08' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +30 'no8' 'rrlw_kg08' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +31 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +32 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +33 'rrlw_kg08' 'rrlw_kg08' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +34 'selfref' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +35 'selfrefo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'cfc12' 0 6 'cfc12o' 0 7 'cfc22adj' 0 8 'cfc22adjo' +0 9 'forref' 0 10 'forrefo' 0 11 'fracrefa' 0 12 'fracrefao' 0 13 +'fracrefb' 0 14 'fracrefbo' 0 15 'im' 0 16 'ka' 0 4 'ka_mco2' 0 17 +'ka_mn2o' 0 18 'ka_mo3' 0 19 'kao' 0 20 'kao_mco2' 0 21 'kao_mn2o' 0 22 +'kao_mo3' 0 23 'kb' 0 2 'kb_mco2' 0 24 'kb_mn2o' 0 25 'kbo' 0 26 +'kbo_mco2' 0 27 'kbo_mn2o' 0 28 'ng8' 0 29 'no8' 0 30 'parkind' 0 31 'rb' +0 32 'rrlw_kg08' 0 33 'selfref' 0 34 'selfrefo' 0 35) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod new file mode 100644 index 00000000..4df70091 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod @@ -0,0 +1,154 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg09.f90 +MD5:500c272bb7ec500338db2ee9bca4b2b2 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg09.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg09.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg09.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg09.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 +0) +3 'absb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +6 'forref' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '12')) 0 () () () 0 0) +13 'ka_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '12')) 0 () () () 0 0) +14 'kao' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'kao_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +16 'kb_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +17 'kbo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +18 'kbo_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'ng9' 'rrlw_kg09' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +20 'no9' 'rrlw_kg09' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg09' 'rrlw_kg09' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 +'ka_mn2o' 0 13 'kao' 0 14 'kao_mn2o' 0 15 'kb' 0 2 'kb_mn2o' 0 16 'kbo' +0 17 'kbo_mn2o' 0 18 'ng9' 0 19 'no9' 0 20 'parkind' 0 21 'rb' 0 22 +'rrlw_kg09' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod new file mode 100644 index 00000000..a0b02693 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod @@ -0,0 +1,124 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg10.f90 +MD5:919109b9b4fcd8979d3047da9ba99f26 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg10.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg10.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg10.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg10.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +3 'absb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +6 'forref' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () +() 0 0) +13 'kao' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () +() 0 0) +14 'kbo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng10' 'rrlw_kg10' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +16 'no10' 'rrlw_kg10' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'rrlw_kg10' 'rrlw_kg10' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'selfref' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +21 'selfrefo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' +0 13 'kb' 0 2 'kbo' 0 14 'ng10' 0 15 'no10' 0 16 'parkind' 0 17 'rb' 0 +18 'rrlw_kg10' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod new file mode 100644 index 00000000..7a63cf4f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod @@ -0,0 +1,145 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg11.f90 +MD5:76f4f2c729747dec5f2d0fe79389a23c -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg11.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg11.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg11.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg11.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'forref' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +13 'ka_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +14 'kao' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'kao_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +16 'kb_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +17 'kbo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +18 'kbo_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'ng11' 'rrlw_kg11' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +20 'no11' 'rrlw_kg11' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_kg11' 'rrlw_kg11' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'selfref' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +25 'selfrefo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 +'ka_mo2' 0 13 'kao' 0 14 'kao_mo2' 0 15 'kb' 0 2 'kb_mo2' 0 16 'kbo' 0 +17 'kbo_mo2' 0 18 'ng11' 0 19 'no11' 0 20 'parkind' 0 21 'rb' 0 22 +'rrlw_kg11' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod new file mode 100644 index 00000000..c91c5139 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod @@ -0,0 +1,95 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg12.f90 +MD5:668f889649cd12635c5cf672d77da52a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg12.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg12.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +4 'forref' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +5 'forrefo' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'fracrefa' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +7 'fracrefao' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'kao' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'ng12' 'rrlw_kg12' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +11 'no12' 'rrlw_kg12' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +14 'rrlw_kg12' 'rrlw_kg12' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +15 'selfref' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +16 'selfrefo' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 'im' +0 8 'ka' 0 2 'kao' 0 9 'ng12' 0 10 'no12' 0 11 'parkind' 0 12 'rb' 0 13 +'rrlw_kg12' 0 14 'selfref' 0 15 'selfrefo' 0 16) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod new file mode 100644 index 00000000..ef2f89f7 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod @@ -0,0 +1,143 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg13.f90 +MD5:3aea125f123ecdc8b8507f9b94676014 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg13.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg13.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +4 'forref' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +5 'forrefo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'fracrefa' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +7 'fracrefao' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +8 'fracrefb' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +9 'fracrefbo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '4')) 0 () () () 0 0) +11 'ka_mco' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '4')) 0 () () () 0 0) +12 'ka_mco2' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '4')) 0 () () () 0 0) +13 'kao' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +14 'kao_mco' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +15 'kao_mco2' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +16 'kb_mo3' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +17 'kbo_mo3' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +18 'ng13' 'rrlw_kg13' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +19 'no13' 'rrlw_kg13' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +20 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +21 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +22 'rrlw_kg13' 'rrlw_kg13' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +23 'selfref' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +24 'selfrefo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 +'fracrefb' 0 8 'fracrefbo' 0 9 'im' 0 10 'ka' 0 2 'ka_mco' 0 11 'ka_mco2' +0 12 'kao' 0 13 'kao_mco' 0 14 'kao_mco2' 0 15 'kb_mo3' 0 16 'kbo_mo3' 0 +17 'ng13' 0 18 'no13' 0 19 'parkind' 0 20 'rb' 0 21 'rrlw_kg13' 0 22 +'selfref' 0 23 'selfrefo' 0 24) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod new file mode 100644 index 00000000..bcfb396a --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod @@ -0,0 +1,124 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg14.f90 +MD5:4858ec74e0a5ac35a4c65ac43d17ba9a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg14.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg14.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg14.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrlw_kg14.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +3 'absb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +6 'forref' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () +() 0 0) +13 'kao' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () +() 0 0) +14 'kbo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng14' 'rrlw_kg14' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +16 'no14' 'rrlw_kg14' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'rrlw_kg14' 'rrlw_kg14' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'selfref' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +21 'selfrefo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' +0 13 'kb' 0 2 'kbo' 0 14 'ng14' 0 15 'no14' 0 16 'parkind' 0 17 'rb' 0 +18 'rrlw_kg14' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod new file mode 100644 index 00000000..fc5e80b8 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod @@ -0,0 +1,110 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg15.f90 +MD5:39d0eea07c79e373741e311d873cfdac -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg15.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrlw_kg15.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +4 'forref' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +5 'forrefo' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'fracrefa' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +7 'fracrefao' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '2')) 0 () () () 0 0) +9 'ka_mn2' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '2')) 0 () () () 0 0) +10 'kao' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +11 'kao_mn2' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16')) 0 () () () 0 0) +12 'ng15' 'rrlw_kg15' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +13 'no15' 'rrlw_kg15' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +16 'rrlw_kg15' 'rrlw_kg15' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +17 'selfref' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +18 'selfrefo' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 'im' +0 8 'ka' 0 2 'ka_mn2' 0 9 'kao' 0 10 'kao_mn2' 0 11 'ng15' 0 12 'no15' 0 +13 'parkind' 0 14 'rb' 0 15 'rrlw_kg15' 0 16 'selfref' 0 17 'selfrefo' 0 +18) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod new file mode 100644 index 00000000..d1747542 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod @@ -0,0 +1,128 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg16.f90 +MD5:475a35e0829c53488bb620362a2d345b -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrlw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrlw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg16.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg16.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +3 'absb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +6 'forref' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +7 'forrefo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'fracrefa' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +9 'fracrefao' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +10 'fracrefb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +11 'fracrefbo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '2')) 0 () () () 0 0) +13 'kao' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () +() 0 0) +14 'kbo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng16' 'rrlw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +16 'no16' 'rrlw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'rrlw_kg16' 'rrlw_kg16' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'selfref' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +21 'selfrefo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 +'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' +0 13 'kb' 0 2 'kbo' 0 14 'ng16' 0 15 'no16' 0 16 'parkind' 0 17 'rb' 0 +18 'rrlw_kg16' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod new file mode 100644 index 00000000..213da7de --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod @@ -0,0 +1,117 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_ncpar.f90 +MD5:8dc575f9b1ccbe1ba5ceb14289541cf9 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'absorber' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +3 'absorbernames' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 +CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5'))) 0 0 () ( +ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '5'))) 1 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '5'))) 0 5 'N2 ') ()) ((CONSTANT (CHARACTER 1 0 +0 0 CHARACTER (())) 0 5 'CCL4 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 5 'CFC11') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER +(())) 0 5 'CFC12') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 +'CFC22') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'H2O ') +()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO2 ') ()) (( +CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O3 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'N2O ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CH4 ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O2 ') ())) ('12')) (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +4 'band' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +5 'cpdair' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.3eb80000000000@3') () 0 () () () 0 0) +6 'getabsorberindex' 'rrlw_ncpar' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 7 +0 (8 9) () 0 () () () 0 0) +10 'gpoint' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'gpointset' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +12 'i' 'rrlw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +14 'keylower' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9') () 0 () () () 0 0) +15 'keyupper' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +16 'maxabsorbernamelength' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 +() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'pforeign' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +19 'plower' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') () 0 () () () 0 0) +20 'ps' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') () 0 () () () 0 0) +21 'pupper' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '47') () 0 () () () 0 0) +22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +23 'rrlw_ncpar' 'rrlw_ncpar' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'status' 'rrlw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () +(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '40')) 0 () () () 0 0) +25 't' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') () 0 () () () 0 0) +26 'tdiff' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +27 'tforeign' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +28 'tplanck' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181') () 0 () () () 0 0) +29 'tself' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +8 'absorbername' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (CHARACTER 1 0 0 0 CHARACTER (())) 0 0 () () 0 () () () 0 0) +9 'absorberindex' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +) + +('absorber' 0 2 'absorbernames' 0 3 'band' 0 4 'cpdair' 0 5 +'getabsorberindex' 0 6 'gpoint' 0 10 'gpointset' 0 11 'i' 0 12 'im' 0 13 +'keylower' 0 14 'keyupper' 0 15 'maxabsorbernamelength' 0 16 'parkind' 0 +17 'pforeign' 0 18 'plower' 0 19 'ps' 0 20 'pupper' 0 21 'rb' 0 22 +'rrlw_ncpar' 0 23 'status' 0 24 't' 0 25 'tdiff' 0 26 'tforeign' 0 27 +'tplanck' 0 28 'tself' 0 29) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod new file mode 100644 index 00000000..f79fe491 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod @@ -0,0 +1,48 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_ref.f90 +MD5:a748e700c0cf768c66f65894bb14e110 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'chi_mls' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '7') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +5 'pref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +6 'preflog' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +7 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +8 'rrlw_ref' 'rrlw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +9 'tref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +) + +('chi_mls' 0 2 'im' 0 3 'parkind' 0 4 'pref' 0 5 'preflog' 0 6 'rb' 0 7 +'rrlw_ref' 0 8 'tref' 0 9) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod new file mode 100644 index 00000000..29a314f5 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod @@ -0,0 +1,55 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_tbl.f90 +MD5:76e19cf22627047de03a7dd82f3164af -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'ntbl' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000') () 0 () () () 0 0) +6 'pade' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT (REAL 8 0 0 0 +REAL ()) 0 '0.472b020c49ba60@0') () 0 () () () 0 0) +7 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +8 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +9 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +10 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +11 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +12 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +) + +('bpade' 0 2 'exp_tbl' 0 3 'im' 0 4 'ntbl' 0 5 'pade' 0 6 'parkind' 0 7 +'rb' 0 8 'rrlw_tbl' 0 9 'tau_tbl' 0 10 'tblint' 0 11 'tfn_tbl' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod new file mode 100644 index 00000000..3232cd7f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod @@ -0,0 +1,105 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_vsn.f90 +MD5:8985c0ba5d5be81a3208c49cbcfa8380 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () () +() () ()) + +() + +() + +() + +() + +() + +(2 'hnamatm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +3 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +4 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +5 'hnamext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +6 'hnamini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +7 'hnamkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +8 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +9 'hnamrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +10 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +11 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +12 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +13 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +14 'hnamutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +15 'hvratm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +16 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +17 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +18 'hvrext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +19 'hvrini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +20 'hvrkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +21 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +22 'hvrrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +23 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +24 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +25 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +26 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +27 'hvrutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +28 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +) + +('hnamatm' 0 2 'hnamclc' 0 3 'hnamcld' 0 4 'hnamext' 0 5 'hnamini' 0 6 +'hnamkg' 0 7 'hnamrtc' 0 8 'hnamrtm' 0 9 'hnamrtr' 0 10 'hnamrtx' 0 11 +'hnamset' 0 12 'hnamtau' 0 13 'hnamutl' 0 14 'hvratm' 0 15 'hvrclc' 0 16 +'hvrcld' 0 17 'hvrext' 0 18 'hvrini' 0 19 'hvrkg' 0 20 'hvrrtc' 0 21 +'hvrrtm' 0 22 'hvrrtr' 0 23 'hvrrtx' 0 24 'hvrset' 0 25 'hvrtau' 0 26 +'hvrutl' 0 27 'rrlw_vsn' 0 28) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod new file mode 100644 index 00000000..a0bbf404 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod @@ -0,0 +1,128 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_wvn.f90 +MD5:d53dfc721d6c3a7476369543a7e8126a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ixindx' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () +(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38')) 0 () () () 0 0) +5 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +6 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +7 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +8 'ng' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +10 'ngc' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +11 'ngm' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '256')) 0 () () () 0 0) +12 'ngn' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +13 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +14 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +16 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +17 'nxmol' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () +() 0 0) +18 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +19 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +20 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +21 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +22 'rwgt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '256')) 0 () () () 0 0) +23 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +24 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +25 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +26 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +27 'wavenum1' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +28 'wavenum2' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +29 'wt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('delwave' 0 2 'im' 0 3 'ixindx' 0 4 'maxinpx' 0 5 'mg' 0 6 'nbndlw' 0 7 +'ng' 0 8 'ngb' 0 9 'ngc' 0 10 'ngm' 0 11 'ngn' 0 12 'ngptlw' 0 13 'ngs' +0 14 'nspa' 0 15 'nspb' 0 16 'nxmol' 0 17 'parkind' 0 18 'parrrtm' 0 19 +'rb' 0 20 'rrlw_wvn' 0 21 'rwgt' 0 22 'totplk16' 0 23 'totplk16deriv' 0 +24 'totplnk' 0 25 'totplnkderiv' 0 26 'wavenum1' 0 27 'wavenum2' 0 28 'wt' +0 29) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod new file mode 100644 index 00000000..f17d641b --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod @@ -0,0 +1,54 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_aer.f90 +MD5:d04c7cda8ae4983a6e3d2eb3ac981a00 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +4 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +5 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +6 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +7 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +8 'rrsw_aer' 'rrsw_aer' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +9 'rsrasya' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +10 'rsrpiza' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +11 'rsrtaua' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +) + +('im' 0 2 'naerec' 0 3 'nbndsw' 0 4 'parkind' 0 5 'parrrsw' 0 6 'rb' 0 7 +'rrsw_aer' 0 8 'rsrasya' 0 9 'rsrpiza' 0 10 'rsrtaua' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod new file mode 100644 index 00000000..fd75fb3f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod @@ -0,0 +1,107 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_cld.f90 +MD5:ccb32026dc1d9d6db78f206f98927c51 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +8 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +9 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +10 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +11 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +12 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +13 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +14 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +15 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +16 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +18 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +20 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +21 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +) + +('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' +0 7 'dbari' 0 8 'ebari' 0 9 'extice2' 0 10 'extice3' 0 11 'extliq1' 0 12 +'fbari' 0 13 'fdlice3' 0 14 'im' 0 15 'parkind' 0 16 'rb' 0 17 'rrsw_cld' +0 18 'ssaice2' 0 19 'ssaice3' 0 20 'ssaliq1' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod new file mode 100644 index 00000000..741622df --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod @@ -0,0 +1,75 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_con.f90 +MD5:106ba95b126ad9dae86570fbf1037eb3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'alosmt' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'avogad' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +4 'boltz' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +5 'clight' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +6 'fluxfac' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +7 'gascon' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'grav' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +9 'heatfac' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +11 'oneminus' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'pi' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +14 'planck' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +15 'radcn1' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'radcn2' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +18 'rrsw_con' 'rrsw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'sbcnst' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +20 'secdy' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +) + +('alosmt' 0 2 'avogad' 0 3 'boltz' 0 4 'clight' 0 5 'fluxfac' 0 6 'gascon' +0 7 'grav' 0 8 'heatfac' 0 9 'im' 0 10 'oneminus' 0 11 'parkind' 0 12 'pi' +0 13 'planck' 0 14 'radcn1' 0 15 'radcn2' 0 16 'rb' 0 17 'rrsw_con' 0 18 +'sbcnst' 0 19 'secdy' 0 20) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod new file mode 100644 index 00000000..d00b34e3 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod @@ -0,0 +1,123 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg16.f90 +MD5:c53614184e747d86e716a9ec1440834c -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg16.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg16.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +3 'absb' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +6 'forref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '6')) 0 () () () 0 0) +9 'kao' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () +() 0 0) +10 'kbo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +11 'ng16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +12 'no16' 'rrsw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg16' 'rrsw_kg16' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng16' 0 11 'no16' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg16' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod new file mode 100644 index 00000000..6d4e371f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod @@ -0,0 +1,129 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg17.f90 +MD5:897a508aa30c649a57afc1d620187254 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg17.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrsw_kg17.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg17.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrsw_kg17.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 +0) +3 'absb' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +6 'forref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '12')) 0 () () () 0 0) +9 'kao' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '12')) 0 () () () 0 0) +10 'kbo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +11 'ng17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +12 'no17' 'rrsw_kg17' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg17' 'rrsw_kg17' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng17' 0 11 'no17' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg17' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod new file mode 100644 index 00000000..3007560d --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod @@ -0,0 +1,125 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg18.f90 +MD5:72f68e730ee2fa68158aa536629ffa0c -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg18.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg18.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg18.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg18.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'forref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'kao' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +10 'kbo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +11 'ng18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +12 'no18' 'rrsw_kg18' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg18' 'rrsw_kg18' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng18' 0 11 'no18' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg18' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod new file mode 100644 index 00000000..56431de1 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod @@ -0,0 +1,125 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg19.f90 +MD5:656f3fe6369fbb05cc0365a47b25be07 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg19.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg19.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg19.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg19.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'forref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'kao' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +10 'kbo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +11 'ng19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +12 'no19' 'rrsw_kg19' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg19' 'rrsw_kg19' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng19' 0 11 'no19' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg19' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod new file mode 100644 index 00000000..2eb5602e --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod @@ -0,0 +1,129 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg20.f90 +MD5:a28f16a9a792ebda1a99f60b07903b36 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg20.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg20.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg20.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrsw_kg20.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +3 'absb' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +6 'absch4' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +7 'absch4o' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'forref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +9 'forrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () +() () 0 0) +11 'kao' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () +() () 0 0) +12 'kbo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +13 'ng20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +14 'no20' 'rrsw_kg20' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +15 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +17 'rayl' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +19 'rrsw_kg20' 'rrsw_kg20' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'selfref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +21 'selfrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +22 'sfluxref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +23 'sfluxrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'absch4' 0 6 'absch4o' 0 7 'forref' 0 8 'forrefo' +0 9 'im' 0 10 'ka' 0 4 'kao' 0 11 'kb' 0 2 'kbo' 0 12 'ng20' 0 13 'no20' +0 14 'parkind' 0 15 'parrrsw' 0 16 'rayl' 0 17 'rb' 0 18 'rrsw_kg20' 0 +19 'selfref' 0 20 'selfrefo' 0 21 'sfluxref' 0 22 'sfluxrefo' 0 23) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod new file mode 100644 index 00000000..6db3f5af --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod @@ -0,0 +1,129 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg21.f90 +MD5:3d30afddfc9ba9cf934ed17a5b6bb90f -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg21.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrsw_kg21.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg21.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrsw_kg21.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 +0) +3 'absb' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +6 'forref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '10')) 0 () () () 0 0) +9 'kao' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '10')) 0 () () () 0 0) +10 'kbo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +11 'ng21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +12 'no21' 'rrsw_kg21' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg21' 'rrsw_kg21' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng21' 0 11 'no21' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg21' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod new file mode 100644 index 00000000..af2b4f7e --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod @@ -0,0 +1,125 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg22.f90 +MD5:b8a5b303a35fc888b25e50db6b099bc7 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg22.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg22.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg22.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg22.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +3 'absb' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +6 'forref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +7 'forrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '2')) 0 () () () 0 0) +9 'kao' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () +() 0 0) +10 'kbo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +11 'ng22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +12 'no22' 'rrsw_kg22' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'rayl' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg22' 'rrsw_kg22' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'selfref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +19 'selfrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +20 'sfluxref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +21 'sfluxrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' +0 9 'kb' 0 2 'kbo' 0 10 'ng22' 0 11 'no22' 0 12 'parkind' 0 13 'parrrsw' +0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg22' 0 17 'selfref' 0 18 'selfrefo' 0 +19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod new file mode 100644 index 00000000..b08954dc --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod @@ -0,0 +1,101 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg23.f90 +MD5:cc49c233b08f158fd1c74987ccfc471d -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg23.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg23.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +4 'forref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +5 'forrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () +() () 0 0) +7 'kao' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +8 'ng23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +9 'no23' 'rrsw_kg23' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +10 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +11 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +12 'rayl' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +13 'raylo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +15 'rrsw_kg23' 'rrsw_kg23' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +16 'selfref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +17 'selfrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +18 'sfluxref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +19 'sfluxrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'im' 0 6 'ka' 0 2 'kao' 0 7 'ng23' +0 8 'no23' 0 9 'parkind' 0 10 'parrrsw' 0 11 'rayl' 0 12 'raylo' 0 13 'rb' +0 14 'rrsw_kg23' 0 15 'selfref' 0 16 'selfrefo' 0 17 'sfluxref' 0 18 +'sfluxrefo' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod new file mode 100644 index 00000000..e7768a6d --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod @@ -0,0 +1,157 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg24.f90 +MD5:6a32f38d5ff1b04f95cb6b0d25f624d5 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg24.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg24.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg24.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg24.eq.1' (VARIABLE (REAL +8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'abso3a' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +7 'abso3ao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'abso3b' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +9 'abso3bo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'forref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +11 'forrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '8')) 0 () () () 0 0) +13 'kao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +14 'kbo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +16 'no24' 'rrsw_kg24' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +19 'rayla' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +20 'raylao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +21 'raylb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +22 'raylbo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +23 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +24 'rrsw_kg24' 'rrsw_kg24' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +25 'selfref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +26 'selfrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +27 'sfluxref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +28 'sfluxrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'abso3a' 0 6 'abso3ao' 0 7 'abso3b' 0 8 'abso3bo' +0 9 'forref' 0 10 'forrefo' 0 11 'im' 0 12 'ka' 0 4 'kao' 0 13 'kb' 0 2 +'kbo' 0 14 'ng24' 0 15 'no24' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rayla' +0 19 'raylao' 0 20 'raylb' 0 21 'raylbo' 0 22 'rb' 0 23 'rrsw_kg24' 0 24 +'selfref' 0 25 'selfrefo' 0 26 'sfluxref' 0 27 'sfluxrefo' 0 28) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod new file mode 100644 index 00000000..8605166a --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod @@ -0,0 +1,97 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg25.f90 +MD5:ecf53d3a8e5dbd0024e16b41b7313659 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg25.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg25.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(3 'absa' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +4 'abso3a' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +5 'abso3ao' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'abso3b' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +7 'abso3bo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +2 'ka' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () +() 0 0) +9 'kao' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +10 'ng25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +11 'no25' 'rrsw_kg25' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'rayl' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +15 'raylo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrsw_kg25' 'rrsw_kg25' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'sfluxref' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +19 'sfluxrefo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 3 'abso3a' 0 4 'abso3ao' 0 5 'abso3b' 0 6 'abso3bo' 0 7 'im' 0 +8 'ka' 0 2 'kao' 0 9 'ng25' 0 10 'no25' 0 11 'parkind' 0 12 'parrrsw' 0 +13 'rayl' 0 14 'raylo' 0 15 'rb' 0 16 'rrsw_kg25' 0 17 'sfluxref' 0 18 +'sfluxrefo' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod new file mode 100644 index 00000000..f459839f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod @@ -0,0 +1,55 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg26.f90 +MD5:aa893aa4e8d2076a264e2077028e70e3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'ng26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +4 'no26' 'rrsw_kg26' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +5 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +6 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +7 'rayl' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '6')) 0 () () () 0 0) +8 'raylo' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +10 'rrsw_kg26' 'rrsw_kg26' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +11 'sfluxref' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +12 'sfluxrefo' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('im' 0 2 'ng26' 0 3 'no26' 0 4 'parkind' 0 5 'parrrsw' 0 6 'rayl' 0 7 +'raylo' 0 8 'rb' 0 9 'rrsw_kg26' 0 10 'sfluxref' 0 11 'sfluxrefo' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod new file mode 100644 index 00000000..b04c727a --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod @@ -0,0 +1,105 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg27.f90 +MD5:e9dc3ed561640d1cee9e52bee71e16ec -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg27.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg27.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg27.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrsw_kg27.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +3 'absb' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +7 'kao' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () +() 0 0) +8 'kbo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +9 'ng27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +10 'no27' 'rrsw_kg27' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +12 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'rayl' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +14 'raylo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +16 'rrsw_kg27' 'rrsw_kg27' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +17 'sfluxref' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) +18 'sfluxrefo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'im' 0 6 'ka' 0 4 'kao' 0 7 'kb' 0 2 'kbo' 0 8 +'ng27' 0 9 'no27' 0 10 'parkind' 0 11 'parrrsw' 0 12 'rayl' 0 13 'raylo' +0 14 'rb' 0 15 'rrsw_kg27' 0 16 'sfluxref' 0 17 'sfluxrefo' 0 18) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod new file mode 100644 index 00000000..4d9a057b --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod @@ -0,0 +1,107 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg28.f90 +MD5:1551d844d83562485f9fae3ce7df92e1 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg28.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) +'rrsw_kg28.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg28.eq.1' (VARIABLE (REAL 8 0 0 0 +REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 +'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 +0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 +1 1 1)))) 'rrsw_kg28.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY +(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +3 'absb' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '6')) 0 () () () 0 0) +7 'kao' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +2 'kb' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '6')) 0 () () () 0 0) +8 'kbo' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'ng28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +10 'no28' 'rrsw_kg28' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +12 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'rayl' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +15 'rrsw_kg28' 'rrsw_kg28' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +16 'sfluxref' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '6') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +17 'sfluxrefo' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'im' 0 6 'ka' 0 4 'kao' 0 7 'kb' 0 2 'kbo' 0 8 +'ng28' 0 9 'no28' 0 10 'parkind' 0 11 'parrrsw' 0 12 'rayl' 0 13 'rb' 0 +14 'rrsw_kg28' 0 15 'sfluxref' 0 16 'sfluxrefo' 0 17) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod new file mode 100644 index 00000000..78035674 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod @@ -0,0 +1,138 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg29.f90 +MD5:6ef4cc2f0b5c27c0957aa3ddd2596970 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +(('rrsw_kg29.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( +ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') 1 1 1)))) 'rrsw_kg29.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( +(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg29.eq.1' +(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) +'rrsw_kg29.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') 1 1)))))) + +() + +(5 'absa' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +3 'absb' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +6 'absco2' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +7 'absco2o' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +8 'absh2o' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +9 'absh2oo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'forref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +11 'forrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'ka' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +13 'kao' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +2 'kb' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () +() () 0 0) +14 'kbo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () +() () 0 0) +15 'ng29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +16 'no29' 'rrsw_kg29' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +19 'rayl' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +20 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +21 'rrsw_kg29' 'rrsw_kg29' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +22 'selfref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +23 'selfrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +24 'sfluxref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +25 'sfluxrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('absa' 0 5 'absb' 0 3 'absco2' 0 6 'absco2o' 0 7 'absh2o' 0 8 'absh2oo' +0 9 'forref' 0 10 'forrefo' 0 11 'im' 0 12 'ka' 0 4 'kao' 0 13 'kb' 0 2 +'kbo' 0 14 'ng29' 0 15 'no29' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rayl' +0 19 'rb' 0 20 'rrsw_kg29' 0 21 'selfref' 0 22 'selfrefo' 0 23 'sfluxref' +0 24 'sfluxrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod new file mode 100644 index 00000000..f578b36b --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod @@ -0,0 +1,235 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_ncpar.f90 +MD5:a6235a4ecc5733211750637c478c52bd -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 '__convert_i4_r8' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION ELEMENTAL PURE) (REAL 8 0 0 0 +REAL ()) 0 0 () () 2 () () () 0 0) +3 'absorber' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) +4 'absorbernames' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 +CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5'))) 0 0 () ( +ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '5'))) 1 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '5'))) 0 5 'N2 ') ()) ((CONSTANT (CHARACTER 1 0 +0 0 CHARACTER (())) 0 5 'CCL4 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 5 'CFC11') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER +(())) 0 5 'CFC12') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 +'CFC22') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'H2O ') +()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO2 ') ()) (( +CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O3 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'N2O ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CH4 ') ()) ((CONSTANT ( +CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O2 ') ())) ('12')) (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) +5 'band' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +6 'bandnums' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () +(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +7 'cpdair' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.3eb80000000000@3') () 0 () () () 0 0) +8 'getabsorberindex' 'rrsw_ncpar' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 9 +0 (10 11) () 0 () () () 0 0) +12 'gpoint' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'gpointset' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +14 'i' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +15 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +16 'keylower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9') () 0 () () () 0 0) +17 'keyspecieslower' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) +18 'keyspeciesnameslower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 +CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3'))) 0 0 () ( +ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '3'))) 2 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '3'))) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 +0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER +(())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ())) ('14' '2')) (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +19 'keyspeciesnamesupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 +CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3'))) 0 0 () ( +ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '3'))) 2 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER +4 0 0 0 INTEGER ()) 0 '3'))) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 +0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER +(())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER +1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 +CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( +())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 +' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) +((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT +(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ())) ('14' '2')) (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +20 'keyspeciesupper' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +21 'keyupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +22 'maxabsorbernamelength' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 +() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +23 'maxkeyspeciesnamelength' 'rrsw_ncpar' '' 1 ((PARAMETER +UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 +INTEGER ()) 0 0 () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () +() () 0 0) +24 'maxkeyspeciesnames' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 +() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +25 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +26 'pforeign' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +27 'plower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') () 0 () () () 0 0) +28 'pressforeign' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) +29 'ps' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') () 0 () () () 0 0) +30 'pupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '47') () 0 () () () 0 0) +31 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +32 'reshape' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 32 +() () () 0 0) +33 'rrsw_ncpar' 'rrsw_ncpar' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +34 'status' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () +(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '50')) 0 () () () 0 0) +35 't' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19') () 0 () () () 0 0) +36 'tdiff' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) +37 'temp' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '19')) 0 () () () 0 0) +38 'tempdiffs' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +39 'tempforeignlower' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3')) 0 () () () 0 0) +40 'tempforeignupper' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +41 'tempself' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) +42 'tforeignlower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 +() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () () () 0 0) +43 'tforeignupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 +() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) +44 'tself' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) +10 'absorbername' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (CHARACTER 1 0 0 0 CHARACTER (())) 0 0 () () 0 () () () 0 0) +11 'absorberindex' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +) + +('__convert_i4_r8' 0 2 'absorber' 0 3 'absorbernames' 0 4 'band' 0 5 +'bandnums' 0 6 'cpdair' 0 7 'getabsorberindex' 0 8 'gpoint' 0 12 +'gpointset' 0 13 'i' 0 14 'im' 0 15 'keylower' 0 16 'keyspecieslower' 0 +17 'keyspeciesnameslower' 0 18 'keyspeciesnamesupper' 0 19 +'keyspeciesupper' 0 20 'keyupper' 0 21 'maxabsorbernamelength' 0 22 +'maxkeyspeciesnamelength' 0 23 'maxkeyspeciesnames' 0 24 'parkind' 0 25 +'pforeign' 0 26 'plower' 0 27 'pressforeign' 0 28 'ps' 0 29 'pupper' 0 +30 'rb' 0 31 'reshape' 0 32 'rrsw_ncpar' 0 33 'status' 0 34 't' 0 35 +'tdiff' 0 36 'temp' 0 37 'tempdiffs' 0 38 'tempforeignlower' 0 39 +'tempforeignupper' 0 40 'tempself' 0 41 'tforeignlower' 0 42 +'tforeignupper' 0 43 'tself' 0 44) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod new file mode 100644 index 00000000..c4f1307c --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod @@ -0,0 +1,43 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_ref.f90 +MD5:96710f2aba35d1336fdca1d293ac334a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +4 'pref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +5 'preflog' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +6 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +7 'rrsw_ref' 'rrsw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +8 'tref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +) + +('im' 0 2 'parkind' 0 3 'pref' 0 4 'preflog' 0 5 'rb' 0 6 'rrsw_ref' 0 7 +'tref' 0 8) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod new file mode 100644 index 00000000..b0f520c9 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod @@ -0,0 +1,53 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_tbl.f90 +MD5:ef1443a9704cd81794da39fd36b1f395 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'ntbl' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000') () 0 () () () 0 0) +6 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) +7 'pade' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT (REAL 8 0 0 0 +REAL ()) 0 '0.472b020c49ba60@0') () 0 () () () 0 0) +8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +10 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +11 'tau_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +12 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +) + +('bpade' 0 2 'exp_tbl' 0 3 'im' 0 4 'ntbl' 0 5 'od_lo' 0 6 'pade' 0 7 +'parkind' 0 8 'rb' 0 9 'rrsw_tbl' 0 10 'tau_tbl' 0 11 'tblint' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod new file mode 100644 index 00000000..b8fb480f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod @@ -0,0 +1,111 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_vsn.f90 +MD5:d7dc0f6d099a2ad8f90b3da4bf7892fd -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () () +() () ()) + +() + +() + +() + +() + +() + +(2 'hnamatm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +3 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +4 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +5 'hnamext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +6 'hnamini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +7 'hnamkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +8 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +9 'hnamrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +10 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +11 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +12 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +13 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +14 'hnamutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +15 'hnamvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +16 'hvratm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +17 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +18 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +19 'hvrext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +20 'hvrini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +21 'hvrkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +22 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +23 'hvrrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +24 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +25 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +26 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +27 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +28 'hvrutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +29 'hvrvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +) + +('hnamatm' 0 2 'hnamclc' 0 3 'hnamcld' 0 4 'hnamext' 0 5 'hnamini' 0 6 +'hnamkg' 0 7 'hnamrft' 0 8 'hnamrtm' 0 9 'hnamset' 0 10 'hnamspc' 0 11 +'hnamspv' 0 12 'hnamtau' 0 13 'hnamutl' 0 14 'hnamvqd' 0 15 'hvratm' 0 +16 'hvrclc' 0 17 'hvrcld' 0 18 'hvrext' 0 19 'hvrini' 0 20 'hvrkg' 0 21 +'hvrrft' 0 22 'hvrrtm' 0 23 'hvrset' 0 24 'hvrspc' 0 25 'hvrspv' 0 26 +'hvrtau' 0 27 'hvrutl' 0 28 'hvrvqd' 0 29 'rrsw_vsn' 0 30) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod new file mode 100644 index 00000000..ca824157 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod @@ -0,0 +1,102 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_wvn.f90 +MD5:276f94afd6d3f98daac13c1f16ecb0be -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'delwave' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +4 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +5 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +6 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +7 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +8 'ng' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +9 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) +10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +11 'ngm' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '224')) 0 () () () 0 0) +12 'ngn' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) +13 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +14 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +15 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +16 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +19 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +20 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'rwgt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '224')) 0 () () () 0 0) +22 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +23 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +24 'wt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +) + +('delwave' 0 2 'im' 0 3 'jpb1' 0 4 'jpb2' 0 5 'mg' 0 6 'nbndsw' 0 7 'ng' +0 8 'ngb' 0 9 'ngc' 0 10 'ngm' 0 11 'ngn' 0 12 'ngptsw' 0 13 'ngs' 0 14 +'nspa' 0 15 'nspb' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rb' 0 19 'rrsw_wvn' +0 20 'rwgt' 0 21 'wavenum1' 0 22 'wavenum2' 0 23 'wt' 0 24) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod new file mode 100644 index 00000000..d45cecd6 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod @@ -0,0 +1,126 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_cldprmc.f90 +MD5:a47fb4c77f77300721e37c391ac31ee7 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'cldprmc' 'rrtmg_lw_cldprmc' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 10 0 (11 12 13 14 15 16 17 18 19 20 21) () 0 () () () 0 0) +22 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +23 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +24 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +25 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +26 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +27 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +28 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +29 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +30 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +31 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +32 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +33 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +34 'rrtmg_lw_cldprmc' 'rrtmg_lw_cldprmc' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +11 'nlayers' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +12 'inflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'iceflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +14 'liqflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +15 'cldfmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'ciwpmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'clwpmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'reicmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'relqmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'ncbands' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +21 'taucmc' '' '' 10 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 +'absliq0' 0 7 'absliq1' 0 8 'cldprmc' 0 9 'hnamclc' 0 22 'hvrclc' 0 23 +'im' 0 24 'nbndlw' 0 25 'ngb' 0 26 'ngptlw' 0 27 'parkind' 0 28 'parrrtm' +0 29 'rb' 0 30 'rrlw_cld' 0 31 'rrlw_vsn' 0 32 'rrlw_wvn' 0 33 +'rrtmg_lw_cldprmc' 0 34) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod new file mode 100644 index 00000000..4b0b1c28 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod @@ -0,0 +1,117 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_cldprop.f90 +MD5:08a0e0cb4b915f36df4339e73293ee61 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) +4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +9 'cldprop' 'rrtmg_lw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 10 0 (11 12 13 14 15 16 17 18 19 20 21 22) () 0 () () () 0 +0) +23 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +24 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +25 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +26 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +27 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +28 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +29 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +30 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +31 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +32 'rrtmg_lw_cldprop' 'rrtmg_lw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +11 'nlayers' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +12 'inflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'iceflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +14 'liqflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +15 'cldfrac' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'tauc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'ciwp' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'clwp' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'rei' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'rel' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'ncbands' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +22 'taucloud' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 +'absliq0' 0 7 'absliq1' 0 8 'cldprop' 0 9 'hnamcld' 0 23 'hvrcld' 0 24 +'im' 0 25 'nbndlw' 0 26 'parkind' 0 27 'parrrtm' 0 28 'rb' 0 29 'rrlw_cld' +0 30 'rrlw_vsn' 0 31 'rrtmg_lw_cldprop' 0 32) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod new file mode 100644 index 00000000..d73e5047 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod @@ -0,0 +1,213 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_init.f90 +MD5:86ecfd94c37867ae8a5e2d9b7345c4fd -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'cmbgb1' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +3 'cmbgb10' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +4 'cmbgb11' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +5 'cmbgb12' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +6 'cmbgb13' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +7 'cmbgb14' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +8 'cmbgb15' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +9 'cmbgb16' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +10 'cmbgb2' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +11 'cmbgb3' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +12 'cmbgb4' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +13 'cmbgb5' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +14 'cmbgb6' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +15 'cmbgb7' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +16 'cmbgb8' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +17 'cmbgb9' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +18 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +19 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +20 'ixindx' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () +(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38')) 0 () () () 0 0) +21 'lwatmref' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +22 'lwavplank' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +23 'lwavplankderiv' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +24 'lwcldpr' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +25 'lwcmbdat' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +26 'lwdatinit' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 27 +0 (28) () 0 () () () 0 0) +29 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +30 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +31 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +32 'ng' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +33 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +34 'ngc' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +35 'ngm' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '256')) 0 () () () 0 0) +36 'ngn' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +37 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +38 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +39 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +40 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +41 'nxmol' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () +() 0 0) +42 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +43 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +44 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +45 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +46 'rrtmg_lw_ini' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 47 +0 (48) () 0 () () () 0 0) +49 'rrtmg_lw_init' 'rrtmg_lw_init' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +50 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +51 'rwgt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '256')) 0 () () () 0 0) +52 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +53 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +54 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +55 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +56 'wavenum1' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +57 'wavenum2' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +58 'wt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +28 'cpdair' '' '' 27 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +48 'cpdair' '' '' 47 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +) + +('cmbgb1' 0 2 'cmbgb10' 0 3 'cmbgb11' 0 4 'cmbgb12' 0 5 'cmbgb13' 0 6 +'cmbgb14' 0 7 'cmbgb15' 0 8 'cmbgb16' 0 9 'cmbgb2' 0 10 'cmbgb3' 0 11 +'cmbgb4' 0 12 'cmbgb5' 0 13 'cmbgb6' 0 14 'cmbgb7' 0 15 'cmbgb8' 0 16 +'cmbgb9' 0 17 'delwave' 0 18 'im' 0 19 'ixindx' 0 20 'lwatmref' 0 21 +'lwavplank' 0 22 'lwavplankderiv' 0 23 'lwcldpr' 0 24 'lwcmbdat' 0 25 +'lwdatinit' 0 26 'maxinpx' 0 29 'mg' 0 30 'nbndlw' 0 31 'ng' 0 32 'ngb' +0 33 'ngc' 0 34 'ngm' 0 35 'ngn' 0 36 'ngptlw' 0 37 'ngs' 0 38 'nspa' 0 +39 'nspb' 0 40 'nxmol' 0 41 'parkind' 0 42 'parrrtm' 0 43 'rb' 0 44 +'rrlw_wvn' 0 45 'rrtmg_lw_ini' 0 46 'rrtmg_lw_init' 0 49 +'rrtmg_lw_setcoef' 0 50 'rwgt' 0 51 'totplk16' 0 52 'totplk16deriv' 0 53 +'totplnk' 0 54 'totplnkderiv' 0 55 'wavenum1' 0 56 'wavenum2' 0 57 'wt' +0 58) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod new file mode 100644 index 00000000..b03199b9 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod @@ -0,0 +1,971 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rad.nomcica.f90 +MD5:b2750b5a85eae2e49de179529ade5fc3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'cldprop' 'rrtmg_lw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 3 0 (4 5 6 7 8 9 10 11 12 13 14 15) () 0 () () () 0 0) +16 'hnamatm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +17 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +18 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +19 'hnamext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +20 'hnamini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +21 'hnamkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +22 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +23 'hnamrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +24 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +25 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +26 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +27 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +28 'hnamutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +29 'hvratm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +30 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +31 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +32 'hvrext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +33 'hvrini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +34 'hvrkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +35 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +36 'hvrrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +37 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +38 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +39 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +40 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +41 'hvrutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +42 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +43 'inatm' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) (UNKNOWN 0 0 +0 0 UNKNOWN ()) 44 0 (45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 +62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 +86 87 88 89 90 91 92 93 94 95 96) () 0 () () () 0 0) +97 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +98 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +99 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +100 'rrtmg_lw' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 101 0 (102 103 104 105 106 107 108 109 110 111 112 113 114 +115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 +133 134 135 136 137 138 139) () 0 () () () 0 0) +140 'rrtmg_lw_cldprop' 'rrtmg_lw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +141 'rrtmg_lw_rad' 'rrtmg_lw_rad' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +142 'rrtmg_lw_rtrn' 'rrtmg_lw_rtrn' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +143 'rrtmg_lw_rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +144 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +145 'rrtmg_lw_taumol' 'rrtmg_lw_taumol' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +146 'rtrn' 'rrtmg_lw_rtrn' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) +147 0 (148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 +164 165 166 167 168 169 170 171 172 173 174) () 0 () () () 0 0) +175 'rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 176 0 (177 178 179 180 181 182 183 184 185 186 187 188 189 +190 191 192 193 194 195 196 197 198 199 200 201 202 203) () 0 () () () 0 +0) +204 'setcoef' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 205 0 (206 207 208 209 210 211 212 213 214 215 216 217 218 +219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 +237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 +255 256 257 258) () 0 () () () 0 0) +259 'taumol' 'rrtmg_lw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 260 0 (261 262 263 264 265 266 267 268 269 270 271 272 273 +274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 +292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307) () 0 () +() () 0 0) +4 'nlayers' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +5 'inflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +6 'iceflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +7 'liqflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +8 'cldfrac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +9 'tauc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +10 'ciwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +11 'clwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +12 'rei' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +13 'rel' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +14 'ncbands' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +15 'taucloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'iplon' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +46 'nlay' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +47 'icld' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +48 'iaer' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +49 'play' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'plev' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +51 'tlay' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +52 'tlev' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +53 'tsfc' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +54 'h2ovmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +55 'o3vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +56 'co2vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'ch4vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'n2ovmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'o2vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +60 'cfc11vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'cfc12vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'cfc22vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'ccl4vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +64 'emis' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'inflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +66 'iceflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +67 'liqflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +68 'cldfr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'taucld' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +70 'cicewp' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'cliqwp' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'reice' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +73 'reliq' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +74 'tauaer' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +75 'nlayers' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +76 'pavel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +77 'pz' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +78 'tavel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +79 'tz' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +80 'tbound' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +81 'semiss' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +82 'coldry' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +83 'wkl' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +84 'wbrodl' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +85 'wx' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +86 'pwvcm' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +87 'inflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +88 'iceflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +89 'liqflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +90 'cldfrac' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +91 'tauc' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'ciwp' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +93 'clwp' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +94 'rei' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +95 'rel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +96 'taua' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +102 'ncol' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +103 'nlay' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +104 'icld' '' '' 101 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +105 'idrv' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +106 'play' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +107 'plev' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +108 'tlay' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +109 'tlev' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +110 'tsfc' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +111 'h2ovmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +112 'o3vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +113 'co2vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +114 'ch4vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +115 'n2ovmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +116 'o2vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +117 'cfc11vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +118 'cfc12vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +119 'cfc22vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +120 'ccl4vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +121 'emis' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +122 'inflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +123 'iceflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +124 'liqflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +125 'cldfr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +126 'taucld' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +127 'cicewp' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +128 'cliqwp' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +129 'reice' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +130 'reliq' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +131 'tauaer' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +132 'uflx' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +133 'dflx' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +134 'hr' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +135 'uflxc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +136 'dflxc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +137 'hrc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +138 'duflx_dt' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +139 'duflxc_dt' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +148 'nlayers' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +149 'istart' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +150 'iend' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +151 'iout' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +152 'pz' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +153 'semiss' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +154 'ncbands' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +155 'cldfrac' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +156 'taucloud' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +157 'planklay' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +158 'planklev' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +159 'plankbnd' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +160 'pwvcm' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +161 'fracs' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +162 'taut' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +163 'totuflux' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +164 'totdflux' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +165 'fnet' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +166 'htr' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +167 'totuclfl' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +168 'totdclfl' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +169 'fnetc' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +170 'htrc' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +171 'idrv' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +172 'dplankbnd_dt' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +173 'dtotuflux_dt' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +174 'dtotuclfl_dt' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +177 'nlayers' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +178 'istart' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +179 'iend' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +180 'iout' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +181 'pz' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +182 'semiss' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +183 'ncbands' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +184 'cldfrac' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +185 'taucloud' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +186 'planklay' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +187 'planklev' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +188 'plankbnd' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +189 'pwvcm' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +190 'fracs' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +191 'taut' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +192 'totuflux' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +193 'totdflux' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +194 'fnet' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +195 'htr' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +196 'totuclfl' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +197 'totdclfl' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +198 'fnetc' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +199 'htrc' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +200 'idrv' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +201 'dplankbnd_dt' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +202 'dtotuflux_dt' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +203 'dtotuclfl_dt' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +206 'nlayers' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +207 'istart' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +208 'pavel' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +209 'tavel' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +210 'tz' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +211 'tbound' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +212 'semiss' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +213 'coldry' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +214 'wkl' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +215 'wbroad' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +216 'laytrop' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +217 'jp' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +218 'jt' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +219 'jt1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +220 'planklay' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +221 'planklev' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +222 'plankbnd' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +223 'idrv' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +224 'dplankbnd_dt' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +225 'colh2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +226 'colco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +227 'colo3' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +228 'coln2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +229 'colco' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +230 'colch4' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +231 'colo2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +232 'colbrd' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +233 'fac00' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +234 'fac01' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +235 'fac10' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +236 'fac11' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +237 'rat_h2oco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +238 'rat_h2oco2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +239 'rat_h2oo3' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +240 'rat_h2oo3_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +241 'rat_h2on2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +242 'rat_h2on2o_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +243 'rat_h2och4' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +244 'rat_h2och4_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +245 'rat_n2oco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +246 'rat_n2oco2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +247 'rat_o3co2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +248 'rat_o3co2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +249 'selffac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +250 'selffrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +251 'indself' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +252 'forfac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +253 'forfrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +254 'indfor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +255 'minorfrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +256 'scaleminor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +257 'scaleminorn2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +258 'indminor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +261 'nlayers' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +262 'pavel' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +263 'wx' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +264 'coldry' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +265 'laytrop' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +266 'jp' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +267 'jt' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +268 'jt1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +269 'planklay' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +270 'planklev' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +271 'plankbnd' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +272 'colh2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +273 'colco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +274 'colo3' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +275 'coln2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +276 'colco' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +277 'colch4' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +278 'colo2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +279 'colbrd' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +280 'fac00' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +281 'fac01' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +282 'fac10' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +283 'fac11' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +284 'rat_h2oco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +285 'rat_h2oco2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +286 'rat_h2oo3' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +287 'rat_h2oo3_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +288 'rat_h2on2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +289 'rat_h2on2o_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +290 'rat_h2och4' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +291 'rat_h2och4_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +292 'rat_n2oco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +293 'rat_n2oco2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +294 'rat_o3co2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +295 'rat_o3co2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +296 'selffac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +297 'selffrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +298 'indself' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +299 'forfac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +300 'forfrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +301 'indfor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +302 'minorfrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +303 'scaleminor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +304 'scaleminorn2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +305 'indminor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +306 'fracs' '' '' 260 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +307 'taug' '' '' 260 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('cldprop' 0 2 'hnamatm' 0 16 'hnamclc' 0 17 'hnamcld' 0 18 'hnamext' 0 +19 'hnamini' 0 20 'hnamkg' 0 21 'hnamrtc' 0 22 'hnamrtm' 0 23 'hnamrtr' +0 24 'hnamrtx' 0 25 'hnamset' 0 26 'hnamtau' 0 27 'hnamutl' 0 28 'hvratm' +0 29 'hvrclc' 0 30 'hvrcld' 0 31 'hvrext' 0 32 'hvrini' 0 33 'hvrkg' 0 +34 'hvrrtc' 0 35 'hvrrtm' 0 36 'hvrrtr' 0 37 'hvrrtx' 0 38 'hvrset' 0 39 +'hvrtau' 0 40 'hvrutl' 0 41 'im' 0 42 'inatm' 0 43 'parkind' 0 97 'rb' 0 +98 'rrlw_vsn' 0 99 'rrtmg_lw' 0 100 'rrtmg_lw_cldprop' 0 140 +'rrtmg_lw_rad' 0 141 'rrtmg_lw_rtrn' 0 142 'rrtmg_lw_rtrnmr' 0 143 +'rrtmg_lw_setcoef' 0 144 'rrtmg_lw_taumol' 0 145 'rtrn' 0 146 'rtrnmr' 0 +175 'setcoef' 0 204 'taumol' 0 259) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod new file mode 100644 index 00000000..c8134e41 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod @@ -0,0 +1,178 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrn.f90 +MD5:dbef6e972051b1253caa0f11eab0da63 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +7 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +8 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +13 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'rrtmg_lw_rtrn' 'rrtmg_lw_rtrn' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +22 'rtrn' 'rrtmg_lw_rtrn' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) +23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 +46 47 48 49 50) () 0 () () () 0 0) +51 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +52 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +53 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'iend' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +27 'iout' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +28 'pz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +29 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +30 'ncbands' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +31 'cldfrac' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'taucloud' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'planklay' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'planklev' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'plankbnd' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'pwvcm' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +37 'fracs' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'taut' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'totuflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +40 'totdflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +41 'fnet' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +42 'htr' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +43 'totuclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +44 'totdclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +45 'fnetc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +46 'htrc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +47 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +48 'dplankbnd_dt' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +49 'dtotuflux_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +50 'dtotuclfl_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 +'hnamrtr' 0 7 'hvrrtr' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngptlw' 0 +12 'ngs' 0 13 'parkind' 0 14 'parrrtm' 0 15 'rb' 0 16 'rrlw_con' 0 17 +'rrlw_tbl' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 'rrtmg_lw_rtrn' 0 21 +'rtrn' 0 22 'tau_tbl' 0 51 'tblint' 0 52 'tfn_tbl' 0 53) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod new file mode 100644 index 00000000..b73a25b8 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod @@ -0,0 +1,184 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrnmc.f90 +MD5:0e2b9c9c4bfa40f3f4ca0f714f7ffff3 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +7 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +8 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) +13 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +14 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +15 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +18 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +22 'rrtmg_lw_rtrnmc' 'rrtmg_lw_rtrnmc' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +23 'rtrnmc' 'rrtmg_lw_rtrnmc' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 24 0 (25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 +42 43 44 45 46 47 48 49 50 51) () 0 () () () 0 0) +52 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +53 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +54 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +25 'nlayers' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'istart' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +27 'iend' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +28 'iout' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +29 'pz' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +30 'semiss' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +31 'ncbands' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +32 'cldfmc' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'taucmc' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'planklay' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'planklev' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'plankbnd' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +37 'pwvcm' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +38 'fracs' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'taut' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +40 'totuflux' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +41 'totdflux' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +42 'fnet' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +43 'htr' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +44 'totuclfl' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +45 'totdclfl' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +46 'fnetc' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +47 'htrc' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +48 'idrv' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +49 'dplankbnd_dt' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'dtotuflux_dt' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +51 'dtotuclfl_dt' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 +'hnamrtc' 0 7 'hvrrtc' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngb' 0 12 +'ngptlw' 0 13 'ngs' 0 14 'parkind' 0 15 'parrrtm' 0 16 'rb' 0 17 +'rrlw_con' 0 18 'rrlw_tbl' 0 19 'rrlw_vsn' 0 20 'rrlw_wvn' 0 21 +'rrtmg_lw_rtrnmc' 0 22 'rtrnmc' 0 23 'tau_tbl' 0 52 'tblint' 0 53 +'tfn_tbl' 0 54) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod new file mode 100644 index 00000000..c8f25ce2 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod @@ -0,0 +1,178 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrnmr.f90 +MD5:57cd89585cdfb8f38622efb29155142b -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +7 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +8 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +12 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +13 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'rrtmg_lw_rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +22 'rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 +41 42 43 44 45 46 47 48 49 50) () 0 () () () 0 0) +51 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +52 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +53 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'iend' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +27 'iout' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +28 'pz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +29 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +30 'ncbands' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +31 'cldfrac' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'taucloud' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'planklay' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'planklev' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'plankbnd' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'pwvcm' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +37 'fracs' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'taut' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'totuflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +40 'totdflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +41 'fnet' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +42 'htr' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +43 'totuclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +44 'totdclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +45 'fnetc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +46 'htrc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +47 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +48 'dplankbnd_dt' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +49 'dtotuflux_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +50 'dtotuclfl_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 +'hnamrtx' 0 7 'hvrrtx' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngptlw' 0 +12 'ngs' 0 13 'parkind' 0 14 'parrrtm' 0 15 'rb' 0 16 'rrlw_con' 0 17 +'rrlw_tbl' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 'rrtmg_lw_rtrnmr' 0 21 +'rtrnmr' 0 22 'tau_tbl' 0 51 'tblint' 0 52 'tfn_tbl' 0 53) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod new file mode 100644 index 00000000..92bae701 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod @@ -0,0 +1,272 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_setcoef.f90 +MD5:d8dca370ead2dbd980030960e9d462dc -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'chi_mls' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '7') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +3 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +4 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +5 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +6 'lwatmref' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +7 'lwavplank' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +8 'lwavplankderiv' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +9 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +11 'mxmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +12 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'pref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +16 'preflog' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +18 'rrlw_ref' 'rrlw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +21 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +22 'setcoef' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 +41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 +65 66 67 68 69 70 71 72 73 74 75 76) () 0 () () () 0 0) +77 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +78 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) +0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) +79 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +80 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER +()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 +0) +81 'tref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'pavel' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +27 'tavel' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'tz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +29 'tbound' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +30 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +31 'coldry' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'wkl' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'wbroad' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'laytrop' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +35 'jp' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'jt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +37 'jt1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'planklay' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'planklev' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +40 'plankbnd' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +41 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +42 'dplankbnd_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +43 'colh2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +44 'colco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'colo3' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +46 'coln2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +47 'colco' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +48 'colch4' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +49 'colo2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'colbrd' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +51 'fac00' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +52 'fac01' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +53 'fac10' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +54 'fac11' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +55 'rat_h2oco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +56 'rat_h2oco2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'rat_h2oo3' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'rat_h2oo3_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'rat_h2on2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +60 'rat_h2on2o_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'rat_h2och4' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'rat_h2och4_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'rat_n2oco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +64 'rat_n2oco2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'rat_o3co2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +66 'rat_o3co2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'selffac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'selffrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'indself' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'forfac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'forfrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'indfor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +73 'minorfrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +74 'scaleminor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +75 'scaleminorn2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +76 'indminor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('chi_mls' 0 2 'hnamset' 0 3 'hvrset' 0 4 'im' 0 5 'lwatmref' 0 6 +'lwavplank' 0 7 'lwavplankderiv' 0 8 'maxxsec' 0 9 'mg' 0 10 'mxmol' 0 +11 'nbndlw' 0 12 'parkind' 0 13 'parrrtm' 0 14 'pref' 0 15 'preflog' 0 +16 'rb' 0 17 'rrlw_ref' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 +'rrtmg_lw_setcoef' 0 21 'setcoef' 0 22 'totplk16' 0 77 'totplk16deriv' 0 +78 'totplnk' 0 79 'totplnkderiv' 0 80 'tref' 0 81) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod new file mode 100644 index 00000000..a4bb1dc5 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod @@ -0,0 +1,222 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_taumol.f90 +MD5:7ba75eaeac57fd0689ae85b2cc89bf1a -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +3 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +6 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +7 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +8 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) +9 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +10 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +11 'oneminus' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +13 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +15 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +16 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +17 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +18 'rrtmg_lw_taumol' 'rrtmg_lw_taumol' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +19 'taumol' 'rrtmg_lw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 20 0 (21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 +38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 +62 63 64 65 66 67) () 0 () () () 0 0) +21 'nlayers' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +22 'pavel' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'wx' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +24 'coldry' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +25 'laytrop' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'jp' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +27 'jt' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'jt1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +29 'planklay' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +30 'planklev' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +31 'plankbnd' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'colh2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'colco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'colo3' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'coln2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'colco' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +37 'colch4' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'colo2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'colbrd' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +40 'fac00' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +41 'fac01' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +42 'fac10' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +43 'fac11' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +44 'rat_h2oco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'rat_h2oco2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +46 'rat_h2oo3' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +47 'rat_h2oo3_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +48 'rat_h2on2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +49 'rat_h2on2o_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'rat_h2och4' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +51 'rat_h2och4_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +52 'rat_n2oco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +53 'rat_n2oco2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +54 'rat_o3co2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +55 'rat_o3co2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +56 'selffac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'selffrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'indself' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'forfac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +60 'forfrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'indfor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'minorfrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'scaleminor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +64 'scaleminorn2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 +0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'indminor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +66 'fracs' '' '' 20 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'taug' '' '' 20 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('hnamtau' 0 2 'hvrtau' 0 3 'im' 0 4 'maxxsec' 0 5 'mg' 0 6 'nbndlw' 0 7 +'ngptlw' 0 8 'nspa' 0 9 'nspb' 0 10 'oneminus' 0 11 'parkind' 0 12 +'parrrtm' 0 13 'rb' 0 14 'rrlw_con' 0 15 'rrlw_vsn' 0 16 'rrlw_wvn' 0 17 +'rrtmg_lw_taumol' 0 18 'taumol' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod new file mode 100644 index 00000000..e88f7ff3 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod @@ -0,0 +1,382 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/rrtmg_build/rrtmg_lw_wrapper.f90 +MD5:0ceb6e30587153bd1cf2a0c80daf2d38 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 '__iso_c_binding' '__iso_c_binding' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 INTRINSIC) (UNKNOWN 0 0 0 0 UNKNOWN ()) +0 0 () () 0 () () () 2 0) +3 'c_double' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 +REAL ()) 0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '8') () 0 () () +() 2 25) +4 'c_int' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 INTEGER ()) +0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '4') () 0 () () () 2 0) +5 'c_rrtmg_lw' 'rrtmg_lw_wrapper' 'c_rrtmg_lw' 1 ((PROCEDURE +UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT +IS_BIND_C IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 6 0 (7 8 9 10 11 12 +13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 +37 38 39 40 41 42 43 44) () 0 () () () 0 0) +45 'c_rrtmg_lw_init' 'rrtmg_lw_wrapper' 'c_rrtmg_lw_init' 1 ((PROCEDURE +UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C +IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 46 0 (47) () 0 () () () 0 0) +48 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +49 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +50 'rrtmg_lw' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) +51 0 (52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 +74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89) () 0 () () () 0 0) +90 'rrtmg_lw_ini' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 91 +0 (92) () 0 () () () 0 0) +93 'rrtmg_lw_init' 'rrtmg_lw_init' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +94 'rrtmg_lw_rad' 'rrtmg_lw_rad' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +95 'rrtmg_lw_wrapper' 'rrtmg_lw_wrapper' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +7 'ncol' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +8 'nlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +9 'icld' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +10 'idrv' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +11 'play' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +12 'plev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +13 'tlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +14 'tlev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +15 'tsfc' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +16 'h2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +17 'o3vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +18 'co2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +19 'ch4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +20 'n2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +21 'o2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +22 'cfc11vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +23 'cfc12vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +24 'cfc22vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +25 'ccl4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +26 'emis' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +27 'inflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +28 'iceflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +29 'liqflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +30 'cldfr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +31 'taucld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +32 'cicewp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +33 'cliqwp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +34 'reice' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +35 'reliq' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +36 'tauaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) +37 'uflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +38 'dflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +39 'hr' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +40 'uflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +41 'dflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +42 'hrc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +43 'duflx_dt' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION OPTIONAL DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 +INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP ( +INTEGER 4 0 1 0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +44 'duflxc_dt' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION OPTIONAL DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 +INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP ( +INTEGER 4 0 1 0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +47 'cpdair' '' '' 46 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) +52 'ncol' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +53 'nlay' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +54 'icld' '' '' 51 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +55 'idrv' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +56 'play' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'plev' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'tlay' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'tlev' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +60 'tsfc' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'h2ovmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'o3vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'co2vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +64 'ch4vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'n2ovmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +66 'o2vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'cfc11vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'cfc12vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'cfc22vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'ccl4vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'emis' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'inflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +73 'iceflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +74 'liqflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +75 'cldfr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +76 'taucld' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +77 'cicewp' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +78 'cliqwp' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +79 'reice' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +80 'reliq' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +81 'tauaer' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +82 'uflx' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +83 'dflx' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +84 'hr' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +85 'uflxc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +86 'dflxc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +87 'hrc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +88 'duflx_dt' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +89 'duflxc_dt' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'cpdair' '' '' 91 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +) + +('__iso_c_binding' 0 2 'c_double' 0 3 'c_int' 0 4 'c_rrtmg_lw' 0 5 +'c_rrtmg_lw_init' 0 45 'nbndlw' 0 48 'parrrtm' 0 49 'rrtmg_lw' 0 50 +'rrtmg_lw_ini' 0 90 'rrtmg_lw_init' 0 93 'rrtmg_lw_rad' 0 94 +'rrtmg_lw_wrapper' 0 95) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod new file mode 100644 index 00000000..f5943697 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod @@ -0,0 +1,201 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_cldprmc.f90 +MD5:706e3194881373b1710615b5cc293dbd -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +8 'cldprmc_sw' 'rrtmg_sw_cldprmc' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 9 0 (10 11 12 13 14 15 16 17 18 19 20 21 22 23) () 0 () () +() 0 0) +24 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +25 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +26 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +27 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +28 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +29 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +30 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +31 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +32 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +33 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +34 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +35 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +36 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +37 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) +38 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +39 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +40 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +41 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +42 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +43 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +44 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +45 'rrtmg_sw_cldprmc' 'rrtmg_sw_cldprmc' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +46 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +47 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +48 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +49 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +50 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +10 'nlayers' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +11 'inflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +12 'iceflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'liqflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +14 'cldfmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +15 'ciwpmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'clwpmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'reicmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'relqmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'taormc' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'taucmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'ssacmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +22 'asmcmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'fsfcmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' +0 7 'cldprmc_sw' 0 8 'dbari' 0 24 'ebari' 0 25 'extice2' 0 26 'extice3' +0 27 'extliq1' 0 28 'fbari' 0 29 'fdlice3' 0 30 'hnamclc' 0 31 'hvrclc' +0 32 'im' 0 33 'jpb1' 0 34 'jpb2' 0 35 'jpband' 0 36 'ngb' 0 37 'ngptsw' +0 38 'parkind' 0 39 'parrrsw' 0 40 'rb' 0 41 'rrsw_cld' 0 42 'rrsw_vsn' +0 43 'rrsw_wvn' 0 44 'rrtmg_sw_cldprmc' 0 45 'ssaice2' 0 46 'ssaice3' 0 +47 'ssaliq1' 0 48 'wavenum1' 0 49 'wavenum2' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod new file mode 100644 index 00000000..a2474976 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod @@ -0,0 +1,206 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_cldprop.f90 +MD5:4fa1f2cb664658fb9150bd6cb2b23a15 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '5')) 0 () () () 0 0) +8 'cldprop_sw' 'rrtmg_sw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 9 0 (10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26) () +0 () () () 0 0) +27 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +28 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +29 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +30 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +31 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +32 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) +33 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +34 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +35 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +36 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +37 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +38 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +39 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +40 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +41 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +42 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +43 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +44 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +45 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +46 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +47 'rrtmg_sw_cldprop' 'rrtmg_sw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +48 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +49 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +50 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +51 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +52 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +10 'nlayers' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +11 'inflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +12 'iceflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'liqflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +14 'cldfrac' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +15 'tauc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'ssac' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'asmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'fsfc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'ciwp' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'clwp' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'rei' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +22 'rel' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'taucldorig' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +24 'taucloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +25 'ssacloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +26 'asmcloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' +0 7 'cldprop_sw' 0 8 'dbari' 0 27 'ebari' 0 28 'extice2' 0 29 'extice3' +0 30 'extliq1' 0 31 'fbari' 0 32 'fdlice3' 0 33 'hnamcld' 0 34 'hvrcld' +0 35 'im' 0 36 'jpb1' 0 37 'jpb2' 0 38 'jpband' 0 39 'nbndsw' 0 40 +'parkind' 0 41 'parrrsw' 0 42 'rb' 0 43 'rrsw_cld' 0 44 'rrsw_vsn' 0 45 +'rrsw_wvn' 0 46 'rrtmg_sw_cldprop' 0 47 'ssaice2' 0 48 'ssaice3' 0 49 +'ssaliq1' 0 50 'wavenum1' 0 51 'wavenum2' 0 52) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod new file mode 100644 index 00000000..2f8d7e70 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod @@ -0,0 +1,177 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_init.f90 +MD5:e261a7ab4bdc020cca33b7420063214b -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'cmbgb16s' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +3 'cmbgb17' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +4 'cmbgb18' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +5 'cmbgb19' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +6 'cmbgb20' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +7 'cmbgb21' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +8 'cmbgb22' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +9 'cmbgb23' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +10 'cmbgb24' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +11 'cmbgb25' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +12 'cmbgb26' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +13 'cmbgb27' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +14 'cmbgb28' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +15 'cmbgb29' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +16 'delwave' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +17 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +18 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +19 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +20 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) +21 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +22 'ng' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +23 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) +24 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +25 'ngm' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '224')) 0 () () () 0 0) +26 'ngn' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) +27 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +28 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +29 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +30 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +31 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +32 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +33 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +34 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +35 'rrtmg_sw_ini' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 36 +0 (37) () 0 () () () 0 0) +38 'rrtmg_sw_init' 'rrtmg_sw_init' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +39 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +40 'rwgt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '224')) 0 () () () 0 0) +41 'swaerpr' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +42 'swatmref' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +43 'swcldpr' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () +() () 0 0) +44 'swcmbdat' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +45 'swdatinit' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 46 +0 (47) () 0 () () () 0 0) +48 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +49 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +50 'wt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '16')) 0 () () () 0 0) +37 'cpdair' '' '' 36 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +47 'cpdair' '' '' 46 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +) + +('cmbgb16s' 0 2 'cmbgb17' 0 3 'cmbgb18' 0 4 'cmbgb19' 0 5 'cmbgb20' 0 6 +'cmbgb21' 0 7 'cmbgb22' 0 8 'cmbgb23' 0 9 'cmbgb24' 0 10 'cmbgb25' 0 11 +'cmbgb26' 0 12 'cmbgb27' 0 13 'cmbgb28' 0 14 'cmbgb29' 0 15 'delwave' 0 +16 'im' 0 17 'jpb1' 0 18 'jpb2' 0 19 'mg' 0 20 'nbndsw' 0 21 'ng' 0 22 +'ngb' 0 23 'ngc' 0 24 'ngm' 0 25 'ngn' 0 26 'ngptsw' 0 27 'ngs' 0 28 +'nspa' 0 29 'nspb' 0 30 'parkind' 0 31 'parrrsw' 0 32 'rb' 0 33 'rrsw_wvn' +0 34 'rrtmg_sw_ini' 0 35 'rrtmg_sw_init' 0 38 'rrtmg_sw_setcoef' 0 39 +'rwgt' 0 40 'swaerpr' 0 41 'swatmref' 0 42 'swcldpr' 0 43 'swcmbdat' 0 +44 'swdatinit' 0 45 'wavenum1' 0 48 'wavenum2' 0 49 'wt' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod new file mode 100644 index 00000000..2ba67e3f --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod @@ -0,0 +1,862 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_rad.nomcica.f90 +MD5:dd2c76a56c3fd51666c99721ab385a3d -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'cldprop_sw' 'rrtmg_sw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 3 0 (4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20) () 0 () +() () 0 0) +21 'earth_sun' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 FUNCTION IMPLICIT_PURE) (REAL 8 0 0 0 REAL +()) 22 0 (23) () 21 () () () 0 0) +24 'hnamatm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +25 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +26 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +27 'hnamext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +28 'hnamini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +29 'hnamkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +30 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +31 'hnamrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +32 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +33 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +34 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +35 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +36 'hnamutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +37 'hnamvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +38 'hvratm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +39 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +40 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +41 'hvrext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +42 'hvrini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +43 'hvrkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +44 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +45 'hvrrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +46 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +47 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +48 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +49 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +50 'hvrutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +51 'hvrvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +52 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +53 'inatm_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) +54 0 (55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 +77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 +101 102 103 104 105 106 107 108 109 110 111 112 113) () 0 () () () 0 0) +114 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +115 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +116 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +117 'rrtmg_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 118 0 (119 120 121 122 123 124 125 126 127 128 129 130 131 +132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 +150 151 152 153 154 155 156 157 158 159 160 161 162 163) () 0 () () () 0 +0) +164 'rrtmg_sw_cldprop' 'rrtmg_sw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +165 'rrtmg_sw_rad' 'rrtmg_sw_rad' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +166 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +167 'rrtmg_sw_spcvrt' 'rrtmg_sw_spcvrt' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +168 'setcoef_sw' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( +UNKNOWN 0 0 0 0 UNKNOWN ()) 169 0 (170 171 172 173 174 175 176 177 178 +179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 +197 198 199 200 201) () 0 () () () 0 0) +202 'spcvrt_sw' 'rrtmg_sw_spcvrt' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 203 0 (204 205 206 207 208 209 210 211 212 213 214 215 216 +217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 +235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 +253 254 255 256 257 258 259 260 261 262 263 264 265 266) () 0 () () () 0 +0) +4 'nlayers' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +5 'inflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +6 'iceflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +7 'liqflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +8 'cldfrac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +9 'tauc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +10 'ssac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +11 'asmc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +12 'fsfc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +13 'ciwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +14 'clwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +15 'rei' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'rel' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'taucldorig' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'taucloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'ssacloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'asmcloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'idn' '' '' 22 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +55 'iplon' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +56 'nlay' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +57 'icld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +58 'iaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +59 'play' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +60 'plev' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'tlay' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'tlev' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'tsfc' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +64 'h2ovmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'o3vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +66 'co2vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'ch4vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'n2ovmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'o2vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'adjes' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +71 'dyofyr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +72 'scon' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +73 'inflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +74 'iceflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +75 'liqflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +76 'cldfr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +77 'taucld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +78 'ssacld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +79 'asmcld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +80 'fsfcld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +81 'cicewp' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +82 'cliqwp' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +83 'reice' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +84 'reliq' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +85 'tauaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +86 'ssaaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +87 'asmaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +88 'nlayers' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +89 'pavel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +90 'pz' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +91 'pdp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'tavel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +93 'tz' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +94 'tbound' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +95 'coldry' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +96 'wkl' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +97 'adjflux' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +98 'solvar' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +99 'inflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +100 'iceflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +101 'liqflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +102 'cldfrac' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +103 'tauc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +104 'ssac' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +105 'asmc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +106 'fsfc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +107 'ciwp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +108 'clwp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +109 'rei' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +110 'rel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +111 'taua' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +112 'ssaa' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +113 'asma' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +119 'ncol' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +120 'nlay' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +121 'icld' '' '' 118 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +122 'iaer' '' '' 118 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +123 'play' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +124 'plev' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +125 'tlay' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +126 'tlev' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +127 'tsfc' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +128 'h2ovmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +129 'o3vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +130 'co2vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +131 'ch4vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +132 'n2ovmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +133 'o2vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +134 'asdir' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +135 'asdif' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +136 'aldir' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +137 'aldif' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +138 'coszen' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +139 'adjes' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +140 'dyofyr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +141 'scon' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +142 'inflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +143 'iceflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +144 'liqflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +145 'cldfr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +146 'taucld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +147 'ssacld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +148 'asmcld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +149 'fsfcld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +150 'cicewp' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +151 'cliqwp' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +152 'reice' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +153 'reliq' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +154 'tauaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +155 'ssaaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +156 'asmaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +157 'ecaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +158 'swuflx' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +159 'swdflx' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +160 'swhr' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +161 'swuflxc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +162 'swdflxc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +163 'swhrc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +170 'nlayers' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +171 'pavel' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +172 'tavel' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +173 'pz' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +174 'tz' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +175 'tbound' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +176 'coldry' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +177 'wkl' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +178 'laytrop' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +179 'layswtch' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +180 'laylow' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +181 'jp' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +182 'jt' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +183 'jt1' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +184 'co2mult' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +185 'colch4' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +186 'colco2' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +187 'colh2o' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +188 'colmol' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +189 'coln2o' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +190 'colo2' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +191 'colo3' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +192 'fac00' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +193 'fac01' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +194 'fac10' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +195 'fac11' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +196 'selffac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +197 'selffrac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +198 'indself' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +199 'forfac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +200 'forfrac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +201 'indfor' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +204 'nlayers' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +205 'istart' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +206 'iend' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +207 'icpr' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +208 'idelm' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +209 'iout' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +210 'pavel' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +211 'tavel' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +212 'pz' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +213 'tz' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +214 'tbound' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +215 'palbd' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +216 'palbp' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +217 'pclfr' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +218 'ptauc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +219 'pasyc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +220 'pomgc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +221 'ptaucorig' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +222 'ptaua' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +223 'pasya' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +224 'pomga' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +225 'prmu0' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +226 'coldry' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +227 'wkl' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +228 'adjflux' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +229 'laytrop' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +230 'layswtch' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +231 'laylow' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +232 'jp' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +233 'jt' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +234 'jt1' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +235 'co2mult' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +236 'colch4' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +237 'colco2' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +238 'colh2o' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +239 'colmol' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +240 'coln2o' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +241 'colo2' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +242 'colo3' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +243 'fac00' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +244 'fac01' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +245 'fac10' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +246 'fac11' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +247 'selffac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +248 'selffrac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +249 'indself' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +250 'forfac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +251 'forfrac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +252 'indfor' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +253 'pbbfd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +254 'pbbfu' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +255 'pbbcd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +256 'pbbcu' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +257 'puvfd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +258 'puvcd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +259 'pnifd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +260 'pnicd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +261 'pbbfddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +262 'pbbcddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +263 'puvfddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +264 'puvcddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +265 'pnifddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +266 'pnicddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('cldprop_sw' 0 2 'earth_sun' 0 21 'hnamatm' 0 24 'hnamclc' 0 25 'hnamcld' +0 26 'hnamext' 0 27 'hnamini' 0 28 'hnamkg' 0 29 'hnamrft' 0 30 'hnamrtm' +0 31 'hnamset' 0 32 'hnamspc' 0 33 'hnamspv' 0 34 'hnamtau' 0 35 'hnamutl' +0 36 'hnamvqd' 0 37 'hvratm' 0 38 'hvrclc' 0 39 'hvrcld' 0 40 'hvrext' 0 +41 'hvrini' 0 42 'hvrkg' 0 43 'hvrrft' 0 44 'hvrrtm' 0 45 'hvrset' 0 46 +'hvrspc' 0 47 'hvrspv' 0 48 'hvrtau' 0 49 'hvrutl' 0 50 'hvrvqd' 0 51 'im' +0 52 'inatm_sw' 0 53 'parkind' 0 114 'rb' 0 115 'rrsw_vsn' 0 116 +'rrtmg_sw' 0 117 'rrtmg_sw_cldprop' 0 164 'rrtmg_sw_rad' 0 165 +'rrtmg_sw_setcoef' 0 166 'rrtmg_sw_spcvrt' 0 167 'setcoef_sw' 0 168 +'spcvrt_sw' 0 202) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod new file mode 100644 index 00000000..6f467cfb --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod @@ -0,0 +1,88 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_reftra.f90 +MD5:89964f8ed0272f81caf4b90a5874bc99 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +4 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +5 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +7 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) +8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +10 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 11 0 (12 13 14 15 16 17 18 19 20 21) () 0 () () () 0 0) +22 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +23 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +24 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +25 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +12 'nlayers' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +13 'lrtchk' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +14 'pgg' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +15 'prmuz' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +16 'ptau' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'pw' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'pref' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'prefd' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'ptra' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'ptrad' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'exp_tbl' 0 3 'hnamrft' 0 4 'hvrrft' 0 5 'im' 0 6 'od_lo' 0 +7 'parkind' 0 8 'rb' 0 9 'reftra_sw' 0 10 'rrsw_tbl' 0 22 'rrsw_vsn' 0 +23 'rrtmg_sw_reftra' 0 24 'tblint' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod new file mode 100644 index 00000000..a1eea93d --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod @@ -0,0 +1,161 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_setcoef.f90 +MD5:94054e97c82756c1201f8fc4908e81b7 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +3 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +6 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +7 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +8 'pref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +9 'preflog' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) +10 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +11 'rrsw_ref' 'rrsw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +12 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +13 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +14 'setcoef_sw' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( +UNKNOWN 0 0 0 0 UNKNOWN ()) 15 0 (16 17 18 19 20 21 22 23 24 25 26 27 28 +29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47) () 0 () () () +0 0) +48 'swatmref' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 +0 () () 0 () () () 0 0) +49 'tref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 +INTEGER ()) 0 '59')) 0 () () () 0 0) +16 'nlayers' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +17 'pavel' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'tavel' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'pz' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +20 'tz' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +21 'tbound' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +22 'coldry' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'wkl' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +24 'laytrop' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +25 'layswtch' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +26 'laylow' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +27 'jp' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'jt' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +29 'jt1' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +30 'co2mult' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +31 'colch4' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'colco2' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'colh2o' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'colmol' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'coln2o' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'colo2' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +37 'colo3' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'fac00' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'fac01' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +40 'fac10' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +41 'fac11' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +42 'selffac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +43 'selffrac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +44 'indself' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'forfac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +46 'forfrac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +47 'indfor' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('hnamset' 0 2 'hvrset' 0 3 'im' 0 4 'mxmol' 0 5 'parkind' 0 6 'parrrsw' +0 7 'pref' 0 8 'preflog' 0 9 'rb' 0 10 'rrsw_ref' 0 11 'rrsw_vsn' 0 12 +'rrtmg_sw_setcoef' 0 13 'setcoef_sw' 0 14 'swatmref' 0 48 'tref' 0 49) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod new file mode 100644 index 00000000..327bd9bb --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod @@ -0,0 +1,437 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_spcvmc.f90 +MD5:96dd8a17cdd4b86e4ea25015ac96e8a7 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +4 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +5 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +7 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +8 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +9 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +11 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +12 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +13 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) +14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 18 0 (19 20 21 22 23 24 25 26 27 28) () 0 () () () 0 0) +29 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +31 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +32 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +33 'rrtmg_sw_spcvmc' 'rrtmg_sw_spcvmc' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +34 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +35 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +36 'spcvmc_sw' 'rrtmg_sw_spcvmc' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 37 0 (38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 +55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 +79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100) () 0 +() () () 0 0) +101 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 102 0 (103 104 105 106 107 108 109 110 111 112 113 114 115 +116 117 118 119 120 121 122 123 124 125 126) () 0 () () () 0 0) +127 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +128 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( +UNKNOWN 0 0 0 0 UNKNOWN ()) 129 0 (130 131 132 133 134 135 136 137 138 +139 140 141 142) () 0 () () () 0 0) +19 'nlayers' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +20 'lrtchk' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'pgg' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +22 'prmuz' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +23 'ptau' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +24 'pw' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +25 'pref' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +26 'prefd' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +27 'ptra' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'ptrad' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'nlayers' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +39 'istart' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +40 'iend' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +41 'icpr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +42 'idelm' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +43 'iout' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +44 'pavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'tavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +46 'pz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +47 'tz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +48 'tbound' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +49 'palbd' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'palbp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +51 'pcldfmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +52 'ptaucmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +53 'pasycmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +54 'pomgcmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +55 'ptaormc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +56 'ptaua' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'pasya' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'pomga' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'prmu0' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +60 'coldry' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'wkl' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'adjflux' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'laytrop' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +64 'layswtch' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +65 'laylow' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +66 'jp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'jt' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'jt1' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'co2mult' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'colch4' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'colco2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'colh2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +73 'colmol' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +74 'coln2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +75 'colo2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +76 'colo3' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +77 'fac00' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +78 'fac01' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +79 'fac10' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +80 'fac11' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +81 'selffac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +82 'selffrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +83 'indself' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +84 'forfac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +85 'forfrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +86 'indfor' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +87 'pbbfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +88 'pbbfu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +89 'pbbcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +90 'pbbcu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +91 'puvfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'puvcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +93 'pnifd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +94 'pnicd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +95 'pbbfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +96 'pbbcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +97 'puvfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +98 'puvcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +99 'pnifddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +100 'pnicddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +103 'nlayers' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +104 'colh2o' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +105 'colco2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +106 'colch4' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +107 'colo2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +108 'colo3' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +109 'colmol' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +110 'laytrop' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +111 'jp' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +112 'jt' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +113 'jt1' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +114 'fac00' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +115 'fac01' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +116 'fac10' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +117 'fac11' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +118 'selffac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +119 'selffrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +120 'indself' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +121 'forfac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +122 'forfrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +123 'indfor' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +124 'sfluxzen' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +125 'taug' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +126 'taur' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +130 'klev' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +131 'kw' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +132 'pref' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +133 'prefd' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +134 'ptra' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +135 'ptrad' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +136 'pdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +137 'prdnd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +138 'prup' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +139 'prupd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +140 'ptdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +141 'pfd' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +142 'pfu' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'exp_tbl' 0 3 'hnamspc' 0 4 'hvrspc' 0 5 'im' 0 6 'jpband' +0 7 'mxmol' 0 8 'nbndsw' 0 9 'ngc' 0 10 'ngptsw' 0 11 'ngs' 0 12 'od_lo' +0 13 'parkind' 0 14 'parrrsw' 0 15 'rb' 0 16 'reftra_sw' 0 17 'rrsw_tbl' +0 29 'rrsw_vsn' 0 30 'rrsw_wvn' 0 31 'rrtmg_sw_reftra' 0 32 +'rrtmg_sw_spcvmc' 0 33 'rrtmg_sw_taumol' 0 34 'rrtmg_sw_vrtqdr' 0 35 +'spcvmc_sw' 0 36 'taumol_sw' 0 101 'tblint' 0 127 'vrtqdr_sw' 0 128) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod new file mode 100644 index 00000000..786afd37 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod @@ -0,0 +1,436 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_spcvrt.f90 +MD5:1bf065a8fd5fe6cc084343f2a6e70ffd -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) +4 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +5 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +7 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) +8 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) +9 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +11 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) +12 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +13 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) +14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +15 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +17 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 18 0 (19 20 21 22 23 24 25 26 27 28) () 0 () () () 0 0) +29 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +31 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +32 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +33 'rrtmg_sw_spcvrt' 'rrtmg_sw_spcvrt' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +34 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +35 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +36 'spcvrt_sw' 'rrtmg_sw_spcvrt' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 37 0 (38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 +55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 +79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100) () 0 +() () () 0 0) +101 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 102 0 (103 104 105 106 107 108 109 110 111 112 113 114 115 +116 117 118 119 120 121 122 123 124 125 126) () 0 () () () 0 0) +127 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( +REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) +128 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( +UNKNOWN 0 0 0 0 UNKNOWN ()) 129 0 (130 131 132 133 134 135 136 137 138 +139 140 141 142) () 0 () () () 0 0) +19 'nlayers' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +20 'lrtchk' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'pgg' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +22 'prmuz' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +23 'ptau' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +24 'pw' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +25 'pref' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +26 'prefd' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +27 'ptra' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'ptrad' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'nlayers' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +39 'istart' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +40 'iend' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +41 'icpr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +42 'idelm' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +43 'iout' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +44 'pavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +45 'tavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +46 'pz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +47 'tz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) +48 'tbound' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +49 'palbd' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +50 'palbp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +51 'pclfr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +52 'ptauc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +53 'pasyc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +54 'pomgc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +55 'ptaucorig' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +56 'ptaua' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +57 'pasya' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +58 'pomga' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +59 'prmu0' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +60 'coldry' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +61 'wkl' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +62 'adjflux' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +63 'laytrop' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +64 'layswtch' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +65 'laylow' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +66 'jp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'jt' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'jt1' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'co2mult' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'colch4' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'colco2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'colh2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +73 'colmol' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +74 'coln2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +75 'colo2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +76 'colo3' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +77 'fac00' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +78 'fac01' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +79 'fac10' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +80 'fac11' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +81 'selffac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +82 'selffrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +83 'indself' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +84 'forfac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +85 'forfrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +86 'indfor' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +87 'pbbfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +88 'pbbfu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +89 'pbbcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +90 'pbbcu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +91 'puvfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'puvcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +93 'pnifd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +94 'pnicd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +95 'pbbfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +96 'pbbcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +97 'puvfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +98 'puvcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +99 'pnifddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +100 'pnicddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +103 'nlayers' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +104 'colh2o' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +105 'colco2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +106 'colch4' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +107 'colo2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +108 'colo3' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +109 'colmol' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +110 'laytrop' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +111 'jp' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +112 'jt' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +113 'jt1' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +114 'fac00' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +115 'fac01' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +116 'fac10' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +117 'fac11' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +118 'selffac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +119 'selffrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +120 'indself' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +121 'forfac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +122 'forfrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +123 'indfor' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +124 'sfluxzen' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +125 'taug' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +126 'taur' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +130 'klev' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +131 'kw' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +132 'pref' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +133 'prefd' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +134 'ptra' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +135 'ptrad' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +136 'pdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +137 'prdnd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +138 'prup' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +139 'prupd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +140 'ptdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +141 'pfd' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +142 'pfu' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('bpade' 0 2 'exp_tbl' 0 3 'hnamspv' 0 4 'hvrspv' 0 5 'im' 0 6 'jpband' +0 7 'mxmol' 0 8 'nbndsw' 0 9 'ngc' 0 10 'ngptsw' 0 11 'ngs' 0 12 'od_lo' +0 13 'parkind' 0 14 'parrrsw' 0 15 'rb' 0 16 'reftra_sw' 0 17 'rrsw_tbl' +0 29 'rrsw_vsn' 0 30 'rrsw_wvn' 0 31 'rrtmg_sw_reftra' 0 32 +'rrtmg_sw_spcvrt' 0 33 'rrtmg_sw_taumol' 0 34 'rrtmg_sw_vrtqdr' 0 35 +'spcvrt_sw' 0 36 'taumol_sw' 0 101 'tblint' 0 127 'vrtqdr_sw' 0 128) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod new file mode 100644 index 00000000..52f5c798 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod @@ -0,0 +1,134 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_taumol.f90 +MD5:1d1cf32257ad0b87cf9f87939999be72 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) +3 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) +4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +5 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +6 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 +EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) +7 'oneminus' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 +0) +8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +10 'rrsw_con' 'rrsw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +11 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +12 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 +0) +13 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +14 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 +0 UNKNOWN ()) 15 0 (16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 +33 34 35 36 37 38 39) () 0 () () () 0 0) +16 'nlayers' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +17 'colh2o' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'colco2' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'colch4' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'colo2' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +21 'colo3' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +22 'colmol' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +23 'laytrop' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +24 'jp' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +25 'jt' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +26 'jt1' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +27 'fac00' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +28 'fac01' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +29 'fac10' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +30 'fac11' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +31 'selffac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +32 'selffrac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +33 'indself' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +34 'forfac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +35 'forfrac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +36 'indfor' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE +(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +37 'sfluxzen' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +38 'taug' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +39 'taur' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('hnamtau' 0 2 'hvrtau' 0 3 'im' 0 4 'nspa' 0 5 'nspb' 0 6 'oneminus' 0 +7 'parkind' 0 8 'rb' 0 9 'rrsw_con' 0 10 'rrsw_vsn' 0 11 'rrsw_wvn' 0 12 +'rrtmg_sw_taumol' 0 13 'taumol_sw' 0 14) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod new file mode 100644 index 00000000..018ece05 --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod @@ -0,0 +1,73 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_vrtqdr.f90 +MD5:7ab83aadad9ef5a989a9f83e37cfa9bf -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) +3 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +4 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) +5 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +6 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( +UNKNOWN 0 0 0 0 UNKNOWN ()) 7 0 (8 9 10 11 12 13 14 15 16 17 18 19 20) () +0 () () () 0 0) +8 'klev' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +9 'kw' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +10 'pref' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +11 'prefd' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +12 'ptra' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +13 'ptrad' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +14 'pdbt' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +15 'prdnd' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +16 'prup' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +17 'prupd' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +18 'ptdbt' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +19 'pfd' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +20 'pfu' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +) + +('im' 0 2 'parkind' 0 3 'rb' 0 4 'rrtmg_sw_vrtqdr' 0 5 'vrtqdr_sw' 0 6) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod new file mode 100644 index 00000000..3f8b430e --- /dev/null +++ b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod @@ -0,0 +1,434 @@ +GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/rrtmg_build/rrtmg_sw_wrapper.f90 +MD5:31853933bd25df23a092dcad238618d7 -- If you edit this, you'll get what you deserve. + +(() () () () () () () () () () () () () () () () () () () () () () () +() () () ()) + +() + +() + +() + +() + +() + +(2 '__iso_c_binding' '__iso_c_binding' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 INTRINSIC) (UNKNOWN 0 0 0 0 UNKNOWN ()) +0 0 () () 0 () () () 2 0) +3 'c_double' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 +REAL ()) 0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '8') () 0 () () +() 2 25) +4 'c_int' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 INTEGER ()) +0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '4') () 0 () () () 2 0) +5 'c_rrtmg_sw' 'rrtmg_sw_wrapper' 'c_rrtmg_sw' 1 ((PROCEDURE +UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C +IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 6 0 (7 8 9 10 11 12 13 14 15 +16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 +40 41 42 43 44 45 46 47 48 49 50 51) () 0 () () () 0 0) +52 'c_rrtmg_sw_init' 'rrtmg_sw_wrapper' 'c_rrtmg_sw_init' 1 ((PROCEDURE +UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C +IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 53 0 (54) () 0 () () () 0 0) +55 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) +56 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC +UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) +57 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN +UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) +58 'rrtmg_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC +DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) +59 0 (60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 +82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 +104) () 0 () () () 0 0) +105 'rrtmg_sw_ini' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT +MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) +106 0 (107) () 0 () () () 0 0) +108 'rrtmg_sw_init' 'rrtmg_sw_init' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +109 'rrtmg_sw_rad' 'rrtmg_sw_rad' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +110 'rrtmg_sw_wrapper' 'rrtmg_sw_wrapper' '' 1 ((MODULE UNKNOWN-INTENT +UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () +0 () () () 0 0) +7 'ncol' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +8 'nlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( +INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +9 'icld' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +10 'iaer' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +11 'play' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +12 'plev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +13 'tlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +14 'tlev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +15 'tsfc' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +16 'h2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +17 'o3vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +18 'co2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +19 'ch4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +20 'n2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +21 'o2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +22 'asdir' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +23 'asdif' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +24 'aldir' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +25 'aldif' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +26 'coszen' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ())) 0 () () () 0 0) +27 'adjes' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) +28 'dyofyr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +29 'scon' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) +30 'inflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +31 'iceflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +32 'liqflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +33 'cldfr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +34 'taucld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +35 'ssacld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +36 'asmcld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +37 'fsfcld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +38 'cicewp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +39 'cliqwp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +40 'reice' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +41 'reliq' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +42 'tauaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +43 'ssaaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +44 'asmaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) +45 'ecaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) +0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) +46 'swuflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +47 'swdflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +48 'swhr' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +49 'swuflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +50 'swdflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 +0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) +51 'swhrc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( +INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) +0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( +INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) +54 'cpdair' '' '' 53 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) +60 'ncol' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +61 'nlay' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +62 'icld' '' '' 59 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +63 'iaer' '' '' 59 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +64 'play' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +65 'plev' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +66 'tlay' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +67 'tlev' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +68 'tsfc' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +69 'h2ovmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +70 'o3vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +71 'co2vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +72 'ch4vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +73 'n2ovmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +74 'o2vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +75 'asdir' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +76 'asdif' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +77 'aldir' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +78 'aldif' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +79 'coszen' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +80 'adjes' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +81 'dyofyr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +82 'scon' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) +(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +83 'inflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +84 'iceflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +85 'liqflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +86 'cldfr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +87 'taucld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +88 'ssacld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +89 'asmcld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +90 'fsfcld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +91 'cicewp' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +92 'cliqwp' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +93 'reice' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +94 'reliq' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +95 'tauaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +96 'ssaaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +97 'asmaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +98 'ecaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) +0 () () () 0 0) +99 'swuflx' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +100 'swdflx' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +101 'swhr' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +102 'swuflxc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +103 'swdflxc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +104 'swhrc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( +CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 +0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) +107 'cpdair' '' '' 106 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 +DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +) + +('__iso_c_binding' 0 2 'c_double' 0 3 'c_int' 0 4 'c_rrtmg_sw' 0 5 +'c_rrtmg_sw_init' 0 52 'naerec' 0 55 'nbndsw' 0 56 'parrrsw' 0 57 +'rrtmg_sw' 0 58 'rrtmg_sw_ini' 0 105 'rrtmg_sw_init' 0 108 'rrtmg_sw_rad' +0 109 'rrtmg_sw_wrapper' 0 110) From 60346c694425b88dac75bf04a0c18ec7a8b6d68c Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 14:19:45 +0200 Subject: [PATCH 197/511] rm RRTMG from git --- RRTMG/rrtmg_build/obj_rrtmg/parkind.mod | 50 - RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod | 172 ---- RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod | 150 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod | 58 -- RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod | 72 -- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod | 145 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod | 128 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod | 163 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod | 134 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod | 157 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod | 117 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod | 154 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod | 193 ---- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod | 154 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod | 124 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod | 145 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod | 95 -- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod | 143 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod | 124 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod | 110 -- RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod | 128 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod | 117 --- RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod | 48 - RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod | 55 - RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod | 105 -- RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod | 128 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod | 54 - RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod | 107 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod | 75 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod | 123 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod | 129 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod | 125 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod | 125 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod | 129 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod | 129 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod | 125 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod | 101 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod | 157 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod | 97 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod | 55 - RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod | 105 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod | 107 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod | 138 --- RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod | 235 ----- RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod | 43 - RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod | 53 - RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod | 111 -- RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod | 102 -- .../obj_rrtmg/rrtmg_lw_cldprmc.mod | 126 --- .../obj_rrtmg/rrtmg_lw_cldprop.mod | 117 --- RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod | 213 ---- RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod | 971 ------------------ RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod | 178 ---- .../rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod | 184 ---- .../rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod | 178 ---- .../obj_rrtmg/rrtmg_lw_setcoef.mod | 272 ----- .../rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod | 222 ---- .../obj_rrtmg/rrtmg_lw_wrapper.mod | 382 ------- .../obj_rrtmg/rrtmg_sw_cldprmc.mod | 201 ---- .../obj_rrtmg/rrtmg_sw_cldprop.mod | 206 ---- RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod | 177 ---- RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod | 862 ---------------- .../rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod | 88 -- .../obj_rrtmg/rrtmg_sw_setcoef.mod | 161 --- .../rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod | 437 -------- .../rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod | 436 -------- .../rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod | 134 --- .../rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod | 73 -- .../obj_rrtmg/rrtmg_sw_wrapper.mod | 434 -------- 69 files changed, 11646 deletions(-) delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parkind.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod delete mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod b/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod deleted file mode 100644 index 5b8bc5ae..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/parkind.mod +++ /dev/null @@ -1,50 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/parkind.f90 -MD5:44cc497f860d30a0e300109e4ce41762 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () () -() () ()) - -() - -() - -() - -() - -() - -(2 'kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 2 () -() () 0 0) -3 'kind_ib' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'kind_in' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -6 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -7 'kind_rm' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -8 'kind_rn' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -9 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -10 'selected_int_kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) -0 0 () () 10 () () () 0 0) -11 'selected_real_kind' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) -0 0 () () 11 () () () 0 0) -) - -('kind' 0 2 'kind_ib' 0 3 'kind_im' 0 4 'kind_in' 0 5 'kind_rb' 0 6 -'kind_rm' 0 7 'kind_rn' 0 8 'parkind' 0 9 'selected_int_kind' 0 10 -'selected_real_kind' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod b/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod deleted file mode 100644 index 7cc80e2d..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.mod +++ /dev/null @@ -1,172 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/parrrsw.f90 -MD5:e0e526d47627d9cc836e1b686d6023d3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'jmcmu' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '32') () 0 () () () 0 0) -4 'jmphi' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () () () 0 0) -5 'jmumu' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '32') () 0 () () () 0 0) -6 'jmxang' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -7 'jmxstr' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -8 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -9 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -10 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -11 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'mxlay' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '203') () 0 () () () 0 0) -13 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -14 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -15 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -16 'ng16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -17 'ng17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -18 'ng18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'ng19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -20 'ng20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -21 'ng21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -22 'ng22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -23 'ng23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -24 'ng24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -25 'ng25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -26 'ng26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -27 'ng27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -28 'ng28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -29 'ng29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -30 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -31 'ngs16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -32 'ngs17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '18') () 0 () () () 0 0) -33 'ngs18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '26') () 0 () () () 0 0) -34 'ngs19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '34') () 0 () () () 0 0) -35 'ngs20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '44') () 0 () () () 0 0) -36 'ngs21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '54') () 0 () () () 0 0) -37 'ngs22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '56') () 0 () () () 0 0) -38 'ngs23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '66') () 0 () () () 0 0) -39 'ngs24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '74') () 0 () () () 0 0) -40 'ngs25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '80') () 0 () () () 0 0) -41 'ngs26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '86') () 0 () () () 0 0) -42 'ngs27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '94') () 0 () () () 0 0) -43 'ngs28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '100') () 0 () () () 0 0) -44 'ngs29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -45 'nmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '7') () 0 () () () 0 0) -46 'nstr' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -47 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -48 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -49 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -50 'rrsw_scon' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.5583851eb851ec@3') () 0 () () () 0 0) -) - -('im' 0 2 'jmcmu' 0 3 'jmphi' 0 4 'jmumu' 0 5 'jmxang' 0 6 'jmxstr' 0 7 -'jpb1' 0 8 'jpb2' 0 9 'jpband' 0 10 'mg' 0 11 'mxlay' 0 12 'mxmol' 0 13 -'naerec' 0 14 'nbndsw' 0 15 'ng16' 0 16 'ng17' 0 17 'ng18' 0 18 'ng19' 0 -19 'ng20' 0 20 'ng21' 0 21 'ng22' 0 22 'ng23' 0 23 'ng24' 0 24 'ng25' 0 -25 'ng26' 0 26 'ng27' 0 27 'ng28' 0 28 'ng29' 0 29 'ngptsw' 0 30 'ngs16' -0 31 'ngs17' 0 32 'ngs18' 0 33 'ngs19' 0 34 'ngs20' 0 35 'ngs21' 0 36 -'ngs22' 0 37 'ngs23' 0 38 'ngs24' 0 39 'ngs25' 0 40 'ngs26' 0 41 'ngs27' -0 42 'ngs28' 0 43 'ngs29' 0 44 'nmol' 0 45 'nstr' 0 46 'parkind' 0 47 -'parrrsw' 0 48 'rb' 0 49 'rrsw_scon' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod b/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod deleted file mode 100644 index 8496b45e..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.mod +++ /dev/null @@ -1,150 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/parrrtm.f90 -MD5:f0f94fd1fcea48f628e9f2208bf995fb -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -4 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -6 'mxlay' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '203') () 0 () () () 0 0) -7 'mxmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -8 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -9 'ng1' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -10 'ng10' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -11 'ng11' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -12 'ng12' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -13 'ng13' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -14 'ng14' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -15 'ng15' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -16 'ng16' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -17 'ng2' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -18 'ng3' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -19 'ng4' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -20 'ng5' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'ng6' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -22 'ng7' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -23 'ng8' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -24 'ng9' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -25 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -26 'ngs1' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -27 'ngs10' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '114') () 0 () () () 0 0) -28 'ngs11' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '122') () 0 () () () 0 0) -29 'ngs12' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '130') () 0 () () () 0 0) -30 'ngs13' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '134') () 0 () () () 0 0) -31 'ngs14' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '136') () 0 () () () 0 0) -32 'ngs15' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '138') () 0 () () () 0 0) -33 'ngs2' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '22') () 0 () () () 0 0) -34 'ngs3' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -35 'ngs4' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '52') () 0 () () () 0 0) -36 'ngs5' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '68') () 0 () () () 0 0) -37 'ngs6' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '76') () 0 () () () 0 0) -38 'ngs7' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '88') () 0 () () () 0 0) -39 'ngs8' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '96') () 0 () () () 0 0) -40 'ngs9' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '108') () 0 () () () 0 0) -41 'nmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '7') () 0 () () () 0 0) -42 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -43 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -) - -('im' 0 2 'maxinpx' 0 3 'maxxsec' 0 4 'mg' 0 5 'mxlay' 0 6 'mxmol' 0 7 -'nbndlw' 0 8 'ng1' 0 9 'ng10' 0 10 'ng11' 0 11 'ng12' 0 12 'ng13' 0 13 -'ng14' 0 14 'ng15' 0 15 'ng16' 0 16 'ng2' 0 17 'ng3' 0 18 'ng4' 0 19 'ng5' -0 20 'ng6' 0 21 'ng7' 0 22 'ng8' 0 23 'ng9' 0 24 'ngptlw' 0 25 'ngs1' 0 -26 'ngs10' 0 27 'ngs11' 0 28 'ngs12' 0 29 'ngs13' 0 30 'ngs14' 0 31 -'ngs15' 0 32 'ngs2' 0 33 'ngs3' 0 34 'ngs4' 0 35 'ngs5' 0 36 'ngs6' 0 37 -'ngs7' 0 38 'ngs8' 0 39 'ngs9' 0 40 'nmol' 0 41 'parkind' 0 42 'parrrtm' -0 43) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod deleted file mode 100644 index ae7e02e7..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.mod +++ /dev/null @@ -1,58 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_cld.f90 -MD5:8e94152a0815ae8cc35491bd289c3fd3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -10 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -11 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -) - -('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 -'absliq0' 0 7 'absliq1' 0 8 'parkind' 0 9 'rb' 0 10 'rrlw_cld' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod deleted file mode 100644 index 01120367..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.mod +++ /dev/null @@ -1,72 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_con.f90 -MD5:2b29e343042b725dd2e27629e189c58a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'alosmt' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'avogad' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -4 'boltz' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -5 'clight' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -6 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -7 'gascon' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'grav' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -9 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -10 'oneminus' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -12 'pi' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -13 'planck' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -14 'radcn1' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -15 'radcn2' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'sbcnst' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -19 'secdy' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -) - -('alosmt' 0 2 'avogad' 0 3 'boltz' 0 4 'clight' 0 5 'fluxfac' 0 6 'gascon' -0 7 'grav' 0 8 'heatfac' 0 9 'oneminus' 0 10 'parkind' 0 11 'pi' 0 12 -'planck' 0 13 'radcn1' 0 14 'radcn2' 0 15 'rb' 0 16 'rrlw_con' 0 17 -'sbcnst' 0 18 'secdy' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod deleted file mode 100644 index 09c792d0..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.mod +++ /dev/null @@ -1,145 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg01.f90 -MD5:cd3b6e8e85b8735f3f6d6626e46011c3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg01.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg01.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg01.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg01.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -3 'absb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -6 'forref' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () -() () 0 0) -13 'ka_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -14 'kao' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'kao_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () -() () 0 0) -16 'kb_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -17 'kbo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -18 'kbo_mn2' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'ng1' 'rrlw_kg01' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -20 'no1' 'rrlw_kg01' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg01' 'rrlw_kg01' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg01' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 -'ka_mn2' 0 13 'kao' 0 14 'kao_mn2' 0 15 'kb' 0 2 'kb_mn2' 0 16 'kbo' 0 -17 'kbo_mn2' 0 18 'ng1' 0 19 'no1' 0 20 'parkind' 0 21 'rb' 0 22 -'rrlw_kg01' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod deleted file mode 100644 index afb994eb..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.mod +++ /dev/null @@ -1,128 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg02.f90 -MD5:790d03892d075df75771a33a24df8a37 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg02.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg02.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg02.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg02.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -3 'absb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -6 'forref' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -13 'kao' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -14 'kbo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng2' 'rrlw_kg02' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -16 'no2' 'rrlw_kg02' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'refparam' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13')) 0 () () () 0 0) -20 'rrlw_kg02' 'rrlw_kg02' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'selfref' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -22 'selfrefo' 'rrlw_kg02' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' -0 13 'kb' 0 2 'kbo' 0 14 'ng2' 0 15 'no2' 0 16 'parkind' 0 17 'rb' 0 18 -'refparam' 0 19 'rrlw_kg02' 0 20 'selfref' 0 21 'selfrefo' 0 22) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod deleted file mode 100644 index f9c08129..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.mod +++ /dev/null @@ -1,163 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg03.f90 -MD5:121f803f02261a8c2b07c7f4d314b698 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg03.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg03.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg03.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrlw_kg03.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -3 'absb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'forref' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -13 'ka_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -14 'kao' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'kao_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -16 'kb_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -17 'kbo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -18 'kbo_mn2o' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -19 'ng3' 'rrlw_kg03' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -20 'no3' 'rrlw_kg03' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg03' 'rrlw_kg03' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg03' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 -'ka_mn2o' 0 13 'kao' 0 14 'kao_mn2o' 0 15 'kb' 0 2 'kb_mn2o' 0 16 'kbo' -0 17 'kbo_mn2o' 0 18 'ng3' 0 19 'no3' 0 20 'parkind' 0 21 'rb' 0 22 -'rrlw_kg03' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod deleted file mode 100644 index a3d95de4..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.mod +++ /dev/null @@ -1,134 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg04.f90 -MD5:5c8e14a9ce25854efa81cd65bf5f9f95 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg04.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg04.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg04.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrlw_kg04.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 -0) -3 'absb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -6 'forref' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '14')) 0 () () () 0 0) -13 'kao' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '14')) 0 () () () 0 0) -14 'kbo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'ng4' 'rrlw_kg04' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -16 'no4' 'rrlw_kg04' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'rrlw_kg04' 'rrlw_kg04' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'selfref' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -21 'selfrefo' 'rrlw_kg04' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' -0 13 'kb' 0 2 'kbo' 0 14 'ng4' 0 15 'no4' 0 16 'parkind' 0 17 'rb' 0 18 -'rrlw_kg04' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod deleted file mode 100644 index ac6e6d23..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.mod +++ /dev/null @@ -1,157 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg05.f90 -MD5:6d25c0a4845768a1cbcb1221acbbb654 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg05.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg05.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg05.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrlw_kg05.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -3 'absb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'ccl4' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -7 'ccl4o' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'forref' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'forrefo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefa' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -11 'fracrefao' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -12 'fracrefb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -13 'fracrefbo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -14 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'ka_mo3' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -16 'kao' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -17 'kao_mo3' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -18 'kbo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'ng5' 'rrlw_kg05' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -20 'no5' 'rrlw_kg05' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg05' 'rrlw_kg05' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg05' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'ccl4' 0 6 'ccl4o' 0 7 'forref' 0 8 'forrefo' 0 9 -'fracrefa' 0 10 'fracrefao' 0 11 'fracrefb' 0 12 'fracrefbo' 0 13 'im' 0 -14 'ka' 0 4 'ka_mo3' 0 15 'kao' 0 16 'kao_mo3' 0 17 'kb' 0 2 'kbo' 0 18 -'ng5' 0 19 'no5' 0 20 'parkind' 0 21 'rb' 0 22 'rrlw_kg05' 0 23 'selfref' -0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod deleted file mode 100644 index c43b2fb2..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.mod +++ /dev/null @@ -1,117 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg06.f90 -MD5:fcc1cbb873dcbd7a202b4abaf0852bea -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg06.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg06.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -4 'cfc11adj' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -5 'cfc11adjo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'cfc12' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'cfc12o' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'forref' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'forrefo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefa' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -11 'fracrefao' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -13 'ka_mco2' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -14 'kao' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'kao_mco2' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -16 'ng6' 'rrlw_kg06' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'no6' 'rrlw_kg06' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -18 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -19 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -20 'rrlw_kg06' 'rrlw_kg06' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'selfref' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -22 'selfrefo' 'rrlw_kg06' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'cfc11adj' 0 4 'cfc11adjo' 0 5 'cfc12' 0 6 'cfc12o' 0 7 -'forref' 0 8 'forrefo' 0 9 'fracrefa' 0 10 'fracrefao' 0 11 'im' 0 12 'ka' -0 2 'ka_mco2' 0 13 'kao' 0 14 'kao_mco2' 0 15 'ng6' 0 16 'no6' 0 17 -'parkind' 0 18 'rb' 0 19 'rrlw_kg06' 0 20 'selfref' 0 21 'selfrefo' 0 22) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod deleted file mode 100644 index 109fa625..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.mod +++ /dev/null @@ -1,154 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg07.f90 -MD5:1b823613986677874b1a0c7a1524f0af -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg07.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg07.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg07.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg07.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 -0) -3 'absb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -6 'forref' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '12')) 0 () () () 0 0) -13 'ka_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '12')) 0 () () () 0 0) -14 'kao' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'kao_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -16 'kb_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -17 'kbo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -18 'kbo_mco2' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'ng7' 'rrlw_kg07' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -20 'no7' 'rrlw_kg07' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg07' 'rrlw_kg07' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg07' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 -'ka_mco2' 0 13 'kao' 0 14 'kao_mco2' 0 15 'kb' 0 2 'kb_mco2' 0 16 'kbo' -0 17 'kbo_mco2' 0 18 'ng7' 0 19 'no7' 0 20 'parkind' 0 21 'rb' 0 22 -'rrlw_kg07' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod deleted file mode 100644 index d7f3d04a..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.mod +++ /dev/null @@ -1,193 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg08.f90 -MD5:e2d9325a7ea80d59f690387d98cf9f75 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg08.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg08.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg08.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg08.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'cfc12' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'cfc12o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'cfc22adj' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'cfc22adjo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'forref' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -11 'forrefo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'fracrefa' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -13 'fracrefao' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -14 'fracrefb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -15 'fracrefbo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -16 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -17 'ka_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -18 'ka_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -19 'ka_mo3' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -20 'kao' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -21 'kao_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -22 'kao_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -23 'kao_mo3' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -24 'kb_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -25 'kb_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -26 'kbo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -27 'kbo_mco2' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -28 'kbo_mn2o' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -29 'ng8' 'rrlw_kg08' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -30 'no8' 'rrlw_kg08' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -31 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -32 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -33 'rrlw_kg08' 'rrlw_kg08' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -34 'selfref' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -35 'selfrefo' 'rrlw_kg08' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'cfc12' 0 6 'cfc12o' 0 7 'cfc22adj' 0 8 'cfc22adjo' -0 9 'forref' 0 10 'forrefo' 0 11 'fracrefa' 0 12 'fracrefao' 0 13 -'fracrefb' 0 14 'fracrefbo' 0 15 'im' 0 16 'ka' 0 4 'ka_mco2' 0 17 -'ka_mn2o' 0 18 'ka_mo3' 0 19 'kao' 0 20 'kao_mco2' 0 21 'kao_mn2o' 0 22 -'kao_mo3' 0 23 'kb' 0 2 'kb_mco2' 0 24 'kb_mn2o' 0 25 'kbo' 0 26 -'kbo_mco2' 0 27 'kbo_mn2o' 0 28 'ng8' 0 29 'no8' 0 30 'parkind' 0 31 'rb' -0 32 'rrlw_kg08' 0 33 'selfref' 0 34 'selfrefo' 0 35) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod deleted file mode 100644 index 4df70091..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.mod +++ /dev/null @@ -1,154 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg09.f90 -MD5:500c272bb7ec500338db2ee9bca4b2b2 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg09.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg09.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg09.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg09.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 -0) -3 'absb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -6 'forref' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '12')) 0 () () () 0 0) -13 'ka_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '12')) 0 () () () 0 0) -14 'kao' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'kao_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -16 'kb_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -17 'kbo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -18 'kbo_mn2o' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'ng9' 'rrlw_kg09' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -20 'no9' 'rrlw_kg09' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg09' 'rrlw_kg09' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg09' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 -'ka_mn2o' 0 13 'kao' 0 14 'kao_mn2o' 0 15 'kb' 0 2 'kb_mn2o' 0 16 'kbo' -0 17 'kbo_mn2o' 0 18 'ng9' 0 19 'no9' 0 20 'parkind' 0 21 'rb' 0 22 -'rrlw_kg09' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod deleted file mode 100644 index a0b02693..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.mod +++ /dev/null @@ -1,124 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg10.f90 -MD5:919109b9b4fcd8979d3047da9ba99f26 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg10.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg10.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg10.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg10.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -3 'absb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -6 'forref' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () -() 0 0) -13 'kao' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () -() 0 0) -14 'kbo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng10' 'rrlw_kg10' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -16 'no10' 'rrlw_kg10' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'rrlw_kg10' 'rrlw_kg10' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'selfref' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -21 'selfrefo' 'rrlw_kg10' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' -0 13 'kb' 0 2 'kbo' 0 14 'ng10' 0 15 'no10' 0 16 'parkind' 0 17 'rb' 0 -18 'rrlw_kg10' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod deleted file mode 100644 index 7a63cf4f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.mod +++ /dev/null @@ -1,145 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg11.f90 -MD5:76f4f2c729747dec5f2d0fe79389a23c -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg11.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg11.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg11.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg11.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'forref' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -13 'ka_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -14 'kao' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'kao_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -16 'kb_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -17 'kbo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -18 'kbo_mo2' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'ng11' 'rrlw_kg11' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -20 'no11' 'rrlw_kg11' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_kg11' 'rrlw_kg11' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'selfref' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -25 'selfrefo' 'rrlw_kg11' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 -'ka_mo2' 0 13 'kao' 0 14 'kao_mo2' 0 15 'kb' 0 2 'kb_mo2' 0 16 'kbo' 0 -17 'kbo_mo2' 0 18 'ng11' 0 19 'no11' 0 20 'parkind' 0 21 'rb' 0 22 -'rrlw_kg11' 0 23 'selfref' 0 24 'selfrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod deleted file mode 100644 index c91c5139..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.mod +++ /dev/null @@ -1,95 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg12.f90 -MD5:668f889649cd12635c5cf672d77da52a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg12.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg12.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -4 'forref' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -5 'forrefo' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'fracrefa' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -7 'fracrefao' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'kao' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'ng12' 'rrlw_kg12' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -11 'no12' 'rrlw_kg12' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -14 'rrlw_kg12' 'rrlw_kg12' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -15 'selfref' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -16 'selfrefo' 'rrlw_kg12' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 'im' -0 8 'ka' 0 2 'kao' 0 9 'ng12' 0 10 'no12' 0 11 'parkind' 0 12 'rb' 0 13 -'rrlw_kg12' 0 14 'selfref' 0 15 'selfrefo' 0 16) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod deleted file mode 100644 index ef2f89f7..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.mod +++ /dev/null @@ -1,143 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg13.f90 -MD5:3aea125f123ecdc8b8507f9b94676014 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg13.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg13.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -4 'forref' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -5 'forrefo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'fracrefa' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -7 'fracrefao' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -8 'fracrefb' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -9 'fracrefbo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '4')) 0 () () () 0 0) -11 'ka_mco' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '4')) 0 () () () 0 0) -12 'ka_mco2' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '4')) 0 () () () 0 0) -13 'kao' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -14 'kao_mco' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -15 'kao_mco2' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -16 'kb_mo3' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -17 'kbo_mo3' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -18 'ng13' 'rrlw_kg13' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -19 'no13' 'rrlw_kg13' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -20 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -21 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -22 'rrlw_kg13' 'rrlw_kg13' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -23 'selfref' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -24 'selfrefo' 'rrlw_kg13' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 -'fracrefb' 0 8 'fracrefbo' 0 9 'im' 0 10 'ka' 0 2 'ka_mco' 0 11 'ka_mco2' -0 12 'kao' 0 13 'kao_mco' 0 14 'kao_mco2' 0 15 'kb_mo3' 0 16 'kbo_mo3' 0 -17 'ng13' 0 18 'no13' 0 19 'parkind' 0 20 'rb' 0 21 'rrlw_kg13' 0 22 -'selfref' 0 23 'selfrefo' 0 24) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod deleted file mode 100644 index bcfb396a..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.mod +++ /dev/null @@ -1,124 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg14.f90 -MD5:4858ec74e0a5ac35a4c65ac43d17ba9a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg14.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg14.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg14.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrlw_kg14.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -3 'absb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -6 'forref' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () -() 0 0) -13 'kao' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () -() 0 0) -14 'kbo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng14' 'rrlw_kg14' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -16 'no14' 'rrlw_kg14' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'rrlw_kg14' 'rrlw_kg14' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'selfref' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -21 'selfrefo' 'rrlw_kg14' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' -0 13 'kb' 0 2 'kbo' 0 14 'ng14' 0 15 'no14' 0 16 'parkind' 0 17 'rb' 0 -18 'rrlw_kg14' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod deleted file mode 100644 index fc5e80b8..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.mod +++ /dev/null @@ -1,110 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg15.f90 -MD5:39d0eea07c79e373741e311d873cfdac -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg15.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrlw_kg15.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -4 'forref' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -5 'forrefo' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'fracrefa' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -7 'fracrefao' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '2')) 0 () () () 0 0) -9 'ka_mn2' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '2')) 0 () () () 0 0) -10 'kao' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -11 'kao_mn2' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '19') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16')) 0 () () () 0 0) -12 'ng15' 'rrlw_kg15' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -13 'no15' 'rrlw_kg15' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -16 'rrlw_kg15' 'rrlw_kg15' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -17 'selfref' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -18 'selfrefo' 'rrlw_kg15' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'fracrefa' 0 6 'fracrefao' 0 7 'im' -0 8 'ka' 0 2 'ka_mn2' 0 9 'kao' 0 10 'kao_mn2' 0 11 'ng15' 0 12 'no15' 0 -13 'parkind' 0 14 'rb' 0 15 'rrlw_kg15' 0 16 'selfref' 0 17 'selfrefo' 0 -18) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod deleted file mode 100644 index d1747542..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.mod +++ /dev/null @@ -1,128 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_kg16.f90 -MD5:475a35e0829c53488bb620362a2d345b -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrlw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrlw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrlw_kg16.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrlw_kg16.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -3 'absb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -6 'forref' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -7 'forrefo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'fracrefa' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -9 'fracrefao' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -10 'fracrefb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -11 'fracrefbo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '2')) 0 () () () 0 0) -13 'kao' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () -() 0 0) -14 'kbo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng16' 'rrlw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -16 'no16' 'rrlw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'rrlw_kg16' 'rrlw_kg16' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'selfref' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -21 'selfrefo' 'rrlw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'fracrefa' 0 8 -'fracrefao' 0 9 'fracrefb' 0 10 'fracrefbo' 0 11 'im' 0 12 'ka' 0 4 'kao' -0 13 'kb' 0 2 'kbo' 0 14 'ng16' 0 15 'no16' 0 16 'parkind' 0 17 'rb' 0 -18 'rrlw_kg16' 0 19 'selfref' 0 20 'selfrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod deleted file mode 100644 index 213da7de..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.mod +++ /dev/null @@ -1,117 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_ncpar.f90 -MD5:8dc575f9b1ccbe1ba5ceb14289541cf9 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'absorber' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -3 'absorbernames' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 -CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5'))) 0 0 () ( -ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '5'))) 1 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '5'))) 0 5 'N2 ') ()) ((CONSTANT (CHARACTER 1 0 -0 0 CHARACTER (())) 0 5 'CCL4 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 5 'CFC11') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER -(())) 0 5 'CFC12') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 -'CFC22') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'H2O ') -()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO2 ') ()) (( -CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O3 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'N2O ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CH4 ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O2 ') ())) ('12')) (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -4 'band' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -5 'cpdair' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.3eb80000000000@3') () 0 () () () 0 0) -6 'getabsorberindex' 'rrlw_ncpar' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 7 -0 (8 9) () 0 () () () 0 0) -10 'gpoint' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'gpointset' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -12 'i' 'rrlw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -14 'keylower' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9') () 0 () () () 0 0) -15 'keyupper' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -16 'maxabsorbernamelength' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 -() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'pforeign' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -19 'plower' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') () 0 () () () 0 0) -20 'ps' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') () 0 () () () 0 0) -21 'pupper' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '47') () 0 () () () 0 0) -22 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -23 'rrlw_ncpar' 'rrlw_ncpar' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'status' 'rrlw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () -(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '40')) 0 () () () 0 0) -25 't' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') () 0 () () () 0 0) -26 'tdiff' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -27 'tforeign' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -28 'tplanck' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181') () 0 () () () 0 0) -29 'tself' 'rrlw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -8 'absorbername' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (CHARACTER 1 0 0 0 CHARACTER (())) 0 0 () () 0 () () () 0 0) -9 'absorberindex' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -) - -('absorber' 0 2 'absorbernames' 0 3 'band' 0 4 'cpdair' 0 5 -'getabsorberindex' 0 6 'gpoint' 0 10 'gpointset' 0 11 'i' 0 12 'im' 0 13 -'keylower' 0 14 'keyupper' 0 15 'maxabsorbernamelength' 0 16 'parkind' 0 -17 'pforeign' 0 18 'plower' 0 19 'ps' 0 20 'pupper' 0 21 'rb' 0 22 -'rrlw_ncpar' 0 23 'status' 0 24 't' 0 25 'tdiff' 0 26 'tforeign' 0 27 -'tplanck' 0 28 'tself' 0 29) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod deleted file mode 100644 index f79fe491..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.mod +++ /dev/null @@ -1,48 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_ref.f90 -MD5:a748e700c0cf768c66f65894bb14e110 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'chi_mls' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '7') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -5 'pref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -6 'preflog' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -7 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -8 'rrlw_ref' 'rrlw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -9 'tref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -) - -('chi_mls' 0 2 'im' 0 3 'parkind' 0 4 'pref' 0 5 'preflog' 0 6 'rb' 0 7 -'rrlw_ref' 0 8 'tref' 0 9) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod deleted file mode 100644 index 29a314f5..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.mod +++ /dev/null @@ -1,55 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_tbl.f90 -MD5:76e19cf22627047de03a7dd82f3164af -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'ntbl' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000') () 0 () () () 0 0) -6 'pade' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT (REAL 8 0 0 0 -REAL ()) 0 '0.472b020c49ba60@0') () 0 () () () 0 0) -7 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -8 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -9 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -10 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -11 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -12 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -) - -('bpade' 0 2 'exp_tbl' 0 3 'im' 0 4 'ntbl' 0 5 'pade' 0 6 'parkind' 0 7 -'rb' 0 8 'rrlw_tbl' 0 9 'tau_tbl' 0 10 'tblint' 0 11 'tfn_tbl' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod deleted file mode 100644 index 3232cd7f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.mod +++ /dev/null @@ -1,105 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_vsn.f90 -MD5:8985c0ba5d5be81a3208c49cbcfa8380 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () () -() () ()) - -() - -() - -() - -() - -() - -(2 'hnamatm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -3 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -4 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -5 'hnamext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -6 'hnamini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -7 'hnamkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -8 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -9 'hnamrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -10 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -11 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -12 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -13 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -14 'hnamutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -15 'hvratm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -16 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -17 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -18 'hvrext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -19 'hvrini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -20 'hvrkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -21 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -22 'hvrrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -23 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -24 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -25 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -26 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -27 'hvrutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -28 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -) - -('hnamatm' 0 2 'hnamclc' 0 3 'hnamcld' 0 4 'hnamext' 0 5 'hnamini' 0 6 -'hnamkg' 0 7 'hnamrtc' 0 8 'hnamrtm' 0 9 'hnamrtr' 0 10 'hnamrtx' 0 11 -'hnamset' 0 12 'hnamtau' 0 13 'hnamutl' 0 14 'hvratm' 0 15 'hvrclc' 0 16 -'hvrcld' 0 17 'hvrext' 0 18 'hvrini' 0 19 'hvrkg' 0 20 'hvrrtc' 0 21 -'hvrrtm' 0 22 'hvrrtr' 0 23 'hvrrtx' 0 24 'hvrset' 0 25 'hvrtau' 0 26 -'hvrutl' 0 27 'rrlw_vsn' 0 28) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod deleted file mode 100644 index a0bbf404..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.mod +++ /dev/null @@ -1,128 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/modules/rrlw_wvn.f90 -MD5:d53dfc721d6c3a7476369543a7e8126a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ixindx' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () -(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38')) 0 () () () 0 0) -5 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -6 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -7 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -8 'ng' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -10 'ngc' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -11 'ngm' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '256')) 0 () () () 0 0) -12 'ngn' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -13 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -14 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -16 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -17 'nxmol' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () -() 0 0) -18 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -19 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -20 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -21 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -22 'rwgt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '256')) 0 () () () 0 0) -23 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -24 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -25 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -26 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -27 'wavenum1' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -28 'wavenum2' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -29 'wt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('delwave' 0 2 'im' 0 3 'ixindx' 0 4 'maxinpx' 0 5 'mg' 0 6 'nbndlw' 0 7 -'ng' 0 8 'ngb' 0 9 'ngc' 0 10 'ngm' 0 11 'ngn' 0 12 'ngptlw' 0 13 'ngs' -0 14 'nspa' 0 15 'nspb' 0 16 'nxmol' 0 17 'parkind' 0 18 'parrrtm' 0 19 -'rb' 0 20 'rrlw_wvn' 0 21 'rwgt' 0 22 'totplk16' 0 23 'totplk16deriv' 0 -24 'totplnk' 0 25 'totplnkderiv' 0 26 'wavenum1' 0 27 'wavenum2' 0 28 'wt' -0 29) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod deleted file mode 100644 index f17d641b..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.mod +++ /dev/null @@ -1,54 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_aer.f90 -MD5:d04c7cda8ae4983a6e3d2eb3ac981a00 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -4 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -5 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -6 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -7 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -8 'rrsw_aer' 'rrsw_aer' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -9 'rsrasya' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -10 'rsrpiza' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -11 'rsrtaua' 'rrsw_aer' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -) - -('im' 0 2 'naerec' 0 3 'nbndsw' 0 4 'parkind' 0 5 'parrrsw' 0 6 'rb' 0 7 -'rrsw_aer' 0 8 'rsrasya' 0 9 'rsrpiza' 0 10 'rsrtaua' 0 11) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod deleted file mode 100644 index fd75fb3f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.mod +++ /dev/null @@ -1,107 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_cld.f90 -MD5:ccb32026dc1d9d6db78f206f98927c51 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -8 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -9 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -10 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -11 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -12 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -13 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -14 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -15 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -16 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -18 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -20 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -21 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -) - -('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' -0 7 'dbari' 0 8 'ebari' 0 9 'extice2' 0 10 'extice3' 0 11 'extliq1' 0 12 -'fbari' 0 13 'fdlice3' 0 14 'im' 0 15 'parkind' 0 16 'rb' 0 17 'rrsw_cld' -0 18 'ssaice2' 0 19 'ssaice3' 0 20 'ssaliq1' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod deleted file mode 100644 index 741622df..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.mod +++ /dev/null @@ -1,75 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_con.f90 -MD5:106ba95b126ad9dae86570fbf1037eb3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'alosmt' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'avogad' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -4 'boltz' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -5 'clight' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -6 'fluxfac' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -7 'gascon' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'grav' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -9 'heatfac' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -11 'oneminus' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'pi' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -14 'planck' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -15 'radcn1' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'radcn2' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -18 'rrsw_con' 'rrsw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'sbcnst' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -20 'secdy' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -) - -('alosmt' 0 2 'avogad' 0 3 'boltz' 0 4 'clight' 0 5 'fluxfac' 0 6 'gascon' -0 7 'grav' 0 8 'heatfac' 0 9 'im' 0 10 'oneminus' 0 11 'parkind' 0 12 'pi' -0 13 'planck' 0 14 'radcn1' 0 15 'radcn2' 0 16 'rb' 0 17 'rrsw_con' 0 18 -'sbcnst' 0 19 'secdy' 0 20) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod deleted file mode 100644 index d00b34e3..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.mod +++ /dev/null @@ -1,123 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg16.f90 -MD5:c53614184e747d86e716a9ec1440834c -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg16.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg16.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg16.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -3 'absb' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -6 'forref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '6')) 0 () () () 0 0) -9 'kao' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () -() 0 0) -10 'kbo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -11 'ng16' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -12 'no16' 'rrsw_kg16' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg16' 'rrsw_kg16' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg16' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng16' 0 11 'no16' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg16' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod deleted file mode 100644 index 6d4e371f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.mod +++ /dev/null @@ -1,129 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg17.f90 -MD5:897a508aa30c649a57afc1d620187254 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg17.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrsw_kg17.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg17.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrsw_kg17.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 -0) -3 'absb' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -6 'forref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '12')) 0 () () () 0 0) -9 'kao' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '12')) 0 () () () 0 0) -10 'kbo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -11 'ng17' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -12 'no17' 'rrsw_kg17' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg17' 'rrsw_kg17' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg17' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng17' 0 11 'no17' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg17' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod deleted file mode 100644 index 3007560d..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.mod +++ /dev/null @@ -1,125 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg18.f90 -MD5:72f68e730ee2fa68158aa536629ffa0c -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg18.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg18.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg18.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg18.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'forref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'kao' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -10 'kbo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -11 'ng18' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -12 'no18' 'rrsw_kg18' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg18' 'rrsw_kg18' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg18' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng18' 0 11 'no18' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg18' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod deleted file mode 100644 index 56431de1..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.mod +++ /dev/null @@ -1,125 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg19.f90 -MD5:656f3fe6369fbb05cc0365a47b25be07 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg19.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg19.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg19.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg19.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'forref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'kao' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -10 'kbo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -11 'ng19' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -12 'no19' 'rrsw_kg19' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg19' 'rrsw_kg19' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg19' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng19' 0 11 'no19' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg19' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod deleted file mode 100644 index 2eb5602e..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.mod +++ /dev/null @@ -1,129 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg20.f90 -MD5:a28f16a9a792ebda1a99f60b07903b36 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg20.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg20.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg20.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrsw_kg20.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -3 'absb' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -6 'absch4' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -7 'absch4o' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'forref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -9 'forrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () -() () 0 0) -11 'kao' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () -() () 0 0) -12 'kbo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -13 'ng20' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -14 'no20' 'rrsw_kg20' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -15 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -17 'rayl' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -18 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -19 'rrsw_kg20' 'rrsw_kg20' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'selfref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -21 'selfrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -22 'sfluxref' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -23 'sfluxrefo' 'rrsw_kg20' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'absch4' 0 6 'absch4o' 0 7 'forref' 0 8 'forrefo' -0 9 'im' 0 10 'ka' 0 4 'kao' 0 11 'kb' 0 2 'kbo' 0 12 'ng20' 0 13 'no20' -0 14 'parkind' 0 15 'parrrsw' 0 16 'rayl' 0 17 'rb' 0 18 'rrsw_kg20' 0 -19 'selfref' 0 20 'selfrefo' 0 21 'sfluxref' 0 22 'sfluxrefo' 0 23) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod deleted file mode 100644 index 6db3f5af..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.mod +++ /dev/null @@ -1,129 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg21.f90 -MD5:3d30afddfc9ba9cf934ed17a5b6bb90f -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg21.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrsw_kg21.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg21.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrsw_kg21.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 -0) -3 'absb' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -6 'forref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '10')) 0 () () () 0 0) -9 'kao' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '10')) 0 () () () 0 0) -10 'kbo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -11 'ng21' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -12 'no21' 'rrsw_kg21' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg21' 'rrsw_kg21' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg21' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng21' 0 11 'no21' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg21' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod deleted file mode 100644 index af2b4f7e..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.mod +++ /dev/null @@ -1,125 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg22.f90 -MD5:b8a5b303a35fc888b25e50db6b099bc7 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg22.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg22.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg22.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg22.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -3 'absb' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -6 'forref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -7 'forrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '2')) 0 () () () 0 0) -9 'kao' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () -() 0 0) -10 'kbo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -11 'ng22' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -12 'no22' 'rrsw_kg22' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'rayl' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg22' 'rrsw_kg22' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'selfref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -19 'selfrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -20 'sfluxref' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -21 'sfluxrefo' 'rrsw_kg22' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'forref' 0 6 'forrefo' 0 7 'im' 0 8 'ka' 0 4 'kao' -0 9 'kb' 0 2 'kbo' 0 10 'ng22' 0 11 'no22' 0 12 'parkind' 0 13 'parrrsw' -0 14 'rayl' 0 15 'rb' 0 16 'rrsw_kg22' 0 17 'selfref' 0 18 'selfrefo' 0 -19 'sfluxref' 0 20 'sfluxrefo' 0 21) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod deleted file mode 100644 index b08954dc..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.mod +++ /dev/null @@ -1,101 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg23.f90 -MD5:cc49c233b08f158fd1c74987ccfc471d -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg23.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg23.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -4 'forref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -5 'forrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () -() () 0 0) -7 'kao' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -8 'ng23' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -9 'no23' 'rrsw_kg23' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -10 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -11 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -12 'rayl' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -13 'raylo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -15 'rrsw_kg23' 'rrsw_kg23' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -16 'selfref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -17 'selfrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -18 'sfluxref' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -19 'sfluxrefo' 'rrsw_kg23' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'forref' 0 4 'forrefo' 0 5 'im' 0 6 'ka' 0 2 'kao' 0 7 'ng23' -0 8 'no23' 0 9 'parkind' 0 10 'parrrsw' 0 11 'rayl' 0 12 'raylo' 0 13 'rb' -0 14 'rrsw_kg23' 0 15 'selfref' 0 16 'selfrefo' 0 17 'sfluxref' 0 18 -'sfluxrefo' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod deleted file mode 100644 index e7768a6d..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.mod +++ /dev/null @@ -1,157 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg24.f90 -MD5:6a32f38d5ff1b04f95cb6b0d25f624d5 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg24.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg24.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg24.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) 'rrsw_kg24.eq.1' (VARIABLE (REAL -8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'abso3a' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -7 'abso3ao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'abso3b' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -9 'abso3bo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'forref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -11 'forrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '3') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '8')) 0 () () () 0 0) -13 'kao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -14 'kbo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng24' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -16 'no24' 'rrsw_kg24' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -19 'rayla' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -20 'raylao' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -21 'raylb' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -22 'raylbo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -23 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -24 'rrsw_kg24' 'rrsw_kg24' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -25 'selfref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -26 'selfrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -27 'sfluxref' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -28 'sfluxrefo' 'rrsw_kg24' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'abso3a' 0 6 'abso3ao' 0 7 'abso3b' 0 8 'abso3bo' -0 9 'forref' 0 10 'forrefo' 0 11 'im' 0 12 'ka' 0 4 'kao' 0 13 'kb' 0 2 -'kbo' 0 14 'ng24' 0 15 'no24' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rayla' -0 19 'raylao' 0 20 'raylb' 0 21 'raylbo' 0 22 'rb' 0 23 'rrsw_kg24' 0 24 -'selfref' 0 25 'selfrefo' 0 26 'sfluxref' 0 27 'sfluxrefo' 0 28) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod deleted file mode 100644 index 8605166a..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.mod +++ /dev/null @@ -1,97 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg25.f90 -MD5:ecf53d3a8e5dbd0024e16b41b7313659 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg25.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg25.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(3 'absa' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -4 'abso3a' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -5 'abso3ao' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'abso3b' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -7 'abso3bo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -2 'ka' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () -() 0 0) -9 'kao' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -10 'ng25' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -11 'no25' 'rrsw_kg25' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'rayl' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -15 'raylo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrsw_kg25' 'rrsw_kg25' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'sfluxref' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -19 'sfluxrefo' 'rrsw_kg25' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 3 'abso3a' 0 4 'abso3ao' 0 5 'abso3b' 0 6 'abso3bo' 0 7 'im' 0 -8 'ka' 0 2 'kao' 0 9 'ng25' 0 10 'no25' 0 11 'parkind' 0 12 'parrrsw' 0 -13 'rayl' 0 14 'raylo' 0 15 'rb' 0 16 'rrsw_kg25' 0 17 'sfluxref' 0 18 -'sfluxrefo' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod deleted file mode 100644 index f459839f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.mod +++ /dev/null @@ -1,55 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg26.f90 -MD5:aa893aa4e8d2076a264e2077028e70e3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'ng26' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -4 'no26' 'rrsw_kg26' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -5 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -6 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -7 'rayl' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '6')) 0 () () () 0 0) -8 'raylo' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -10 'rrsw_kg26' 'rrsw_kg26' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -11 'sfluxref' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -12 'sfluxrefo' 'rrsw_kg26' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('im' 0 2 'ng26' 0 3 'no26' 0 4 'parkind' 0 5 'parrrsw' 0 6 'rayl' 0 7 -'raylo' 0 8 'rb' 0 9 'rrsw_kg26' 0 10 'sfluxref' 0 11 'sfluxrefo' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod deleted file mode 100644 index b04c727a..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.mod +++ /dev/null @@ -1,105 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg27.f90 -MD5:e9dc3ed561640d1cee9e52bee71e16ec -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg27.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg27.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg27.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrsw_kg27.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -3 'absb' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -7 'kao' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () -() 0 0) -8 'kbo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -9 'ng27' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -10 'no27' 'rrsw_kg27' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -12 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'rayl' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -14 'raylo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -16 'rrsw_kg27' 'rrsw_kg27' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -17 'sfluxref' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '8')) 0 () () () 0 0) -18 'sfluxrefo' 'rrsw_kg27' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'im' 0 6 'ka' 0 4 'kao' 0 7 'kb' 0 2 'kbo' 0 8 -'ng27' 0 9 'no27' 0 10 'parkind' 0 11 'parrrsw' 0 12 'rayl' 0 13 'raylo' -0 14 'rb' 0 15 'rrsw_kg27' 0 16 'sfluxref' 0 17 'sfluxrefo' 0 18) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod deleted file mode 100644 index 4d9a057b..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.mod +++ /dev/null @@ -1,107 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg28.f90 -MD5:1551d844d83562485f9fae3ce7df92e1 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg28.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1 1)))) -'rrsw_kg28.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg28.eq.1' (VARIABLE (REAL 8 0 0 0 -REAL ()) 0 4 ((ARRAY (ELEMENT 4 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 -'1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 -0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 -1 1 1)))) 'rrsw_kg28.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY -(ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '585') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -3 'absb' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1175') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '6')) 0 () () () 0 0) -7 'kao' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '9') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -2 'kb' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '6')) 0 () () () 0 0) -8 'kbo' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (4 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'ng28' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -10 'no28' 'rrsw_kg28' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -12 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'rayl' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -15 'rrsw_kg28' 'rrsw_kg28' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -16 'sfluxref' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '6') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -17 'sfluxrefo' 'rrsw_kg28' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'im' 0 6 'ka' 0 4 'kao' 0 7 'kb' 0 2 'kbo' 0 8 -'ng28' 0 9 'no28' 0 10 'parkind' 0 11 'parrrsw' 0 12 'rayl' 0 13 'rb' 0 -14 'rrsw_kg28' 0 15 'sfluxref' 0 16 'sfluxrefo' 0 17) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod deleted file mode 100644 index 78035674..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.mod +++ /dev/null @@ -1,138 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_kg29.f90 -MD5:6ef4cc2f0b5c27c0957aa3ddd2596970 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -(('rrsw_kg29.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 2 ((ARRAY ( -ELEMENT 3 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') 1 1 1)))) 'rrsw_kg29.eq.0' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 3 ( -(ARRAY (ELEMENT 2 (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1))))) ('rrsw_kg29.eq.1' -(VARIABLE (REAL 8 0 0 0 REAL ()) 0 4 ((ARRAY (ELEMENT 3 (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') 1 1 1)))) -'rrsw_kg29.eq.1' (VARIABLE (REAL 8 0 0 0 REAL ()) 0 5 ((ARRAY (ELEMENT 2 -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') 1 1)))))) - -() - -(5 'absa' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '65') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -3 'absb' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '235') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -6 'absco2' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -7 'absco2o' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -8 'absh2o' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -9 'absh2oo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'forref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -11 'forrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '4') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -12 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'ka' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -13 'kao' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -2 'kb' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () -() () 0 0) -14 'kbo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () -() () 0 0) -15 'ng29' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -16 'no29' 'rrsw_kg29' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -19 'rayl' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -20 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -21 'rrsw_kg29' 'rrsw_kg29' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -22 'selfref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -23 'selfrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -24 'sfluxref' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -25 'sfluxrefo' 'rrsw_kg29' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('absa' 0 5 'absb' 0 3 'absco2' 0 6 'absco2o' 0 7 'absh2o' 0 8 'absh2oo' -0 9 'forref' 0 10 'forrefo' 0 11 'im' 0 12 'ka' 0 4 'kao' 0 13 'kb' 0 2 -'kbo' 0 14 'ng29' 0 15 'no29' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rayl' -0 19 'rb' 0 20 'rrsw_kg29' 0 21 'selfref' 0 22 'selfrefo' 0 23 'sfluxref' -0 24 'sfluxrefo' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod deleted file mode 100644 index f578b36b..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.mod +++ /dev/null @@ -1,235 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_ncpar.f90 -MD5:a6235a4ecc5733211750637c478c52bd -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 '__convert_i4_r8' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 FUNCTION ELEMENTAL PURE) (REAL 8 0 0 0 -REAL ()) 0 0 () () 2 () () () 0 0) -3 'absorber' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '12') () 0 () () () 0 0) -4 'absorbernames' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 -CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5'))) 0 0 () ( -ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '5'))) 1 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '5'))) 0 5 'N2 ') ()) ((CONSTANT (CHARACTER 1 0 -0 0 CHARACTER (())) 0 5 'CCL4 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 5 'CFC11') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER -(())) 0 5 'CFC12') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 -'CFC22') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'H2O ') -()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO2 ') ()) (( -CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O3 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'N2O ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CO ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'CH4 ') ()) ((CONSTANT ( -CHARACTER 1 0 0 0 CHARACTER (())) 0 5 'O2 ') ())) ('12')) (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '12')) 0 () () () 0 0) -5 'band' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -6 'bandnums' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () -(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -7 'cpdair' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.3eb80000000000@3') () 0 () () () 0 0) -8 'getabsorberindex' 'rrsw_ncpar' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 9 -0 (10 11) () 0 () () () 0 0) -12 'gpoint' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'gpointset' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -14 'i' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -15 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -16 'keylower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9') () 0 () () () 0 0) -17 'keyspecieslower' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '9')) 0 () () () 0 0) -18 'keyspeciesnameslower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 -CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3'))) 0 0 () ( -ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '3'))) 2 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '3'))) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 -0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER -(())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ())) ('14' '2')) (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -19 'keyspeciesnamesupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0 DIMENSION) (CHARACTER 1 0 0 0 -CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3'))) 0 0 () ( -ARRAY (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '3'))) 2 (((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT (INTEGER -4 0 0 0 INTEGER ()) 0 '3'))) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 -0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER -(())) 0 3 'CH4') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'H2O') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O3 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'CO2') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER -1 0 0 0 CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 -CHARACTER (())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER ( -())) 0 3 ' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 -' ') ()) ((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ()) -((CONSTANT (CHARACTER 1 0 0 0 CHARACTER (())) 0 3 'O2 ') ()) ((CONSTANT -(CHARACTER 1 0 0 0 CHARACTER (())) 0 3 ' ') ())) ('14' '2')) (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -20 'keyspeciesupper' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -21 'keyupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -22 'maxabsorbernamelength' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 -() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -23 'maxkeyspeciesnamelength' 'rrsw_ncpar' '' 1 ((PARAMETER -UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 -INTEGER ()) 0 0 () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () -() () 0 0) -24 'maxkeyspeciesnames' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 -() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -25 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -26 'pforeign' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -27 'plower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '13') () 0 () () () 0 0) -28 'pressforeign' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4')) 0 () () () 0 0) -29 'ps' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59') () 0 () () () 0 0) -30 'pupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '47') () 0 () () () 0 0) -31 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -32 'reshape' '(intrinsic)' '' 1 ((PROCEDURE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0 FUNCTION) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 32 -() () () 0 0) -33 'rrsw_ncpar' 'rrsw_ncpar' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -34 'status' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () -(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '50')) 0 () () () 0 0) -35 't' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19') () 0 () () () 0 0) -36 'tdiff' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5') () 0 () () () 0 0) -37 'temp' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '19')) 0 () () () 0 0) -38 'tempdiffs' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -39 'tempforeignlower' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3')) 0 () () () 0 0) -40 'tempforeignupper' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -41 'tempself' 'rrsw_ncpar' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10')) 0 () () () 0 0) -42 'tforeignlower' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 -() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '3') () 0 () () () 0 0) -43 'tforeignupper' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 -() (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '2') () 0 () () () 0 0) -44 'tself' 'rrsw_ncpar' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '10') () 0 () () () 0 0) -10 'absorbername' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (CHARACTER 1 0 0 0 CHARACTER (())) 0 0 () () 0 () () () 0 0) -11 'absorberindex' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -) - -('__convert_i4_r8' 0 2 'absorber' 0 3 'absorbernames' 0 4 'band' 0 5 -'bandnums' 0 6 'cpdair' 0 7 'getabsorberindex' 0 8 'gpoint' 0 12 -'gpointset' 0 13 'i' 0 14 'im' 0 15 'keylower' 0 16 'keyspecieslower' 0 -17 'keyspeciesnameslower' 0 18 'keyspeciesnamesupper' 0 19 -'keyspeciesupper' 0 20 'keyupper' 0 21 'maxabsorbernamelength' 0 22 -'maxkeyspeciesnamelength' 0 23 'maxkeyspeciesnames' 0 24 'parkind' 0 25 -'pforeign' 0 26 'plower' 0 27 'pressforeign' 0 28 'ps' 0 29 'pupper' 0 -30 'rb' 0 31 'reshape' 0 32 'rrsw_ncpar' 0 33 'status' 0 34 't' 0 35 -'tdiff' 0 36 'temp' 0 37 'tempdiffs' 0 38 'tempforeignlower' 0 39 -'tempforeignupper' 0 40 'tempself' 0 41 'tforeignlower' 0 42 -'tforeignupper' 0 43 'tself' 0 44) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod deleted file mode 100644 index c4f1307c..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.mod +++ /dev/null @@ -1,43 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_ref.f90 -MD5:96710f2aba35d1336fdca1d293ac334a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -4 'pref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -5 'preflog' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -6 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -7 'rrsw_ref' 'rrsw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -8 'tref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -) - -('im' 0 2 'parkind' 0 3 'pref' 0 4 'preflog' 0 5 'rb' 0 6 'rrsw_ref' 0 7 -'tref' 0 8) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod deleted file mode 100644 index b0f520c9..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.mod +++ /dev/null @@ -1,53 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_tbl.f90 -MD5:ef1443a9704cd81794da39fd36b1f395 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'ntbl' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000') () 0 () () () 0 0) -6 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) -7 'pade' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT (REAL 8 0 0 0 -REAL ()) 0 '0.472b020c49ba60@0') () 0 () () () 0 0) -8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -10 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -11 'tau_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -12 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -) - -('bpade' 0 2 'exp_tbl' 0 3 'im' 0 4 'ntbl' 0 5 'od_lo' 0 6 'pade' 0 7 -'parkind' 0 8 'rb' 0 9 'rrsw_tbl' 0 10 'tau_tbl' 0 11 'tblint' 0 12) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod deleted file mode 100644 index b8fb480f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.mod +++ /dev/null @@ -1,111 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_vsn.f90 -MD5:d7dc0f6d099a2ad8f90b3da4bf7892fd -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () () -() () ()) - -() - -() - -() - -() - -() - -(2 'hnamatm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -3 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -4 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -5 'hnamext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -6 'hnamini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -7 'hnamkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -8 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -9 'hnamrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -10 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -11 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -12 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -13 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -14 'hnamutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -15 'hnamvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -16 'hvratm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -17 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -18 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -19 'hvrext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -20 'hvrini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -21 'hvrkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -22 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -23 'hvrrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -24 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -25 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -26 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -27 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -28 'hvrutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -29 'hvrvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -) - -('hnamatm' 0 2 'hnamclc' 0 3 'hnamcld' 0 4 'hnamext' 0 5 'hnamini' 0 6 -'hnamkg' 0 7 'hnamrft' 0 8 'hnamrtm' 0 9 'hnamset' 0 10 'hnamspc' 0 11 -'hnamspv' 0 12 'hnamtau' 0 13 'hnamutl' 0 14 'hnamvqd' 0 15 'hvratm' 0 -16 'hvrclc' 0 17 'hvrcld' 0 18 'hvrext' 0 19 'hvrini' 0 20 'hvrkg' 0 21 -'hvrrft' 0 22 'hvrrtm' 0 23 'hvrset' 0 24 'hvrspc' 0 25 'hvrspv' 0 26 -'hvrtau' 0 27 'hvrutl' 0 28 'hvrvqd' 0 29 'rrsw_vsn' 0 30) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod deleted file mode 100644 index ca824157..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.mod +++ /dev/null @@ -1,102 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/modules/rrsw_wvn.f90 -MD5:276f94afd6d3f98daac13c1f16ecb0be -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'delwave' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -3 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -4 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -5 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -6 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -7 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -8 'ng' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -9 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) -10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -11 'ngm' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '224')) 0 () () () 0 0) -12 'ngn' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) -13 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -14 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -15 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -16 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -17 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -18 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -19 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -20 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'rwgt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '224')) 0 () () () 0 0) -22 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -23 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -24 'wt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -) - -('delwave' 0 2 'im' 0 3 'jpb1' 0 4 'jpb2' 0 5 'mg' 0 6 'nbndsw' 0 7 'ng' -0 8 'ngb' 0 9 'ngc' 0 10 'ngm' 0 11 'ngn' 0 12 'ngptsw' 0 13 'ngs' 0 14 -'nspa' 0 15 'nspb' 0 16 'parkind' 0 17 'parrrsw' 0 18 'rb' 0 19 'rrsw_wvn' -0 20 'rwgt' 0 21 'wavenum1' 0 22 'wavenum2' 0 23 'wt' 0 24) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod deleted file mode 100644 index d45cecd6..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.mod +++ /dev/null @@ -1,126 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_cldprmc.f90 -MD5:a47fb4c77f77300721e37c391ac31ee7 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'cldprmc' 'rrtmg_lw_cldprmc' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 10 0 (11 12 13 14 15 16 17 18 19 20 21) () 0 () () () 0 0) -22 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -23 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -24 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -25 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -26 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -27 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -28 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -29 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -30 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -31 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -32 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -33 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -34 'rrtmg_lw_cldprmc' 'rrtmg_lw_cldprmc' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -11 'nlayers' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -12 'inflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'iceflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -14 'liqflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -15 'cldfmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'ciwpmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'clwpmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'reicmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'relqmc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'ncbands' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -21 'taucmc' '' '' 10 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 -'absliq0' 0 7 'absliq1' 0 8 'cldprmc' 0 9 'hnamclc' 0 22 'hvrclc' 0 23 -'im' 0 24 'nbndlw' 0 25 'ngb' 0 26 'ngptlw' 0 27 'parkind' 0 28 'parrrtm' -0 29 'rb' 0 30 'rrlw_cld' 0 31 'rrlw_vsn' 0 32 'rrlw_wvn' 0 33 -'rrtmg_lw_cldprmc' 0 34) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod deleted file mode 100644 index 4b0b1c28..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.mod +++ /dev/null @@ -1,117 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_cldprop.f90 -MD5:08a0e0cb4b915f36df4339e73293ee61 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abscld1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'absice0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2')) 0 () () () 0 0) -4 'absice1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '2') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -5 'absice2' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -6 'absice3' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -7 'absliq0' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'absliq1' 'rrlw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -9 'cldprop' 'rrtmg_lw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 10 0 (11 12 13 14 15 16 17 18 19 20 21 22) () 0 () () () 0 -0) -23 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -24 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -25 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -26 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -27 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -28 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -29 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -30 'rrlw_cld' 'rrlw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -31 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -32 'rrtmg_lw_cldprop' 'rrtmg_lw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -11 'nlayers' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -12 'inflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'iceflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -14 'liqflag' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -15 'cldfrac' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'tauc' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'ciwp' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'clwp' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'rei' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'rel' '' '' 10 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'ncbands' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -22 'taucloud' '' '' 10 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('abscld1' 0 2 'absice0' 0 3 'absice1' 0 4 'absice2' 0 5 'absice3' 0 6 -'absliq0' 0 7 'absliq1' 0 8 'cldprop' 0 9 'hnamcld' 0 23 'hvrcld' 0 24 -'im' 0 25 'nbndlw' 0 26 'parkind' 0 27 'parrrtm' 0 28 'rb' 0 29 'rrlw_cld' -0 30 'rrlw_vsn' 0 31 'rrtmg_lw_cldprop' 0 32) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod deleted file mode 100644 index d73e5047..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.mod +++ /dev/null @@ -1,213 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_init.f90 -MD5:86ecfd94c37867ae8a5e2d9b7345c4fd -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'cmbgb1' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -3 'cmbgb10' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -4 'cmbgb11' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -5 'cmbgb12' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -6 'cmbgb13' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -7 'cmbgb14' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -8 'cmbgb15' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -9 'cmbgb16' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -10 'cmbgb2' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -11 'cmbgb3' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -12 'cmbgb4' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -13 'cmbgb5' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -14 'cmbgb6' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -15 'cmbgb7' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -16 'cmbgb8' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -17 'cmbgb9' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -18 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -19 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -20 'ixindx' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () -(1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38')) 0 () () () 0 0) -21 'lwatmref' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -22 'lwavplank' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -23 'lwavplankderiv' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -24 'lwcldpr' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -25 'lwcmbdat' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -26 'lwdatinit' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 27 -0 (28) () 0 () () () 0 0) -29 'maxinpx' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -30 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -31 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -32 'ng' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -33 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -34 'ngc' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -35 'ngm' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '256')) 0 () () () 0 0) -36 'ngn' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -37 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -38 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -39 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -40 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -41 'nxmol' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () -() 0 0) -42 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -43 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -44 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -45 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -46 'rrtmg_lw_ini' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 47 -0 (48) () 0 () () () 0 0) -49 'rrtmg_lw_init' 'rrtmg_lw_init' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -50 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -51 'rwgt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '256')) 0 () () () 0 0) -52 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -53 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -54 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -55 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -56 'wavenum1' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -57 'wavenum2' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -58 'wt' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -28 'cpdair' '' '' 27 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -48 'cpdair' '' '' 47 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -) - -('cmbgb1' 0 2 'cmbgb10' 0 3 'cmbgb11' 0 4 'cmbgb12' 0 5 'cmbgb13' 0 6 -'cmbgb14' 0 7 'cmbgb15' 0 8 'cmbgb16' 0 9 'cmbgb2' 0 10 'cmbgb3' 0 11 -'cmbgb4' 0 12 'cmbgb5' 0 13 'cmbgb6' 0 14 'cmbgb7' 0 15 'cmbgb8' 0 16 -'cmbgb9' 0 17 'delwave' 0 18 'im' 0 19 'ixindx' 0 20 'lwatmref' 0 21 -'lwavplank' 0 22 'lwavplankderiv' 0 23 'lwcldpr' 0 24 'lwcmbdat' 0 25 -'lwdatinit' 0 26 'maxinpx' 0 29 'mg' 0 30 'nbndlw' 0 31 'ng' 0 32 'ngb' -0 33 'ngc' 0 34 'ngm' 0 35 'ngn' 0 36 'ngptlw' 0 37 'ngs' 0 38 'nspa' 0 -39 'nspb' 0 40 'nxmol' 0 41 'parkind' 0 42 'parrrtm' 0 43 'rb' 0 44 -'rrlw_wvn' 0 45 'rrtmg_lw_ini' 0 46 'rrtmg_lw_init' 0 49 -'rrtmg_lw_setcoef' 0 50 'rwgt' 0 51 'totplk16' 0 52 'totplk16deriv' 0 53 -'totplnk' 0 54 'totplnkderiv' 0 55 'wavenum1' 0 56 'wavenum2' 0 57 'wt' -0 58) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod deleted file mode 100644 index b03199b9..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.mod +++ /dev/null @@ -1,971 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rad.nomcica.f90 -MD5:b2750b5a85eae2e49de179529ade5fc3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'cldprop' 'rrtmg_lw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 3 0 (4 5 6 7 8 9 10 11 12 13 14 15) () 0 () () () 0 0) -16 'hnamatm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -17 'hnamclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -18 'hnamcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -19 'hnamext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -20 'hnamini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -21 'hnamkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -22 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -23 'hnamrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -24 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -25 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -26 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -27 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -28 'hnamutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -29 'hvratm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -30 'hvrclc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -31 'hvrcld' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -32 'hvrext' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -33 'hvrini' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -34 'hvrkg' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -35 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -36 'hvrrtm' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -37 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -38 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -39 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -40 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -41 'hvrutl' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -42 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -43 'inatm' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) (UNKNOWN 0 0 -0 0 UNKNOWN ()) 44 0 (45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 -62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 -86 87 88 89 90 91 92 93 94 95 96) () 0 () () () 0 0) -97 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -98 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -99 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -100 'rrtmg_lw' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 101 0 (102 103 104 105 106 107 108 109 110 111 112 113 114 -115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 -133 134 135 136 137 138 139) () 0 () () () 0 0) -140 'rrtmg_lw_cldprop' 'rrtmg_lw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -141 'rrtmg_lw_rad' 'rrtmg_lw_rad' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -142 'rrtmg_lw_rtrn' 'rrtmg_lw_rtrn' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -143 'rrtmg_lw_rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -144 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -145 'rrtmg_lw_taumol' 'rrtmg_lw_taumol' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -146 'rtrn' 'rrtmg_lw_rtrn' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) -147 0 (148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 -164 165 166 167 168 169 170 171 172 173 174) () 0 () () () 0 0) -175 'rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 176 0 (177 178 179 180 181 182 183 184 185 186 187 188 189 -190 191 192 193 194 195 196 197 198 199 200 201 202 203) () 0 () () () 0 -0) -204 'setcoef' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 205 0 (206 207 208 209 210 211 212 213 214 215 216 217 218 -219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 -237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 -255 256 257 258) () 0 () () () 0 0) -259 'taumol' 'rrtmg_lw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 260 0 (261 262 263 264 265 266 267 268 269 270 271 272 273 -274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 -292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307) () 0 () -() () 0 0) -4 'nlayers' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -5 'inflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -6 'iceflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -7 'liqflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -8 'cldfrac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -9 'tauc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -10 'ciwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -11 'clwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -12 'rei' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -13 'rel' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -14 'ncbands' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -15 'taucloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'iplon' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -46 'nlay' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -47 'icld' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -48 'iaer' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -49 'play' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'plev' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -51 'tlay' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -52 'tlev' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -53 'tsfc' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -54 'h2ovmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -55 'o3vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -56 'co2vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'ch4vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'n2ovmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'o2vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -60 'cfc11vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'cfc12vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'cfc22vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'ccl4vmr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -64 'emis' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'inflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -66 'iceflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -67 'liqflglw' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -68 'cldfr' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'taucld' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -70 'cicewp' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'cliqwp' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'reice' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -73 'reliq' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -74 'tauaer' '' '' 44 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -75 'nlayers' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -76 'pavel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -77 'pz' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -78 'tavel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -79 'tz' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -80 'tbound' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -81 'semiss' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -82 'coldry' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -83 'wkl' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -84 'wbrodl' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -85 'wx' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -86 'pwvcm' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -87 'inflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -88 'iceflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -89 'liqflag' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -90 'cldfrac' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -91 'tauc' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'ciwp' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -93 'clwp' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -94 'rei' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -95 'rel' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -96 'taua' '' '' 44 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -102 'ncol' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -103 'nlay' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -104 'icld' '' '' 101 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -105 'idrv' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -106 'play' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -107 'plev' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -108 'tlay' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -109 'tlev' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -110 'tsfc' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -111 'h2ovmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -112 'o3vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -113 'co2vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -114 'ch4vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -115 'n2ovmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -116 'o2vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -117 'cfc11vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -118 'cfc12vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -119 'cfc22vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -120 'ccl4vmr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -121 'emis' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -122 'inflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -123 'iceflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -124 'liqflglw' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -125 'cldfr' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -126 'taucld' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -127 'cicewp' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -128 'cliqwp' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -129 'reice' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -130 'reliq' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -131 'tauaer' '' '' 101 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -132 'uflx' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -133 'dflx' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -134 'hr' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -135 'uflxc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -136 'dflxc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -137 'hrc' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -138 'duflx_dt' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -139 'duflxc_dt' '' '' 101 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -148 'nlayers' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -149 'istart' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -150 'iend' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -151 'iout' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -152 'pz' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -153 'semiss' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -154 'ncbands' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -155 'cldfrac' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -156 'taucloud' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -157 'planklay' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -158 'planklev' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -159 'plankbnd' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -160 'pwvcm' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -161 'fracs' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -162 'taut' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -163 'totuflux' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -164 'totdflux' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -165 'fnet' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -166 'htr' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -167 'totuclfl' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -168 'totdclfl' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -169 'fnetc' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -170 'htrc' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -171 'idrv' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -172 'dplankbnd_dt' '' '' 147 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -173 'dtotuflux_dt' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -174 'dtotuclfl_dt' '' '' 147 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -177 'nlayers' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -178 'istart' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -179 'iend' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -180 'iout' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -181 'pz' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -182 'semiss' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -183 'ncbands' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -184 'cldfrac' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -185 'taucloud' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -186 'planklay' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -187 'planklev' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -188 'plankbnd' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -189 'pwvcm' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -190 'fracs' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -191 'taut' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -192 'totuflux' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -193 'totdflux' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -194 'fnet' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -195 'htr' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -196 'totuclfl' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -197 'totdclfl' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -198 'fnetc' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -199 'htrc' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -200 'idrv' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -201 'dplankbnd_dt' '' '' 176 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -202 'dtotuflux_dt' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -203 'dtotuclfl_dt' '' '' 176 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -206 'nlayers' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -207 'istart' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -208 'pavel' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -209 'tavel' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -210 'tz' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -211 'tbound' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -212 'semiss' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -213 'coldry' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -214 'wkl' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -215 'wbroad' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -216 'laytrop' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -217 'jp' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -218 'jt' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -219 'jt1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -220 'planklay' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -221 'planklev' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -222 'plankbnd' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -223 'idrv' '' '' 205 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -224 'dplankbnd_dt' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -225 'colh2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -226 'colco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -227 'colo3' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -228 'coln2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -229 'colco' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -230 'colch4' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -231 'colo2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -232 'colbrd' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -233 'fac00' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -234 'fac01' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -235 'fac10' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -236 'fac11' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -237 'rat_h2oco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -238 'rat_h2oco2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -239 'rat_h2oo3' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -240 'rat_h2oo3_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -241 'rat_h2on2o' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -242 'rat_h2on2o_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -243 'rat_h2och4' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -244 'rat_h2och4_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -245 'rat_n2oco2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -246 'rat_n2oco2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -247 'rat_o3co2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -248 'rat_o3co2_1' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -249 'selffac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -250 'selffrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -251 'indself' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -252 'forfac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -253 'forfrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -254 'indfor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -255 'minorfrac' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -256 'scaleminor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -257 'scaleminorn2' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -258 'indminor' '' '' 205 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -261 'nlayers' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -262 'pavel' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -263 'wx' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -264 'coldry' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -265 'laytrop' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -266 'jp' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -267 'jt' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -268 'jt1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -269 'planklay' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -270 'planklev' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -271 'plankbnd' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -272 'colh2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -273 'colco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -274 'colo3' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -275 'coln2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -276 'colco' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -277 'colch4' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -278 'colo2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -279 'colbrd' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -280 'fac00' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -281 'fac01' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -282 'fac10' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -283 'fac11' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -284 'rat_h2oco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -285 'rat_h2oco2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -286 'rat_h2oo3' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -287 'rat_h2oo3_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -288 'rat_h2on2o' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -289 'rat_h2on2o_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -290 'rat_h2och4' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -291 'rat_h2och4_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -292 'rat_n2oco2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -293 'rat_n2oco2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -294 'rat_o3co2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -295 'rat_o3co2_1' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -296 'selffac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -297 'selffrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -298 'indself' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -299 'forfac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -300 'forfrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -301 'indfor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -302 'minorfrac' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -303 'scaleminor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -304 'scaleminorn2' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -0 0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -305 'indminor' '' '' 260 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -306 'fracs' '' '' 260 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -307 'taug' '' '' 260 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('cldprop' 0 2 'hnamatm' 0 16 'hnamclc' 0 17 'hnamcld' 0 18 'hnamext' 0 -19 'hnamini' 0 20 'hnamkg' 0 21 'hnamrtc' 0 22 'hnamrtm' 0 23 'hnamrtr' -0 24 'hnamrtx' 0 25 'hnamset' 0 26 'hnamtau' 0 27 'hnamutl' 0 28 'hvratm' -0 29 'hvrclc' 0 30 'hvrcld' 0 31 'hvrext' 0 32 'hvrini' 0 33 'hvrkg' 0 -34 'hvrrtc' 0 35 'hvrrtm' 0 36 'hvrrtr' 0 37 'hvrrtx' 0 38 'hvrset' 0 39 -'hvrtau' 0 40 'hvrutl' 0 41 'im' 0 42 'inatm' 0 43 'parkind' 0 97 'rb' 0 -98 'rrlw_vsn' 0 99 'rrtmg_lw' 0 100 'rrtmg_lw_cldprop' 0 140 -'rrtmg_lw_rad' 0 141 'rrtmg_lw_rtrn' 0 142 'rrtmg_lw_rtrnmr' 0 143 -'rrtmg_lw_setcoef' 0 144 'rrtmg_lw_taumol' 0 145 'rtrn' 0 146 'rtrnmr' 0 -175 'setcoef' 0 204 'taumol' 0 259) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod deleted file mode 100644 index c8134e41..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.mod +++ /dev/null @@ -1,178 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrn.f90 -MD5:dbef6e972051b1253caa0f11eab0da63 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -7 'hnamrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -8 'hvrrtr' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -13 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'rrtmg_lw_rtrn' 'rrtmg_lw_rtrn' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -22 'rtrn' 'rrtmg_lw_rtrn' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) -23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 -46 47 48 49 50) () 0 () () () 0 0) -51 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -52 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -53 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'iend' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -27 'iout' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -28 'pz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -29 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -30 'ncbands' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -31 'cldfrac' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'taucloud' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'planklay' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'planklev' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'plankbnd' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'pwvcm' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -37 'fracs' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'taut' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'totuflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -40 'totdflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -41 'fnet' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -42 'htr' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -43 'totuclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -44 'totdclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -45 'fnetc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -46 'htrc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -47 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -48 'dplankbnd_dt' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -49 'dtotuflux_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -50 'dtotuclfl_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 -'hnamrtr' 0 7 'hvrrtr' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngptlw' 0 -12 'ngs' 0 13 'parkind' 0 14 'parrrtm' 0 15 'rb' 0 16 'rrlw_con' 0 17 -'rrlw_tbl' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 'rrtmg_lw_rtrn' 0 21 -'rtrn' 0 22 'tau_tbl' 0 51 'tblint' 0 52 'tfn_tbl' 0 53) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod deleted file mode 100644 index b73a25b8..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.mod +++ /dev/null @@ -1,184 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrnmc.f90 -MD5:0e2b9c9c4bfa40f3f4ca0f714f7ffff3 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -7 'hnamrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -8 'hvrrtc' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'ngb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '140')) 0 () () () 0 0) -13 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -14 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -15 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -18 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -22 'rrtmg_lw_rtrnmc' 'rrtmg_lw_rtrnmc' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -23 'rtrnmc' 'rrtmg_lw_rtrnmc' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 24 0 (25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 -42 43 44 45 46 47 48 49 50 51) () 0 () () () 0 0) -52 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -53 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -54 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -25 'nlayers' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'istart' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -27 'iend' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -28 'iout' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -29 'pz' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -30 'semiss' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -31 'ncbands' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -32 'cldfmc' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'taucmc' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'planklay' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'planklev' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'plankbnd' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -37 'pwvcm' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -38 'fracs' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'taut' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -40 'totuflux' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -41 'totdflux' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -42 'fnet' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -43 'htr' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -44 'totuclfl' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -45 'totdclfl' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -46 'fnetc' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -47 'htrc' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -48 'idrv' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -49 'dplankbnd_dt' '' '' 24 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'dtotuflux_dt' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -51 'dtotuclfl_dt' '' '' 24 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 -'hnamrtc' 0 7 'hvrrtc' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngb' 0 12 -'ngptlw' 0 13 'ngs' 0 14 'parkind' 0 15 'parrrtm' 0 16 'rb' 0 17 -'rrlw_con' 0 18 'rrlw_tbl' 0 19 'rrlw_vsn' 0 20 'rrlw_wvn' 0 21 -'rrtmg_lw_rtrnmc' 0 22 'rtrnmc' 0 23 'tau_tbl' 0 52 'tblint' 0 53 -'tfn_tbl' 0 54) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod deleted file mode 100644 index c8f25ce2..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.mod +++ /dev/null @@ -1,178 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_rtrnmr.f90 -MD5:57cd89585cdfb8f38622efb29155142b -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'delwave' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -4 'exp_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -5 'fluxfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -6 'heatfac' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -7 'hnamrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -8 'hvrrtx' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -9 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -12 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -13 'ngs' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'rrlw_tbl' 'rrlw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'rrtmg_lw_rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -22 'rtrnmr' 'rrtmg_lw_rtrnmr' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 -41 42 43 44 45 46 47 48 49 50) () 0 () () () 0 0) -51 'tau_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -52 'tblint' 'rrlw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -53 'tfn_tbl' 'rrlw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'iend' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -27 'iout' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -28 'pz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -29 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -30 'ncbands' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -31 'cldfrac' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'taucloud' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'planklay' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'planklev' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'plankbnd' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'pwvcm' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -37 'fracs' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'taut' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'totuflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -40 'totdflux' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -41 'fnet' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -42 'htr' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -43 'totuclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -44 'totdclfl' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -45 'fnetc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -46 'htrc' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -47 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -48 'dplankbnd_dt' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -49 'dtotuflux_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -50 'dtotuclfl_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'delwave' 0 3 'exp_tbl' 0 4 'fluxfac' 0 5 'heatfac' 0 6 -'hnamrtx' 0 7 'hvrrtx' 0 8 'im' 0 9 'mg' 0 10 'nbndlw' 0 11 'ngptlw' 0 -12 'ngs' 0 13 'parkind' 0 14 'parrrtm' 0 15 'rb' 0 16 'rrlw_con' 0 17 -'rrlw_tbl' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 'rrtmg_lw_rtrnmr' 0 21 -'rtrnmr' 0 22 'tau_tbl' 0 51 'tblint' 0 52 'tfn_tbl' 0 53) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod deleted file mode 100644 index 92bae701..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.mod +++ /dev/null @@ -1,272 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_setcoef.f90 -MD5:d8dca370ead2dbd980030960e9d462dc -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'chi_mls' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '7') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -3 'hnamset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -4 'hvrset' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -5 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -6 'lwatmref' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -7 'lwavplank' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -8 'lwavplankderiv' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -9 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -10 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -11 'mxmol' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -12 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -13 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'pref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -16 'preflog' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -17 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -18 'rrlw_ref' 'rrlw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -19 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -20 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -21 'rrtmg_lw_setcoef' 'rrtmg_lw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -22 'setcoef' 'rrtmg_lw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 23 0 (24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 -41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 -65 66 67 68 69 70 71 72 73 74 75 76) () 0 () () () 0 0) -77 'totplk16' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -78 'totplk16deriv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) -0 0 () (1 0 EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '181')) 0 () () () 0 0) -79 'totplnk' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -80 'totplnkderiv' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '181') (CONSTANT (INTEGER 4 0 0 0 INTEGER -()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 -0) -81 'tref' 'rrlw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -24 'nlayers' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -25 'istart' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'pavel' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -27 'tavel' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'tz' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -29 'tbound' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -30 'semiss' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -31 'coldry' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'wkl' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'wbroad' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'laytrop' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -35 'jp' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'jt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -37 'jt1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'planklay' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'planklev' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -40 'plankbnd' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -41 'idrv' '' '' 23 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -42 'dplankbnd_dt' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -43 'colh2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -44 'colco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'colo3' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -46 'coln2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -47 'colco' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -48 'colch4' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -49 'colo2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'colbrd' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -51 'fac00' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -52 'fac01' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -53 'fac10' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -54 'fac11' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -55 'rat_h2oco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -56 'rat_h2oco2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'rat_h2oo3' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'rat_h2oo3_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'rat_h2on2o' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -60 'rat_h2on2o_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'rat_h2och4' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'rat_h2och4_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'rat_n2oco2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -64 'rat_n2oco2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'rat_o3co2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -66 'rat_o3co2_1' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'selffac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'selffrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'indself' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'forfac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'forfrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'indfor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -73 'minorfrac' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -74 'scaleminor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -75 'scaleminorn2' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -76 'indminor' '' '' 23 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('chi_mls' 0 2 'hnamset' 0 3 'hvrset' 0 4 'im' 0 5 'lwatmref' 0 6 -'lwavplank' 0 7 'lwavplankderiv' 0 8 'maxxsec' 0 9 'mg' 0 10 'mxmol' 0 -11 'nbndlw' 0 12 'parkind' 0 13 'parrrtm' 0 14 'pref' 0 15 'preflog' 0 -16 'rb' 0 17 'rrlw_ref' 0 18 'rrlw_vsn' 0 19 'rrlw_wvn' 0 20 -'rrtmg_lw_setcoef' 0 21 'setcoef' 0 22 'totplk16' 0 77 'totplk16deriv' 0 -78 'totplnk' 0 79 'totplnkderiv' 0 80 'tref' 0 81) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod deleted file mode 100644 index a4bb1dc5..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.mod +++ /dev/null @@ -1,222 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/lw/src/rrtmg_lw_taumol.f90 -MD5:7ba75eaeac57fd0689ae85b2cc89bf1a -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'hnamtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -3 'hvrtau' 'rrlw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'maxxsec' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -6 'mg' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -7 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -8 'ngptlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '140') () 0 () () () 0 0) -9 'nspa' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -10 'nspb' 'rrlw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -11 'oneminus' 'rrlw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -12 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -13 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -14 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -15 'rrlw_con' 'rrlw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -16 'rrlw_vsn' 'rrlw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -17 'rrlw_wvn' 'rrlw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -18 'rrtmg_lw_taumol' 'rrtmg_lw_taumol' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -19 'taumol' 'rrtmg_lw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 20 0 (21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 -38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 -62 63 64 65 66 67) () 0 () () () 0 0) -21 'nlayers' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -22 'pavel' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'wx' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -24 'coldry' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -25 'laytrop' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'jp' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -27 'jt' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'jt1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -29 'planklay' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -30 'planklev' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -31 'plankbnd' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'colh2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'colco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'colo3' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'coln2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'colco' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -37 'colch4' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'colo2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'colbrd' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -40 'fac00' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -41 'fac01' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -42 'fac10' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -43 'fac11' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -44 'rat_h2oco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'rat_h2oco2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -46 'rat_h2oo3' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -47 'rat_h2oo3_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -48 'rat_h2on2o' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -49 'rat_h2on2o_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'rat_h2och4' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -51 'rat_h2och4_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -52 'rat_n2oco2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -53 'rat_n2oco2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -54 'rat_o3co2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -55 'rat_o3co2_1' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -56 'selffac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'selffrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'indself' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'forfac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -60 'forfrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'indfor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'minorfrac' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'scaleminor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -64 'scaleminorn2' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 -0 DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'indminor' '' '' 20 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -66 'fracs' '' '' 20 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'taug' '' '' 20 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('hnamtau' 0 2 'hvrtau' 0 3 'im' 0 4 'maxxsec' 0 5 'mg' 0 6 'nbndlw' 0 7 -'ngptlw' 0 8 'nspa' 0 9 'nspb' 0 10 'oneminus' 0 11 'parkind' 0 12 -'parrrtm' 0 13 'rb' 0 14 'rrlw_con' 0 15 'rrlw_vsn' 0 16 'rrlw_wvn' 0 17 -'rrtmg_lw_taumol' 0 18 'taumol' 0 19) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod deleted file mode 100644 index e88f7ff3..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.mod +++ /dev/null @@ -1,382 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/rrtmg_build/rrtmg_lw_wrapper.f90 -MD5:0ceb6e30587153bd1cf2a0c80daf2d38 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 '__iso_c_binding' '__iso_c_binding' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 INTRINSIC) (UNKNOWN 0 0 0 0 UNKNOWN ()) -0 0 () () 0 () () () 2 0) -3 'c_double' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 -REAL ()) 0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '8') () 0 () () -() 2 25) -4 'c_int' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 INTEGER ()) -0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '4') () 0 () () () 2 0) -5 'c_rrtmg_lw' 'rrtmg_lw_wrapper' 'c_rrtmg_lw' 1 ((PROCEDURE -UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT -IS_BIND_C IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 6 0 (7 8 9 10 11 12 -13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 -37 38 39 40 41 42 43 44) () 0 () () () 0 0) -45 'c_rrtmg_lw_init' 'rrtmg_lw_wrapper' 'c_rrtmg_lw_init' 1 ((PROCEDURE -UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C -IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 46 0 (47) () 0 () () () 0 0) -48 'nbndlw' 'parrrtm' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -49 'parrrtm' 'parrrtm' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -50 'rrtmg_lw' 'rrtmg_lw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) -51 0 (52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 -74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89) () 0 () () () 0 0) -90 'rrtmg_lw_ini' 'rrtmg_lw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 91 -0 (92) () 0 () () () 0 0) -93 'rrtmg_lw_init' 'rrtmg_lw_init' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -94 'rrtmg_lw_rad' 'rrtmg_lw_rad' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -95 'rrtmg_lw_wrapper' 'rrtmg_lw_wrapper' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -7 'ncol' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -8 'nlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -9 'icld' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -10 'idrv' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -11 'play' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -12 'plev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -13 'tlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -14 'tlev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -15 'tsfc' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -16 'h2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -17 'o3vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -18 'co2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -19 'ch4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -20 'n2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -21 'o2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -22 'cfc11vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -23 'cfc12vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -24 'cfc22vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -25 'ccl4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -26 'emis' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -27 'inflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -28 'iceflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -29 'liqflglw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -30 'cldfr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -31 'taucld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -32 'cicewp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -33 'cliqwp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -34 'reice' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -35 'reliq' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -36 'tauaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16')) 0 () () () 0 0) -37 'uflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -38 'dflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -39 'hr' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -40 'uflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -41 'dflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -42 'hrc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -43 'duflx_dt' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION OPTIONAL DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 -INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP ( -INTEGER 4 0 1 0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -44 'duflxc_dt' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION OPTIONAL DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 -INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP ( -INTEGER 4 0 1 0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -47 'cpdair' '' '' 46 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) -52 'ncol' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -53 'nlay' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -54 'icld' '' '' 51 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -55 'idrv' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -56 'play' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'plev' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'tlay' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'tlev' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -60 'tsfc' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'h2ovmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'o3vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'co2vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -64 'ch4vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'n2ovmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -66 'o2vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'cfc11vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'cfc12vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'cfc22vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'ccl4vmr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'emis' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'inflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -73 'iceflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -74 'liqflglw' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -75 'cldfr' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -76 'taucld' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -77 'cicewp' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -78 'cliqwp' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -79 'reice' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -80 'reliq' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -81 'tauaer' '' '' 51 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -82 'uflx' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -83 'dflx' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -84 'hr' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -85 'uflxc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -86 'dflxc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -87 'hrc' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -88 'duflx_dt' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -89 'duflxc_dt' '' '' 51 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION OPTIONAL DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -ASSUMED_SHAPE (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'cpdair' '' '' 91 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -) - -('__iso_c_binding' 0 2 'c_double' 0 3 'c_int' 0 4 'c_rrtmg_lw' 0 5 -'c_rrtmg_lw_init' 0 45 'nbndlw' 0 48 'parrrtm' 0 49 'rrtmg_lw' 0 50 -'rrtmg_lw_ini' 0 90 'rrtmg_lw_init' 0 93 'rrtmg_lw_rad' 0 94 -'rrtmg_lw_wrapper' 0 95) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod deleted file mode 100644 index f5943697..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.mod +++ /dev/null @@ -1,201 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_cldprmc.f90 -MD5:706e3194881373b1710615b5cc293dbd -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -8 'cldprmc_sw' 'rrtmg_sw_cldprmc' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 9 0 (10 11 12 13 14 15 16 17 18 19 20 21 22 23) () 0 () () -() 0 0) -24 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -25 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -26 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -27 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -28 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -29 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -30 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -31 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -32 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -33 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -34 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -35 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -36 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -37 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) -38 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -39 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -40 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -41 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -42 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -43 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -44 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -45 'rrtmg_sw_cldprmc' 'rrtmg_sw_cldprmc' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -46 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -47 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -48 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -49 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -50 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -10 'nlayers' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -11 'inflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -12 'iceflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'liqflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -14 'cldfmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -15 'ciwpmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'clwpmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'reicmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'relqmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'taormc' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'taucmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'ssacmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -22 'asmcmc' '' '' 9 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'fsfcmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' -0 7 'cldprmc_sw' 0 8 'dbari' 0 24 'ebari' 0 25 'extice2' 0 26 'extice3' -0 27 'extliq1' 0 28 'fbari' 0 29 'fdlice3' 0 30 'hnamclc' 0 31 'hvrclc' -0 32 'im' 0 33 'jpb1' 0 34 'jpb2' 0 35 'jpband' 0 36 'ngb' 0 37 'ngptsw' -0 38 'parkind' 0 39 'parrrsw' 0 40 'rb' 0 41 'rrsw_cld' 0 42 'rrsw_vsn' -0 43 'rrsw_wvn' 0 44 'rrtmg_sw_cldprmc' 0 45 'ssaice2' 0 46 'ssaice3' 0 -47 'ssaliq1' 0 48 'wavenum1' 0 49 'wavenum2' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod deleted file mode 100644 index a2474976..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.mod +++ /dev/null @@ -1,206 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_cldprop.f90 -MD5:4fa1f2cb664658fb9150bd6cb2b23a15 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'abari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -3 'asyice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -4 'asyice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -5 'asyliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -6 'bbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -7 'cbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '5')) 0 () () () 0 0) -8 'cldprop_sw' 'rrtmg_sw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 9 0 (10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26) () -0 () () () 0 0) -27 'dbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -28 'ebari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -29 'extice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -30 'extice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -31 'extliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -32 'fbari' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '5')) 0 () () () 0 0) -33 'fdlice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -34 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -35 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -36 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -37 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -38 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -39 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -40 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -41 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -42 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -43 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -44 'rrsw_cld' 'rrsw_cld' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -45 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -46 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -47 'rrtmg_sw_cldprop' 'rrtmg_sw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -48 'ssaice2' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '43') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -49 'ssaice3' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '46') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -50 'ssaliq1' 'rrsw_cld' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '58') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '16') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -51 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -52 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -10 'nlayers' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -11 'inflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -12 'iceflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'liqflag' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -14 'cldfrac' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -15 'tauc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'ssac' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'asmc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'fsfc' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'ciwp' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'clwp' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'rei' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -22 'rel' '' '' 9 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'taucldorig' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -24 'taucloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -25 'ssacloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -26 'asmcloud' '' '' 9 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('abari' 0 2 'asyice2' 0 3 'asyice3' 0 4 'asyliq1' 0 5 'bbari' 0 6 'cbari' -0 7 'cldprop_sw' 0 8 'dbari' 0 27 'ebari' 0 28 'extice2' 0 29 'extice3' -0 30 'extliq1' 0 31 'fbari' 0 32 'fdlice3' 0 33 'hnamcld' 0 34 'hvrcld' -0 35 'im' 0 36 'jpb1' 0 37 'jpb2' 0 38 'jpband' 0 39 'nbndsw' 0 40 -'parkind' 0 41 'parrrsw' 0 42 'rb' 0 43 'rrsw_cld' 0 44 'rrsw_vsn' 0 45 -'rrsw_wvn' 0 46 'rrtmg_sw_cldprop' 0 47 'ssaice2' 0 48 'ssaice3' 0 49 -'ssaliq1' 0 50 'wavenum1' 0 51 'wavenum2' 0 52) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod deleted file mode 100644 index 2f8d7e70..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.mod +++ /dev/null @@ -1,177 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_init.f90 -MD5:e261a7ab4bdc020cca33b7420063214b -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'cmbgb16s' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -3 'cmbgb17' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -4 'cmbgb18' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -5 'cmbgb19' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -6 'cmbgb20' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -7 'cmbgb21' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -8 'cmbgb22' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -9 'cmbgb23' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -10 'cmbgb24' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -11 'cmbgb25' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -12 'cmbgb26' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -13 'cmbgb27' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -14 'cmbgb28' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -15 'cmbgb29' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -16 'delwave' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -17 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -18 'jpb1' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -19 'jpb2' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -20 'mg' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '16') () 0 () () () 0 0) -21 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -22 'ng' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -23 'ngb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) -24 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -25 'ngm' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '224')) 0 () () () 0 0) -26 'ngn' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '112')) 0 () () () 0 0) -27 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -28 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -29 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -30 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -31 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -32 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -33 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -34 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -35 'rrtmg_sw_ini' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 36 -0 (37) () 0 () () () 0 0) -38 'rrtmg_sw_init' 'rrtmg_sw_init' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -39 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -40 'rwgt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '224')) 0 () () () 0 0) -41 'swaerpr' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -42 'swatmref' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -43 'swcldpr' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () -() () 0 0) -44 'swcmbdat' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -45 'swdatinit' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 46 -0 (47) () 0 () () () 0 0) -48 'wavenum1' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -49 'wavenum2' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -50 'wt' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '16')) 0 () () () 0 0) -37 'cpdair' '' '' 36 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -47 'cpdair' '' '' 46 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -) - -('cmbgb16s' 0 2 'cmbgb17' 0 3 'cmbgb18' 0 4 'cmbgb19' 0 5 'cmbgb20' 0 6 -'cmbgb21' 0 7 'cmbgb22' 0 8 'cmbgb23' 0 9 'cmbgb24' 0 10 'cmbgb25' 0 11 -'cmbgb26' 0 12 'cmbgb27' 0 13 'cmbgb28' 0 14 'cmbgb29' 0 15 'delwave' 0 -16 'im' 0 17 'jpb1' 0 18 'jpb2' 0 19 'mg' 0 20 'nbndsw' 0 21 'ng' 0 22 -'ngb' 0 23 'ngc' 0 24 'ngm' 0 25 'ngn' 0 26 'ngptsw' 0 27 'ngs' 0 28 -'nspa' 0 29 'nspb' 0 30 'parkind' 0 31 'parrrsw' 0 32 'rb' 0 33 'rrsw_wvn' -0 34 'rrtmg_sw_ini' 0 35 'rrtmg_sw_init' 0 38 'rrtmg_sw_setcoef' 0 39 -'rwgt' 0 40 'swaerpr' 0 41 'swatmref' 0 42 'swcldpr' 0 43 'swcmbdat' 0 -44 'swdatinit' 0 45 'wavenum1' 0 48 'wavenum2' 0 49 'wt' 0 50) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod deleted file mode 100644 index 2ba67e3f..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.mod +++ /dev/null @@ -1,862 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_rad.nomcica.f90 -MD5:dd2c76a56c3fd51666c99721ab385a3d -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'cldprop_sw' 'rrtmg_sw_cldprop' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 3 0 (4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20) () 0 () -() () 0 0) -21 'earth_sun' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 FUNCTION IMPLICIT_PURE) (REAL 8 0 0 0 REAL -()) 22 0 (23) () 21 () () () 0 0) -24 'hnamatm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -25 'hnamclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -26 'hnamcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -27 'hnamext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -28 'hnamini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -29 'hnamkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -30 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -31 'hnamrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -32 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -33 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -34 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -35 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -36 'hnamutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -37 'hnamvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -38 'hvratm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -39 'hvrclc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -40 'hvrcld' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -41 'hvrext' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -42 'hvrini' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -43 'hvrkg' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -44 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -45 'hvrrtm' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -46 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -47 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -48 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -49 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -50 'hvrutl' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -51 'hvrvqd' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -52 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -53 'inatm_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) -54 0 (55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 -77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 -101 102 103 104 105 106 107 108 109 110 111 112 113) () 0 () () () 0 0) -114 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -115 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -116 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -117 'rrtmg_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 118 0 (119 120 121 122 123 124 125 126 127 128 129 130 131 -132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 -150 151 152 153 154 155 156 157 158 159 160 161 162 163) () 0 () () () 0 -0) -164 'rrtmg_sw_cldprop' 'rrtmg_sw_cldprop' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -165 'rrtmg_sw_rad' 'rrtmg_sw_rad' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -166 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -167 'rrtmg_sw_spcvrt' 'rrtmg_sw_spcvrt' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -168 'setcoef_sw' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( -UNKNOWN 0 0 0 0 UNKNOWN ()) 169 0 (170 171 172 173 174 175 176 177 178 -179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 -197 198 199 200 201) () 0 () () () 0 0) -202 'spcvrt_sw' 'rrtmg_sw_spcvrt' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 203 0 (204 205 206 207 208 209 210 211 212 213 214 215 216 -217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 -235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 -253 254 255 256 257 258 259 260 261 262 263 264 265 266) () 0 () () () 0 -0) -4 'nlayers' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -5 'inflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -6 'iceflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -7 'liqflag' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -8 'cldfrac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -9 'tauc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -10 'ssac' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -11 'asmc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -12 'fsfc' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -13 'ciwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -14 'clwp' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -15 'rei' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'rel' '' '' 3 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'taucldorig' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'taucloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'ssacloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'asmcloud' '' '' 3 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'idn' '' '' 22 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -55 'iplon' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -56 'nlay' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -57 'icld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -58 'iaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -59 'play' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -60 'plev' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'tlay' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'tlev' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'tsfc' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -64 'h2ovmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'o3vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -66 'co2vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'ch4vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'n2ovmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'o2vmr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'adjes' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -71 'dyofyr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -72 'scon' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -73 'inflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -74 'iceflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -75 'liqflgsw' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -76 'cldfr' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -77 'taucld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -78 'ssacld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -79 'asmcld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -80 'fsfcld' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -81 'cicewp' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -82 'cliqwp' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -83 'reice' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -84 'reliq' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -85 'tauaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -86 'ssaaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -87 'asmaer' '' '' 54 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -88 'nlayers' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -89 'pavel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -90 'pz' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -91 'pdp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'tavel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -93 'tz' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -94 'tbound' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -95 'coldry' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -96 'wkl' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -97 'adjflux' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -98 'solvar' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -99 'inflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -100 'iceflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -101 'liqflag' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -102 'cldfrac' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -103 'tauc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -104 'ssac' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -105 'asmc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -106 'fsfc' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -107 'ciwp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -108 'clwp' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -109 'rei' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -110 'rel' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -111 'taua' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -112 'ssaa' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -113 'asma' '' '' 54 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -119 'ncol' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -120 'nlay' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -121 'icld' '' '' 118 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -122 'iaer' '' '' 118 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -123 'play' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -124 'plev' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -125 'tlay' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -126 'tlev' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -127 'tsfc' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -128 'h2ovmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -129 'o3vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -130 'co2vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -131 'ch4vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -132 'n2ovmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -133 'o2vmr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -134 'asdir' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -135 'asdif' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -136 'aldir' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -137 'aldif' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -138 'coszen' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -139 'adjes' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -140 'dyofyr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -141 'scon' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -142 'inflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -143 'iceflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -144 'liqflgsw' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -145 'cldfr' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -146 'taucld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -147 'ssacld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -148 'asmcld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -149 'fsfcld' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -150 'cicewp' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -151 'cliqwp' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -152 'reice' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -153 'reliq' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -154 'tauaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -155 'ssaaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -156 'asmaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -157 'ecaer' '' '' 118 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -158 'swuflx' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -159 'swdflx' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -160 'swhr' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -161 'swuflxc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -162 'swdflxc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -163 'swhrc' '' '' 118 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -170 'nlayers' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -171 'pavel' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -172 'tavel' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -173 'pz' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -174 'tz' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -175 'tbound' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -176 'coldry' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -177 'wkl' '' '' 169 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -178 'laytrop' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -179 'layswtch' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -180 'laylow' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -181 'jp' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -182 'jt' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -183 'jt1' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -184 'co2mult' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -185 'colch4' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -186 'colco2' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -187 'colh2o' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -188 'colmol' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -189 'coln2o' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -190 'colo2' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -191 'colo3' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -192 'fac00' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -193 'fac01' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -194 'fac10' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -195 'fac11' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -196 'selffac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -197 'selffrac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -198 'indself' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -199 'forfac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -200 'forfrac' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -201 'indfor' '' '' 169 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -204 'nlayers' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -205 'istart' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -206 'iend' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -207 'icpr' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -208 'idelm' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -209 'iout' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -210 'pavel' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -211 'tavel' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -212 'pz' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -213 'tz' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -214 'tbound' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -215 'palbd' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -216 'palbp' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -217 'pclfr' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -218 'ptauc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -219 'pasyc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -220 'pomgc' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -221 'ptaucorig' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -222 'ptaua' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -223 'pasya' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -224 'pomga' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -225 'prmu0' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -226 'coldry' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -227 'wkl' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -228 'adjflux' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -229 'laytrop' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -230 'layswtch' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -231 'laylow' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -232 'jp' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -233 'jt' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -234 'jt1' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -235 'co2mult' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -236 'colch4' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -237 'colco2' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -238 'colh2o' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -239 'colmol' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -240 'coln2o' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -241 'colo2' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -242 'colo3' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -243 'fac00' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -244 'fac01' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -245 'fac10' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -246 'fac11' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -247 'selffac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -248 'selffrac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -249 'indself' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -250 'forfac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -251 'forfrac' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -252 'indfor' '' '' 203 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -253 'pbbfd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -254 'pbbfu' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -255 'pbbcd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -256 'pbbcu' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -257 'puvfd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -258 'puvcd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -259 'pnifd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -260 'pnicd' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -261 'pbbfddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -262 'pbbcddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -263 'puvfddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -264 'puvcddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -265 'pnifddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -266 'pnicddir' '' '' 203 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('cldprop_sw' 0 2 'earth_sun' 0 21 'hnamatm' 0 24 'hnamclc' 0 25 'hnamcld' -0 26 'hnamext' 0 27 'hnamini' 0 28 'hnamkg' 0 29 'hnamrft' 0 30 'hnamrtm' -0 31 'hnamset' 0 32 'hnamspc' 0 33 'hnamspv' 0 34 'hnamtau' 0 35 'hnamutl' -0 36 'hnamvqd' 0 37 'hvratm' 0 38 'hvrclc' 0 39 'hvrcld' 0 40 'hvrext' 0 -41 'hvrini' 0 42 'hvrkg' 0 43 'hvrrft' 0 44 'hvrrtm' 0 45 'hvrset' 0 46 -'hvrspc' 0 47 'hvrspv' 0 48 'hvrtau' 0 49 'hvrutl' 0 50 'hvrvqd' 0 51 'im' -0 52 'inatm_sw' 0 53 'parkind' 0 114 'rb' 0 115 'rrsw_vsn' 0 116 -'rrtmg_sw' 0 117 'rrtmg_sw_cldprop' 0 164 'rrtmg_sw_rad' 0 165 -'rrtmg_sw_setcoef' 0 166 'rrtmg_sw_spcvrt' 0 167 'setcoef_sw' 0 168 -'spcvrt_sw' 0 202) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod deleted file mode 100644 index 6f467cfb..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.mod +++ /dev/null @@ -1,88 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_reftra.f90 -MD5:89964f8ed0272f81caf4b90a5874bc99 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -4 'hnamrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -5 'hvrrft' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -7 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) -8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -10 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 11 0 (12 13 14 15 16 17 18 19 20 21) () 0 () () () 0 0) -22 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -23 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -24 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -25 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -12 'nlayers' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -13 'lrtchk' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -14 'pgg' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -15 'prmuz' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -16 'ptau' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'pw' '' '' 11 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'pref' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'prefd' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'ptra' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'ptrad' '' '' 11 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'exp_tbl' 0 3 'hnamrft' 0 4 'hvrrft' 0 5 'im' 0 6 'od_lo' 0 -7 'parkind' 0 8 'rb' 0 9 'reftra_sw' 0 10 'rrsw_tbl' 0 22 'rrsw_vsn' 0 -23 'rrtmg_sw_reftra' 0 24 'tblint' 0 25) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod deleted file mode 100644 index a1eea93d..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.mod +++ /dev/null @@ -1,161 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_setcoef.f90 -MD5:94054e97c82756c1201f8fc4908e81b7 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'hnamset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -3 'hvrset' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -6 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -7 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -8 'pref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -9 'preflog' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '59')) 0 () () () 0 0) -10 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -11 'rrsw_ref' 'rrsw_ref' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -12 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -13 'rrtmg_sw_setcoef' 'rrtmg_sw_setcoef' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -14 'setcoef_sw' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( -UNKNOWN 0 0 0 0 UNKNOWN ()) 15 0 (16 17 18 19 20 21 22 23 24 25 26 27 28 -29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47) () 0 () () () -0 0) -48 'swatmref' 'rrtmg_sw_setcoef' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 -0 () () 0 () () () 0 0) -49 'tref' 'rrsw_ref' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 EXPLICIT -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 -INTEGER ()) 0 '59')) 0 () () () 0 0) -16 'nlayers' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -17 'pavel' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'tavel' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'pz' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -20 'tz' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -21 'tbound' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -22 'coldry' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'wkl' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -24 'laytrop' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -25 'layswtch' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -26 'laylow' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -27 'jp' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'jt' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -29 'jt1' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -30 'co2mult' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -31 'colch4' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'colco2' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'colh2o' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'colmol' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'coln2o' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'colo2' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -37 'colo3' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'fac00' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'fac01' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -40 'fac10' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -41 'fac11' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -42 'selffac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -43 'selffrac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -44 'indself' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'forfac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -46 'forfrac' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -47 'indfor' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('hnamset' 0 2 'hvrset' 0 3 'im' 0 4 'mxmol' 0 5 'parkind' 0 6 'parrrsw' -0 7 'pref' 0 8 'preflog' 0 9 'rb' 0 10 'rrsw_ref' 0 11 'rrsw_vsn' 0 12 -'rrtmg_sw_setcoef' 0 13 'setcoef_sw' 0 14 'swatmref' 0 48 'tref' 0 49) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod deleted file mode 100644 index 327bd9bb..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.mod +++ /dev/null @@ -1,437 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_spcvmc.f90 -MD5:96dd8a17cdd4b86e4ea25015ac96e8a7 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -4 'hnamspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -5 'hvrspc' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -7 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -8 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -9 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -11 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -12 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -13 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) -14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 18 0 (19 20 21 22 23 24 25 26 27 28) () 0 () () () 0 0) -29 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -31 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -32 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -33 'rrtmg_sw_spcvmc' 'rrtmg_sw_spcvmc' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -34 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -35 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -36 'spcvmc_sw' 'rrtmg_sw_spcvmc' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 37 0 (38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 -55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 -79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100) () 0 -() () () 0 0) -101 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 102 0 (103 104 105 106 107 108 109 110 111 112 113 114 115 -116 117 118 119 120 121 122 123 124 125 126) () 0 () () () 0 0) -127 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -128 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( -UNKNOWN 0 0 0 0 UNKNOWN ()) 129 0 (130 131 132 133 134 135 136 137 138 -139 140 141 142) () 0 () () () 0 0) -19 'nlayers' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -20 'lrtchk' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'pgg' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -22 'prmuz' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -23 'ptau' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -24 'pw' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -25 'pref' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -26 'prefd' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -27 'ptra' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'ptrad' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'nlayers' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -39 'istart' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -40 'iend' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -41 'icpr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -42 'idelm' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -43 'iout' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -44 'pavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'tavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -46 'pz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -47 'tz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -48 'tbound' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -49 'palbd' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'palbp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -51 'pcldfmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -52 'ptaucmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -53 'pasycmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -54 'pomgcmc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -55 'ptaormc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -56 'ptaua' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'pasya' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'pomga' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'prmu0' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -60 'coldry' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'wkl' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'adjflux' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'laytrop' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -64 'layswtch' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -65 'laylow' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -66 'jp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'jt' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'jt1' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'co2mult' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'colch4' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'colco2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'colh2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -73 'colmol' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -74 'coln2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -75 'colo2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -76 'colo3' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -77 'fac00' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -78 'fac01' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -79 'fac10' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -80 'fac11' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -81 'selffac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -82 'selffrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -83 'indself' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -84 'forfac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -85 'forfrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -86 'indfor' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -87 'pbbfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -88 'pbbfu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -89 'pbbcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -90 'pbbcu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -91 'puvfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'puvcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -93 'pnifd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -94 'pnicd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -95 'pbbfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -96 'pbbcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -97 'puvfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -98 'puvcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -99 'pnifddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -100 'pnicddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -103 'nlayers' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -104 'colh2o' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -105 'colco2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -106 'colch4' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -107 'colo2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -108 'colo3' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -109 'colmol' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -110 'laytrop' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -111 'jp' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -112 'jt' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -113 'jt1' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -114 'fac00' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -115 'fac01' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -116 'fac10' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -117 'fac11' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -118 'selffac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -119 'selffrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -120 'indself' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -121 'forfac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -122 'forfrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -123 'indfor' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -124 'sfluxzen' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -125 'taug' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -126 'taur' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -130 'klev' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -131 'kw' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -132 'pref' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -133 'prefd' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -134 'ptra' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -135 'ptrad' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -136 'pdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -137 'prdnd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -138 'prup' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -139 'prupd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -140 'ptdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -141 'pfd' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -142 'pfu' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'exp_tbl' 0 3 'hnamspc' 0 4 'hvrspc' 0 5 'im' 0 6 'jpband' -0 7 'mxmol' 0 8 'nbndsw' 0 9 'ngc' 0 10 'ngptsw' 0 11 'ngs' 0 12 'od_lo' -0 13 'parkind' 0 14 'parrrsw' 0 15 'rb' 0 16 'reftra_sw' 0 17 'rrsw_tbl' -0 29 'rrsw_vsn' 0 30 'rrsw_wvn' 0 31 'rrtmg_sw_reftra' 0 32 -'rrtmg_sw_spcvmc' 0 33 'rrtmg_sw_taumol' 0 34 'rrtmg_sw_vrtqdr' 0 35 -'spcvmc_sw' 0 36 'taumol_sw' 0 101 'tblint' 0 127 'vrtqdr_sw' 0 128) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod deleted file mode 100644 index 786afd37..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.mod +++ /dev/null @@ -1,436 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_spcvrt.f90 -MD5:1bf065a8fd5fe6cc084343f2a6e70ffd -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'bpade' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -3 'exp_tbl' 'rrsw_tbl' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0 DIMENSION) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '10000')) 0 () () () 0 0) -4 'hnamspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -5 'hvrspv' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -6 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -7 'jpband' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '29') () 0 () () () 0 0) -8 'mxmol' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '38') () 0 () () () 0 0) -9 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -10 'ngc' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -11 'ngptsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '112') () 0 () () () 0 0) -12 'ngs' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -13 'od_lo' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.f5c28f5c28f5c0@-1') () 0 () () () 0 0) -14 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -15 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -16 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -17 'reftra_sw' 'rrtmg_sw_reftra' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 18 0 (19 20 21 22 23 24 25 26 27 28) () 0 () () () 0 0) -29 'rrsw_tbl' 'rrsw_tbl' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -30 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -31 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -32 'rrtmg_sw_reftra' 'rrtmg_sw_reftra' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -33 'rrtmg_sw_spcvrt' 'rrtmg_sw_spcvrt' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -34 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -35 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -36 'spcvrt_sw' 'rrtmg_sw_spcvrt' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 37 0 (38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 -55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 -79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100) () 0 -() () () 0 0) -101 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 102 0 (103 104 105 106 107 108 109 110 111 112 113 114 115 -116 117 118 119 120 121 122 123 124 125 126) () 0 () () () 0 0) -127 'tblint' 'rrsw_tbl' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () (CONSTANT ( -REAL 8 0 0 0 REAL ()) 0 '0.27100000000000@4') () 0 () () () 0 0) -128 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( -UNKNOWN 0 0 0 0 UNKNOWN ()) 129 0 (130 131 132 133 134 135 136 137 138 -139 140 141 142) () 0 () () () 0 0) -19 'nlayers' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -20 'lrtchk' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (LOGICAL 4 0 0 0 LOGICAL ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'pgg' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -22 'prmuz' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -23 'ptau' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -24 'pw' '' '' 18 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -25 'pref' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -26 'prefd' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -27 'ptra' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'ptrad' '' '' 18 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'nlayers' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -39 'istart' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -40 'iend' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -41 'icpr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -42 'idelm' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -43 'iout' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -44 'pavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -45 'tavel' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -46 'pz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -47 'tz' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '0') ()) 0 () () () 0 0) -48 'tbound' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -49 'palbd' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -50 'palbp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -51 'pclfr' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -52 'ptauc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -53 'pasyc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -54 'pomgc' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -55 'ptaucorig' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -56 'ptaua' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -57 'pasya' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -58 'pomga' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -59 'prmu0' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -60 'coldry' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -61 'wkl' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -62 'adjflux' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -63 'laytrop' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -64 'layswtch' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -65 'laylow' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -66 'jp' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'jt' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'jt1' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'co2mult' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'colch4' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'colco2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'colh2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -73 'colmol' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -74 'coln2o' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -75 'colo2' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -76 'colo3' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -77 'fac00' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -78 'fac01' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -79 'fac10' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -80 'fac11' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -81 'selffac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -82 'selffrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -83 'indself' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -84 'forfac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -85 'forfrac' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -86 'indfor' '' '' 37 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -87 'pbbfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -88 'pbbfu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -89 'pbbcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -90 'pbbcu' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -91 'puvfd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'puvcd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -93 'pnifd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -94 'pnicd' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -95 'pbbfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -96 'pbbcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -97 'puvfddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -98 'puvcddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -99 'pnifddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -100 'pnicddir' '' '' 37 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -103 'nlayers' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -104 'colh2o' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -105 'colco2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -106 'colch4' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -107 'colo2' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -108 'colo3' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -109 'colmol' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -110 'laytrop' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -111 'jp' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -112 'jt' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -113 'jt1' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -114 'fac00' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -115 'fac01' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -116 'fac10' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -117 'fac11' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -118 'selffac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -119 'selffrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -120 'indself' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -121 'forfac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -122 'forfrac' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -123 'indfor' '' '' 102 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -124 'sfluxzen' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -125 'taug' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -126 'taur' '' '' 102 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -130 'klev' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -131 'kw' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -132 'pref' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -133 'prefd' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -134 'ptra' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -135 'ptrad' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -136 'pdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -137 'prdnd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -138 'prup' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -139 'prupd' '' '' 129 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -140 'ptdbt' '' '' 129 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -141 'pfd' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -142 'pfu' '' '' 129 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('bpade' 0 2 'exp_tbl' 0 3 'hnamspv' 0 4 'hvrspv' 0 5 'im' 0 6 'jpband' -0 7 'mxmol' 0 8 'nbndsw' 0 9 'ngc' 0 10 'ngptsw' 0 11 'ngs' 0 12 'od_lo' -0 13 'parkind' 0 14 'parrrsw' 0 15 'rb' 0 16 'reftra_sw' 0 17 'rrsw_tbl' -0 29 'rrsw_vsn' 0 30 'rrsw_wvn' 0 31 'rrtmg_sw_reftra' 0 32 -'rrtmg_sw_spcvrt' 0 33 'rrtmg_sw_taumol' 0 34 'rrtmg_sw_vrtqdr' 0 35 -'spcvrt_sw' 0 36 'taumol_sw' 0 101 'tblint' 0 127 'vrtqdr_sw' 0 128) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod deleted file mode 100644 index 52f5c798..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.mod +++ /dev/null @@ -1,134 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_taumol.f90 -MD5:1d1cf32257ad0b87cf9f87939999be72 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'hnamtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '20'))) 0 0 () () 0 () () () 0 0) -3 'hvrtau' 'rrsw_vsn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (CHARACTER 1 0 0 0 CHARACTER ((CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '18'))) 0 0 () () 0 () () () 0 0) -4 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -5 'nspa' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -6 'nspb' 'rrsw_wvn' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -EXPLICIT-SAVE 0 0 DIMENSION) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 -EXPLICIT (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '16') (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '29')) 0 () () () 0 0) -7 'oneminus' 'rrsw_con' '' 1 ((VARIABLE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN EXPLICIT-SAVE 0 0) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 -0) -8 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -9 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -10 'rrsw_con' 'rrsw_con' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -11 'rrsw_vsn' 'rrsw_vsn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -12 'rrsw_wvn' 'rrsw_wvn' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 -0) -13 'rrtmg_sw_taumol' 'rrtmg_sw_taumol' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -14 'taumol_sw' 'rrtmg_sw_taumol' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 -0 UNKNOWN ()) 15 0 (16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 -33 34 35 36 37 38 39) () 0 () () () 0 0) -16 'nlayers' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -17 'colh2o' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'colco2' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'colch4' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'colo2' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -21 'colo3' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -22 'colmol' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -23 'laytrop' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -24 'jp' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -25 'jt' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -26 'jt1' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -27 'fac00' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -28 'fac01' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -29 'fac10' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -30 'fac11' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -31 'selffac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -32 'selffrac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -33 'indself' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -34 'forfac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -35 'forfrac' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -36 'indfor' '' '' 15 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () (1 0 ASSUMED_SHAPE -(CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -37 'sfluxzen' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -38 'taug' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -39 'taur' '' '' 15 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('hnamtau' 0 2 'hvrtau' 0 3 'im' 0 4 'nspa' 0 5 'nspb' 0 6 'oneminus' 0 -7 'parkind' 0 8 'rb' 0 9 'rrsw_con' 0 10 'rrsw_vsn' 0 11 'rrsw_wvn' 0 12 -'rrtmg_sw_taumol' 0 13 'taumol_sw' 0 14) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod deleted file mode 100644 index 018ece05..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.mod +++ /dev/null @@ -1,73 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/sw/src/rrtmg_sw_vrtqdr.f90 -MD5:7ab83aadad9ef5a989a9f83e37cfa9bf -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 'kind_im' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '4') () 0 () () () 0 0) -3 'parkind' 'parkind' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -4 'kind_rb' 'parkind' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '8') () 0 () () () 0 0) -5 'rrtmg_sw_vrtqdr' 'rrtmg_sw_vrtqdr' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -6 'vrtqdr_sw' 'rrtmg_sw_vrtqdr' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IMPLICIT_PURE ALWAYS_EXPLICIT) ( -UNKNOWN 0 0 0 0 UNKNOWN ()) 7 0 (8 9 10 11 12 13 14 15 16 17 18 19 20) () -0 () () () 0 0) -8 'klev' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -9 'kw' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -10 'pref' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -11 'prefd' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -12 'ptra' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -13 'ptrad' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -14 'pdbt' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -15 'prdnd' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -16 'prup' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -17 'prupd' '' '' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -18 'ptdbt' '' '' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -19 'pfd' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -20 'pfu' '' '' 7 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -) - -('im' 0 2 'parkind' 0 3 'rb' 0 4 'rrtmg_sw_vrtqdr' 0 5 'vrtqdr_sw' 0 6) diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod deleted file mode 100644 index 3f8b430e..00000000 --- a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.mod +++ /dev/null @@ -1,434 +0,0 @@ -GFORTRAN module version '10' created from /Users/meyerbe/Dropbox/ClimatePhysics/Code/LES/pyclesmpi/RRTMG/rrtmg_build/rrtmg_sw_wrapper.f90 -MD5:31853933bd25df23a092dcad238618d7 -- If you edit this, you'll get what you deserve. - -(() () () () () () () () () () () () () () () () () () () () () () () -() () () ()) - -() - -() - -() - -() - -() - -(2 '__iso_c_binding' '__iso_c_binding' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 INTRINSIC) (UNKNOWN 0 0 0 0 UNKNOWN ()) -0 0 () () 0 () () () 2 0) -3 'c_double' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 -REAL ()) 0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '8') () 0 () () -() 2 25) -4 'c_int' '__iso_c_binding' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN UNKNOWN 0 0 IS_C_INTEROP IS_ISO_C) (INTEGER 4 0 1 1 INTEGER ()) -0 0 () (CONSTANT (INTEGER 4 0 1 1 UNKNOWN ()) 0 '4') () 0 () () () 2 0) -5 'c_rrtmg_sw' 'rrtmg_sw_wrapper' 'c_rrtmg_sw' 1 ((PROCEDURE -UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C -IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 6 0 (7 8 9 10 11 12 13 14 15 -16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 -40 41 42 43 44 45 46 47 48 49 50 51) () 0 () () () 0 0) -52 'c_rrtmg_sw_init' 'rrtmg_sw_wrapper' 'c_rrtmg_sw_init' 1 ((PROCEDURE -UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE IS_BIND_C -IS_C_INTEROP) (UNKNOWN 0 0 1 0 UNKNOWN ()) 53 0 (54) () 0 () () () 0 0) -55 'naerec' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6') () 0 () () () 0 0) -56 'nbndsw' 'parrrsw' '' 1 ((PARAMETER UNKNOWN-INTENT UNKNOWN-PROC -UNKNOWN IMPLICIT-SAVE 0 0) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14') () 0 () () () 0 0) -57 'parrrsw' 'parrrsw' '' 1 ((MODULE UNKNOWN-INTENT UNKNOWN-PROC UNKNOWN -UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () 0 () () () 0 0) -58 'rrtmg_sw' 'rrtmg_sw_rad' '' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC -DECL UNKNOWN 0 0 SUBROUTINE ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 0 UNKNOWN ()) -59 0 (60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 -82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 -104) () 0 () () () 0 0) -105 'rrtmg_sw_ini' 'rrtmg_sw_init' '' 1 ((PROCEDURE UNKNOWN-INTENT -MODULE-PROC DECL UNKNOWN 0 0 SUBROUTINE) (UNKNOWN 0 0 0 0 UNKNOWN ()) -106 0 (107) () 0 () () () 0 0) -108 'rrtmg_sw_init' 'rrtmg_sw_init' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -109 'rrtmg_sw_rad' 'rrtmg_sw_rad' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -110 'rrtmg_sw_wrapper' 'rrtmg_sw_wrapper' '' 1 ((MODULE UNKNOWN-INTENT -UNKNOWN-PROC UNKNOWN UNKNOWN 0 0) (UNKNOWN 0 0 0 0 UNKNOWN ()) 0 0 () () -0 () () () 0 0) -7 'ncol' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -8 'nlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) ( -INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -9 'icld' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -10 'iaer' '' '' 6 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -11 'play' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -12 'plev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -13 'tlay' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -14 'tlev' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -15 'tsfc' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -16 'h2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -17 'o3vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -18 'co2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -19 'ch4vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -20 'n2ovmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -21 'o2vmr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -22 'asdir' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -23 'asdif' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -24 'aldir' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -25 'aldif' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -26 'coszen' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (1 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ())) 0 () () () 0 0) -27 'adjes' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) -28 'dyofyr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -29 'scon' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) -30 'inflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -31 'iceflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -32 'liqflgsw' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 1 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -33 'cldfr' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -34 'taucld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -35 'ssacld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -36 'asmcld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -37 'fsfcld' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '14') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -38 'cicewp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -39 'cliqwp' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -40 'reice' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -41 'reliq' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -42 'tauaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -43 'ssaaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -44 'asmaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '14')) 0 () () () 0 0) -45 'ecaer' '' '' 6 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (3 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) -0 '1') (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '6')) 0 () () () 0 0) -46 'swuflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -47 'swdflx' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -48 'swhr' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -49 'swuflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -50 'swdflxc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (OP (INTEGER 4 0 1 -0 INTEGER ()) 0 PLUS (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) 0 8 ()) ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1'))) 0 () () () 0 0) -51 'swhrc' '' '' 6 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () (2 0 EXPLICIT (CONSTANT ( -INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE (INTEGER 4 0 1 0 INTEGER ()) -0 7 ()) (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') (VARIABLE ( -INTEGER 4 0 1 0 INTEGER ()) 0 8 ())) 0 () () () 0 0) -54 'cpdair' '' '' 53 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 1 0 REAL ()) 0 0 () () 0 () () () 0 0) -60 'ncol' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -61 'nlay' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -62 'icld' '' '' 59 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -63 'iaer' '' '' 59 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -64 'play' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -65 'plev' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -66 'tlay' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -67 'tlev' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -68 'tsfc' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -69 'h2ovmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -70 'o3vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -71 'co2vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -72 'ch4vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -73 'n2ovmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -74 'o2vmr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -75 'asdir' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -76 'asdif' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -77 'aldir' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -78 'aldif' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -79 'coszen' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (1 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -80 'adjes' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -81 'dyofyr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -82 'scon' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 DUMMY) -(REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -83 'inflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -84 'iceflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -85 'liqflgsw' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (INTEGER 4 0 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -86 'cldfr' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -87 'taucld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -88 'ssacld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -89 'asmcld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -90 'fsfcld' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -91 'cicewp' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -92 'cliqwp' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -93 'reice' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -94 'reliq' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -95 'tauaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -96 'ssaaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -97 'asmaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -98 'ecaer' '' '' 59 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (3 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') ()) -0 () () () 0 0) -99 'swuflx' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -100 'swdflx' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -101 'swhr' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -102 'swuflxc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -103 'swdflxc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -104 'swhrc' '' '' 59 ((VARIABLE OUT UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DIMENSION DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () (2 0 ASSUMED_SHAPE ( -CONSTANT (INTEGER 4 0 0 0 INTEGER ()) 0 '1') () (CONSTANT (INTEGER 4 0 0 -0 INTEGER ()) 0 '1') ()) 0 () () () 0 0) -107 'cpdair' '' '' 106 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN 0 0 -DUMMY) (REAL 8 0 0 0 REAL ()) 0 0 () () 0 () () () 0 0) -) - -('__iso_c_binding' 0 2 'c_double' 0 3 'c_int' 0 4 'c_rrtmg_sw' 0 5 -'c_rrtmg_sw_init' 0 52 'naerec' 0 55 'nbndsw' 0 56 'parrrsw' 0 57 -'rrtmg_sw' 0 58 'rrtmg_sw_ini' 0 105 'rrtmg_sw_init' 0 108 'rrtmg_sw_rad' -0 109 'rrtmg_sw_wrapper' 0 110) From a8470d12260ba1438dbc5db8cf9b75d193bf3142 Mon Sep 17 00:00:00 2001 From: Bettina Meyer Date: Tue, 24 May 2016 14:21:25 +0200 Subject: [PATCH 198/511] adding RRTMG --- RRTMG/rrtmg_build/obj_rrtmg/parkind.o | Bin 0 -> 184 bytes RRTMG/rrtmg_build/obj_rrtmg/parrrsw.o | Bin 0 -> 184 bytes RRTMG/rrtmg_build/obj_rrtmg/parrrtm.o | Bin 0 -> 184 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.o | Bin 0 -> 812 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.o | Bin 0 -> 952 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.o | Bin 0 -> 1008 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.o | Bin 0 -> 888 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.o | Bin 0 -> 1012 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.o | Bin 0 -> 844 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.o | Bin 0 -> 1004 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.o | Bin 0 -> 936 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.o | Bin 0 -> 1012 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.o | Bin 0 -> 1420 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.o | Bin 0 -> 1012 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.o | Bin 0 -> 844 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.o | Bin 0 -> 1008 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.o | Bin 0 -> 688 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.o | Bin 0 -> 1020 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.o | Bin 0 -> 924 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.o | Bin 0 -> 772 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.o | Bin 0 -> 924 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.o | Bin 0 -> 2284 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.o | Bin 0 -> 524 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.o | Bin 0 -> 608 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.o | Bin 0 -> 1396 bytes RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.o | Bin 0 -> 1184 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.o | Bin 0 -> 492 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.o | Bin 0 -> 1000 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.o | Bin 0 -> 952 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.o | Bin 0 -> 960 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.o | Bin 0 -> 876 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.o | Bin 0 -> 768 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.o | Bin 0 -> 1080 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.o | Bin 0 -> 764 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.o | Bin 0 -> 532 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.o | Bin 0 -> 672 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.o | Bin 0 -> 712 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.o | Bin 0 -> 1040 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.o | Bin 0 -> 3684 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.o | Bin 0 -> 484 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.o | Bin 0 -> 568 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.o | Bin 0 -> 1476 bytes RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.o | Bin 0 -> 852 bytes .../rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.o | Bin 0 -> 3800 bytes .../rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.o | Bin 0 -> 7156 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.o | Bin 0 -> 79112 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_k_g.o | Bin 0 -> 6123940 bytes .../obj_rrtmg/rrtmg_lw_rad.nomcica.o | Bin 0 -> 39404 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.o | Bin 0 -> 12168 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.o | Bin 0 -> 12060 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.o | Bin 0 -> 15212 bytes .../rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.o | Bin 0 -> 78512 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.o | Bin 0 -> 95228 bytes .../rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.o | Bin 0 -> 4688 bytes .../rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.o | Bin 0 -> 7880 bytes .../rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.o | Bin 0 -> 9496 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.o | Bin 0 -> 108372 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_k_g.o | Bin 0 -> 5112160 bytes .../obj_rrtmg/rrtmg_sw_rad.nomcica.o | Bin 0 -> 48032 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.o | Bin 0 -> 3424 bytes .../rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.o | Bin 0 -> 7764 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.o | Bin 0 -> 20124 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.o | Bin 0 -> 19900 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.o | Bin 0 -> 56380 bytes RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.o | Bin 0 -> 2908 bytes .../rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.o | Bin 0 -> 4976 bytes RRTMG/rrtmg_build/rrtmg_combined.o | Bin 0 -> 11635208 bytes 72 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parkind.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrsw.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/parrrtm.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg04.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg05.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg07.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg10.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg11.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg13.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg14.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg16.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ncpar.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_ref.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_vsn.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg16.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg18.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg24.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg26.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg27.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg28.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg29.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ncpar.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_ref.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_vsn.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_init.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_k_g.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rad.nomcica.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrn.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmc.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_rtrnmr.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_setcoef.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_taumol.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_wrapper.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprmc.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_cldprop.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_init.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_k_g.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_rad.nomcica.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_reftra.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_setcoef.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvmc.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_spcvrt.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_taumol.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_vrtqdr.o create mode 100644 RRTMG/rrtmg_build/obj_rrtmg/rrtmg_sw_wrapper.o create mode 100644 RRTMG/rrtmg_build/rrtmg_combined.o diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parkind.o b/RRTMG/rrtmg_build/obj_rrtmg/parkind.o new file mode 100644 index 0000000000000000000000000000000000000000..9f43ce2d80f1f41508a4c74aaa1a001bceeafc60 GIT binary patch literal 184 zcmX^A>+L^w1_nlE1|R{&Gk`RM0*GK>kOX2dAI!r|>_C$On#lmdATvQAKE5Qiq6ET* U@Izc9LJ)j(7P@&r`37V)06RttumAu6 literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.o b/RRTMG/rrtmg_build/obj_rrtmg/parrrsw.o new file mode 100644 index 0000000000000000000000000000000000000000..9f43ce2d80f1f41508a4c74aaa1a001bceeafc60 GIT binary patch literal 184 zcmX^A>+L^w1_nlE1|R{&Gk`RM0*GK>kOX2dAI!r|>_C$On#lmdATvQAKE5Qiq6ET* U@Izc9LJ)j(7P@&r`37V)06RttumAu6 literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.o b/RRTMG/rrtmg_build/obj_rrtmg/parrrtm.o new file mode 100644 index 0000000000000000000000000000000000000000..9f43ce2d80f1f41508a4c74aaa1a001bceeafc60 GIT binary patch literal 184 zcmX^A>+L^w1_nlE1|R{&Gk`RM0*GK>kOX2dAI!r|>_C$On#lmdATvQAKE5Qiq6ET* U@Izc9LJ)j(7P@&r`37V)06RttumAu6 literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_cld.o new file mode 100644 index 0000000000000000000000000000000000000000..79981e5e2c3b7b4f66f84250b45f3c086e9a3c74 GIT binary patch literal 812 zcmX^A>+L^w1_nlE1|R{%Ao>G{p#a1{APK}BAU+Q8!4o1Oz=Wy*XeI*)vp|L8<4aO2 zN)T$|<3n5{LJ)j(7P@&r`37V)@$m(v@kzzSrclB7co)YIM`RTc_64Z>Ks;6?X>>2a z%rl0nK{pR(jsTJwps<1gT;`cT6`-5<02XdA1AsIvtUyBO=7EA&0*FE30t(j#AiV}i za|3Yz5F-Ov*dvP(%bo~S$Pe_`4XFDnL42UYVD3!>@quFxX&`Sg008@5Wf}kg literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_con.o new file mode 100644 index 0000000000000000000000000000000000000000..1e8b31bbf5f73b0e5a6ea3b01ca717a259792f92 GIT binary patch literal 952 zcmbW0y-veG495=`KwwL0Dzy>|qC&FTpS1 zbMQ0x7;M2!@GZCj?ttanh#j%ZKD#+7wGZ9`^ZI!ms1y;UX?Ra2j_CTPO*Sxt2Uqn? zWHU!j^}s}@_40`$C!vnaohwfqDUO2aB$`>LFb;G!)W*?Ash+!{wtOo`9)`0;-3${> aMq~GmejH|x&JaD1M|$AOVQi=J8~p;kOr19X literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg01.o new file mode 100644 index 0000000000000000000000000000000000000000..19c5a6fb95e5cbd9ba49e99e9dc6e75a22bea26f GIT binary patch literal 1008 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0^l;SfZ;0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&LoU9~^)v^MUdALHI^cegl** z4&^gI`G0}RK>8Q#g{Xf7r(pc;5c#c8{(@-`{v4QmFNEI$K?pw# zCeH!k+d}!Uz*L6uA=2P91avZMfhR;j2uOkW0U}TZ@kK>B<6xr literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg02.o new file mode 100644 index 0000000000000000000000000000000000000000..74f47560ee46656ee00d63662df01a665ddcb539 GIT binary patch literal 888 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0_wVF^UM0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&L+5zZr3m}^t$PPf#2V#Q6Kp5sXkQlK*7HB3vNaJFN4i*@HA%y=5NP*-R zEP(LOL-`6&{#Gdez;M1& literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg03.o new file mode 100644 index 0000000000000000000000000000000000000000..e22445cd8fc631558ccb775c3f5b5d1c53c1ffca GIT binary patch literal 1012 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU=|Ky8VgvW0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&LZJ nNyK4JT2W#$&+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0^Fp$nvgfuR7T2MGYpWB_3%s91b_ zNoqw2LP30dh-*X$f{)HZHxDS^fUG7yzMwQdskqn_Di|N{;uzwHtOCM@xevr+MUqBy zF4&zCKzWe8JV4q2=x`Yzn;XauK+*?dazQc7Z)nnZxy(Q_`GFc2bU?!G6;L&p-v;4d zfbp9k{H;*FLLG!Z8_IuB4dFLH`3aQ}el|=#1me0dm^>$t0R*-{46+Xv7|Jj{kOl!z zxBxM$024&N5S0JnKS&k`;){xM%Hy-s4NUY>3-t`*(F6>E0`Ukn@xJ~p@x`e*X+^1N v`8Z`TC9;#SsLoErBA8Z`m<%)=n|hcOrtwf2Jmw{0(Uf0=-4|(K2?hoL$EZ&7K33op1k{o!QOw=lge2sn)#04?3+w3bxVFHqpPzXvXJwp%lhc zQ!_kMk5W&h8JXvyUet2{#t$&cbC)*(27Rwz&)}HnBWl-VW88Ai z4b-Xc8m&0^Gsepp4{LQ4uCUA94EbLS@XS>#EROWMoii)up0KO+E#a=_mef0%Kd~E~ zrw%lKFcUr7&>+i_M~H7bt`pun9WXWyaRaIxxVRiZ9wt#1M(IqYDa0d7cI>Bcmv$}LzBSvP m9A$oh)7Tn_)a<~Dt&d2SqBOH#J1T`{K@cQ8%S~vTp8gMpbESm< literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg06.o new file mode 100644 index 0000000000000000000000000000000000000000..c3aff1f2640dbbd219538e4ef20e3738ca7ee8ee GIT binary patch literal 936 zcmZ{h%}T>S5XVQQcqo3J^d_FAGzBXvLJI9s>>-EVh8PpUR#KCS9`gdehmTSE0zQB* z;Kh?S58}-3ELoDx!er++|M_C`@%#O^39z;S^daMW%+3)RokOxO<+(q_rH;?J#yZp! z*w!V6xQJgDWddR_ngk_Ry=p(w3p)pK{*1SIekwu4;UE~;8QM4dF|{nYvaZ_mfOMX_ zP4}1PGGORUyXd|2#S;WNN-V-o9ZL>F^tnwftR$0GMU77o6UA`+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`5A(RO$Q2^3|1b}8TfG|XsfgwJ= zB(swOpcv*iG-P`-l@gdYZz=Ya5Sp?p|iD#Q2?X>b|>I+0Z&0wMr12EmNW!8ACWYxLs0=oXU{Y8#8(!39k_V literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg08.o new file mode 100644 index 0000000000000000000000000000000000000000..38f8342064f68e4b2920228eccffe64bfd413aa0 GIT binary patch literal 1420 zcma))Jxc>Y5Qf)}U}0gjiWVZ+hvb4Ff{=h#5=;@qZnz|Of=Rr1iD;p4wUvd1Ru;Ba z7GimSK*Ywz#=>v#4_JsZyR+oD?12Mwx6iyYvva$5|MUGjCdAN)zy~_LE3}wHN1I0f zkSp^e{8I4_)kF+?3i4r&0rZ@MUOxe#y1H5Ib9@!=hk6jr0qE>Ot=nDTAizqgT8d_< zwVsbC6_I1($~iNr)4ntKPUArw;_&0Ru0-l+NqOY@+bH&5bFgRvJ>YXIGYjSdbNHz` zW|)i2v?2;#=nMRPhC~I8l7e9MGkpblOwZsiuU&Tcjbu|OUJ(9ePL`U-TNmg_sNm#7R1&6)@8 z9m`N6mAYpcYfQn!KF~I|v2km!U}!~xc_vblnwc6UZIIYMp}p(dbv)Uc;heNIxIHU& ka*=H)@_h3Zx>6V{sJnH`vK!lmU9@B@%9}17EAp231D^;OI{*Lx literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg09.o new file mode 100644 index 0000000000000000000000000000000000000000..26addfe150b9b130446dcc65fdf881afb6968f17 GIT binary patch literal 1012 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`5A(RO$Q2^3|1b}8TfG|XsfgwJ= zB(swOpcv*iG-P`-l@gdYZz=Ya5Sp?p|iD#Q2?X>b|>I+0Z&0wMr12Emz-Bj03e#0k8Eh88q_AkpFTx&HX+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0^lVIf4k0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&Lkl)VB{VE#M^{{ob+ z0OfCm@)yj7$j^rI6QKMCDF4A6hLun_!e)K0KJ%z=#{*3#FoQIym+ zzJryGFCZw+WM)aoZCsel{N_J1nQY#_zkcVHnweAhKqEh-U=t0`2HIyCxgYr}=f~7j zJ2+F3%}NenqOT`a0YI>S5>(ubn)6W4>oox5ONg>;N0I=8e$cO1aBTM@>eS@My5*kh zsMC9w$>ZWV#tRq^Ykd?hirH^#$p50onM*YLh06{sKQs4)ec?6X;)(SibY;Krhp-ZU z6ZRjuo*dN|_skDgzhk};&TpBGuv%e0wmSVxJbP#~&tB%1W%P7#U9wKGTcTPO_UTgT zK$?!OAUX5AuD06xUX;k literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg12.o new file mode 100644 index 0000000000000000000000000000000000000000..5529fdcbb098f95c61f6f9c383789c91697ed3de GIT binary patch literal 688 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`bfGJ2Z1499Xf-3@=$pFGkP?7lf zlGKV4xHLn2e28mA2!fB!LN^a6-+-(pKE9wdKB>6a6e<`W@8THZh^zv_hPe;KV?~li zb1vAO5s;k)4P|by`tkGSD1+QkW*C;Y zH(+FijRi3xF(7`Q<0w&jf+Z*Z{M(Lml9!*)-#MkGW)v=PzPC7V;IIw&hmPzQXKh*w z1MbNfW-4~0Dn&H(Z-;3CQM-B4PB|at=RqH3YlsF{Ep00o}ZB`vtop%GG>og&B>f5Trs>aJX$flDXf+Z&kMgT z8vf#45S|Oa3af7v!k&c3?}i_Qokv!cx`*q1x*FBBuv0O7Cj87V4Qs-={$N(4+7eC< zm)lrRjGqcGIfs&=DC*x(ue(#L`j^#h!k>|*=;*jXvEL6OKL`tzNulS3bP?8ULP6d| rLnqv|bQr}d*ph`~SeR@GBDaH=^ZtJHuoQj-Y3}D`v>L| ztOdc^LY#N|mRmO$!3T5uX6Eg%yZ8F_@x7?jTtndl@LF&a0H`fskNK>6G{%cJgG|NX zJT9Vfd^0w^;o-q)SaHAe^Wf+14AI3E4YF)kM52B#?70)Be|xC3X4NY1xHzB5>&lFu zXLAB4W5MbDym@$=0N-N;YYw4>ei{8S;MNidgZKQm8pvG3#zOA-j)0Qio1_VI{De>O zpT!TvzZ2iyFBiXH1C;`t7u=Rqod_@FG53Wl;oFv*@$#K<#OBkg5jL7(S`V)& zJ@0he@nw65)Ni2!fhvg(kNT9w!$il)Xr?o5q=TC2G^!C39i1V(Zr)nc@#6fE7u9SU L>H1qFrJ>Xh)JcxU literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_kg15.o new file mode 100644 index 0000000000000000000000000000000000000000..f745bdc3d8e968dbfa817aeaf9e1d5e1fec2d029 GIT binary patch literal 772 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`bz(kN@28IF%1y=+#lL3U8pd#_{ zC8-r9aA}74_z>5K5Ck8cg>D{Dz5!WHe0)J^d{S|-DO4~%-o-J*5m^O<4Rare$BHD4 z=3KBlC4llEd%1wL0MOxIfHXG{2LLfL-~@6&7~KqHHMrO}ffD>cvm2n{b^yljhnThu z%74%Y;dev%30)9=F_gcc9>R}<@)e?i3?Og?VvzX@pq|x%@?oAAg7JYg2!KohV%7;N zU@ikgd{I$Od3<)dp{ZVKp`JlJFs2Yf@xJ~p@x`e*X+^1N`8Z`TC9)Iq<8$+juu5PP e#I884C@~pmaUvF*VN#ferR5i4cPvB#+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+N-VL3$d0Gb-0nG7HdG7kje<4aO2 zN+4_qKg2a61i?pVp_>PkZ$MTPA74-!pHy6I3KfixcX14HL{WHhmtg%@9xXvb%&0vxVGZQvj zT3AsFDHVN^;*0(PLhGCKr3)==pK3vbQu?q3K?Q{h`k>&)?@Z2+%(W{Xa_8LNIlpu6 zIl1@F+CO;4Yzhyhh<)ghAlqg@0jcUHrybr8G z)?kls=d)|F>RAoDmr(6j=lXu&_5MV&WSYdrQr>mg8g_+>Y@0An!@rg+2_YUqfhQ&j zLx@9zYNT^9SS#RrNxo!upC9NxJ!*De{z4mYq1NcA7i9c2DKAoY)~1rY>Yv-E4B*#EiuL?DuXUo zjPa?;NT`f$Dr1ex$f^u#Keh^;yI7^Pu`$NyeMaEq&+W;)ZtpiQQp@1oUo2+Qd&6ll zlfahDV-A}}4TpKb`FSe-)Y8*T9Mllc?Brnbz(EmB*~lM=MO>!Hm73fYaL zzU}!&!=AIfY1=4zZfn}@7=^miumXFsHs?EK-zc~h+ZZ1^VzlPUb=z;W9Aj##bZEa( zpEVk8r45_mdG%S@EVnFgdv*5?%Ka|MPx~$w^z-rUxUV($XNK;|yaR z8cUxdjsBAVKqs+q^gUW4jDmD}pFk)sh4~U~0|c=mMGuzWp;Nd-(fj>J!g$jxaC{MX zfG$oc_=-|3`zKr;nkdQ{JFxf^hv)ZyD3PBIxexzL)%60;YT_f>z(uhof13w9 zejsN(C$I+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0_wLkJ>X0Mdg5fMzm)FcVZPKE5Qi zq6DEJK0d@XA_T!lXQ7)1ly5**6CYnt8lO~LYzh^Ok9TnlaYR-DVZ+=9;;|x0qd6Ds zP6?nq$X*s8y#Ywa0BLR@4gg|g0Fnn`a)2{X6F)Fe7C;@N2jw3C1w0Ul0WnDa0n~vY x3dDzl`1tsuqMY*hqSUl_Uw@bQ5+H*CU9bQsn3JE5RUAVwIU_SZH>a3^0RUD9IClU5 literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_tbl.o new file mode 100644 index 0000000000000000000000000000000000000000..34b63c125daa1b2c2b004cbfae8cb5dc2ea9e64b GIT binary patch literal 608 zcma)3y$%6E82tQ&M4_eg3L+9E357x^uF!p4oJ!yEr+ z`dnQS=wbS<6w!-x1I3K5+we7@3KI2!9HLhRcQ?NXevypQB(%{Mf z&yl47#28Bv7y@>2|E00XKl>hZB?L+G)i~o@ttAtf`{R6wFOfMpze`nDtNB(Vf3E#O ZN2A$-J${J8Pc~oqU>APn{cti3M4nVVLsxqx0&5muJi8VLi?65$O-)DoF|yMardWDZArm{@b6@T4s5v z-O%R_*7e>z#x1;86U}d6UdhzyRM$2C6DK%x6B*IB19C7P2jCPNw0=T< zCa2^la*g~zE|SOOh@6le`GP#hsBuW1lK03H@-{gof1*bFtC3&GMe>Xsksry9d{3TZ z)EFc6yr}|0e?sB?137m|PRYmQ8hM{wBv$M*G-rIR@FZ47%wVbknq;+t;dX&V2(OzY}8s literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.o b/RRTMG/rrtmg_build/obj_rrtmg/rrlw_wvn.o new file mode 100644 index 0000000000000000000000000000000000000000..d811d3abdce2d6b5bf73f014fcd4f77cbb8d9e27 GIT binary patch literal 1184 zcmbV~Jxjw-6o#)~bZ~IcL2>a9h_s+MwpiUnhk_2mwI89BrfEsiCLl=ugoB$up*T1> z6c<4d5nTlbS3w*d#P{T$V9337@W9DE&-7yaM-R=OuHdQ!^%0b#@+ki%5Eod8{80hNx#z?<3PeKIMPn3^V62`$K<`-tcd`paGjb!Ks-cqj334vJMI?H9}o%n?=!l4Cz6T%?q)YX>qIIC6KdECXMc zssqdEcM9W-yk_`azh^t`hUK;f<4m*O&Tss&3$C`!4VwCqov_ojwN}UL)l6bl7n`0z fa|~L?pw$hU;l@p^trfPMMySaR%MS1j=#%{b%l+EV literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_aer.o new file mode 100644 index 0000000000000000000000000000000000000000..1f1aa4fa0a5ab5960c85f49172814158f9380103 GIT binary patch literal 492 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`b0Z=mt6oB*~0gx~VGeO1T<4aO2 zN)QU-<3n5{LJ)j(7P@&r`37V)@$m(v@kzzSrclB7co)YIM`RTcHq3n>9xIYGnsdSK zlmN;;9v0wC=Jq`84O0Em$RNFIdA0fsgz99YrXh4D71>(a&e0+RS lQE_>EVro&mufI!tQE^d8Vre1+7V(12Dy-s(#g&O5^8l##F$@3z literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_cld.o new file mode 100644 index 0000000000000000000000000000000000000000..a5b38da0a05e56bbbd806c4f7579a5bb0831f5d2 GIT binary patch literal 1000 zcmbV~ze)o^5XLWxSXgMMcJ~4zQS1|lh=rKq3cIM8ivpv_24#sMig;)e0NW=VMx_q-*1v zIk%AKdpCH;;1k4ai2Idu9CDuhKSt=ej^3qwwOcIjE1?*F0hHS|G}JL?CLDzZj3-lFqX=*})yZ{C_Z cyC+UHcB+w6Rr<;~A9Uw@R&UOyOm}?tUlOphR{#J2 literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_con.o new file mode 100644 index 0000000000000000000000000000000000000000..25bd3a843cf3c632a48e3a556438d4b9778d98a4 GIT binary patch literal 952 zcmbW0zfQwI48{)_Kw9-?$g18dJ9617{sR<+|VFZUCYyOp-GZn5V9 z7v;S>9Q(Yu$N4tr-SQBk)W!c}7c!q`r#RdM2jD$$AN+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+PTV=+YX0Gb-0nG7HdG7kje<4aO2 zN+4_qKg2a61i?pVp_>PkZ$MTPA74-!pHy6I3KfixcX14HL{3j6`mAa(!{BLhw#2ZTX-NCi)T z8u)=46`=k+4dpLb2yxLin0zh7h(UZ90NDz}tO7a^5g{mlLoQTBd{I$xd3<)dp_yK4p`JlJ1FC=_P#_*5 z6z}Wr5?`E_Q(94!nwF1S3X4o?P8tq95E)D@MTwO;n4;N9SnSPC#3GoMUxeL8hy()w D9omD; literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg17.o new file mode 100644 index 0000000000000000000000000000000000000000..1abb1370702f24efc71caf535ea28a0e25a37dc4 GIT binary patch literal 876 zcmb7AyGjF55FH;uMI>OQUBEsVM6?nDu@o(~*lv=*uEj1S-c2wT;`aW;+W7@yX>XAa zu(kCEM8q?hdvV=I;lSCs=bV|jb9esv@x4a0v_kj*k~2B90K_hEEW9QjQ|TajDb!#l z3DhNGo&>XrRBAALr@rS{ITz=lBF$GZkEc9Ll0z#p_qtv;U!mvB?kB8~vkU8DKb?1A zYl`#Sob}uc_coD=^Om9Q0P>Da+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+Pzu?ix208I_hOa>4JnFj*#@g=Dh zB@i}*AL1Gjg5aaG(9HwNHz2Etk1r^VPbw}pg$l;UyEuk8BCCL~8=&q3@mP_h(VPo( zAH+Oks2X(hVCHZjnE~?~NC@3LCZL!E5QF@|4WtWz0)K!sh#dgL$bb{b0b!6HQo$3T z27aK%11ljeI1S}Htbp*h!Q`7ECNG4^^FjFCAU@C|F#i=n==D6ujJQ#3mXi@n*2SOnAZi?G`WkzfD- DJ5_{R literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg19.o new file mode 100644 index 0000000000000000000000000000000000000000..c1147bdd240734393163189d83e83564ecfe276f GIT binary patch literal 876 zcmX^A>+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+Pzu?ix208I_hOa>4JnFj*#@g=Dh zB@i}*AL1Gjg5aaG(9HwNHz2Etk1r^VPbw}pg$l;UyEuk8BCCL~8=&q3@mP_h(VPo( zAH+Oks2X(hVCHZjnE~?~NC@3LCZL!E5QF@|4WtWz0)K!sh#dgL$bb{b0b!6HQo$3T z27aK%11ljeI1S}Htbp*h!Q`7ECNG4^^FjFCAU@C|F#i=n==D6ujJQ#3mXi@n*2SOnAZi?G`WkzfD- DK;?vH literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg20.o new file mode 100644 index 0000000000000000000000000000000000000000..2fa1cadeb86b7c08d0d0eca22fc97f4f11beaa77 GIT binary patch literal 960 zcmX^A>+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+Ntu^1w808I_hOa>4JnFj*#@g=Dh zB@i}*AL1Gjg5aaG(9HwNHz2Etk1r^VPbw}pg$l;UyEuk8BCCL~1)%N&@mP_h(VPo( zAH+Oks2X(hVCHZjnE~?~NC@3LCZL!E5QF@|3#2Ci1q^^}ZXi1Vh>-zE41_^?NCl!m zGx>oU4=jS{`~##wdL7fOGLU`-P6)pn#0Pp5=Kmt7 z`~zrUM!@(GPp^sEYWaqT=%S>~tdoz0^WI zgLnp10YjibJVGem*WV?+I4!5Nq9`>jAGZ`1nbe##9C{!!m|BVwD|0YKvy-sco1KV7 bFfG3byNwVDOrsN%ijy-;u$Tmq0EHL;Ki8A? literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg21.o new file mode 100644 index 0000000000000000000000000000000000000000..0f2e0f5bd7da9cc8efdc5607fbc6edc6571ffb28 GIT binary patch literal 876 zcmb7BJxc>Y5FI~)5rqRQ?S%9pQ3NX?5KGbGih#wKz@5b%T--}ARz_R@g#HQZl!Ar+ z2wVSvi1_B_7LUEV!hv_YZ{C~P*}b=~&!07-r4_;lko8eEy8vPbI22wJFZWVGv~WD= zNdi@gm?yz(B2Eov|9IeAR$kqHaLkJ?=JAwAX?l<+nfpDzS9Iupkx8E{y+ko6-1M3)xZ>+LE1B$T@B9NN@#s>;K6wdE-npewjl|Sd4 z&b9lK)jezw4}b@&y`K>d>&2$1L<1n>@-q=fKz810MyZu^W%>@da-);zi)=v<{w{+^ zurcX1N0)ouc5v11u#@N_!G9h;Iqh>A#?zSz!lYiRP=YwDsZpg|Vum+yIU9{C&W(l@ L$uKe1C#pcd@0o)u literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg22.o new file mode 100644 index 0000000000000000000000000000000000000000..92ae2dd2afabbc7d0e9ee468c5cbb23a4140a20e GIT binary patch literal 876 zcmX^A>+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+OIu?!-408I_hOa>4JnFj*#@g=Dh zB@i}*AL1Gjg5aaG(9HwNHz2Etk1r^VPbw}pg$l;UyEuk8BCCL~3!v@;@mP_h(VPo( zAH+Oks2X(hVCHZjnE~?~NC@3LCZL!E5QF@|4WtWz0)K!sh#dgL$bb{b0b!6HQo$3T z27aJM2dFiMMcHs@!9D{MtZ4*dIs?fr~-ySfp~;a zysy7Yd~sS%X+=?LT0U+mEHbG%X*l#iWH7Z9C06EOie@Kau{S#ri(p!Q5q29P5)1%7 CMS>~- literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg23.o new file mode 100644 index 0000000000000000000000000000000000000000..cf390ff0822ffaeea99c91cd6ea5517a3e1cd040 GIT binary patch literal 768 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`bf(}Hy0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&LaG=A_uK(e##azr>>aed%k~b4zlB{az_bLXXI+T>Fd0eD zkLo3Z;)Q0F1dVG~_9w>vfMPPIKSSqCNqKa%E?lTfvG+&J1d*^^K+VA@&_ IIQXf40c^>^r2qf` literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_kg25.o new file mode 100644 index 0000000000000000000000000000000000000000..cee9137952130e161c343ec3beab38bbddb8e989 GIT binary patch literal 764 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0_wKp7%l0Mdg5fMzm)FcVZPKE5Qi zq6DEJK0d@XA_T!lXQ7)1ly5**6CYnt8lO~LYzh^Ok9TnlaYR-DVZ+=9;;|x0qd6Ds zP6?nq$X+fWEdX@*8z9XM!~sBz3^;)t5JooxSq(1sWuOE<&};{2xb1@S4=6!&EQ0bI zp!`lKp8?7T1tCa(1Jv?3DBl6fcZc#10BI1=1!AyzFpq&j2+D_Y!F~X0Wi{Y|io_Qc z6_>|nryH5-r55TL#52UlBZT68{axaV({f5Hic-_^aZ6#!6eU*XV9@{)##Ef0h(&2) VQgOa<5>5$BQ@|Q+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0_w0HhWOU^IlszyLH8jG3SU@$n_8 z6(ulP28Q_f5Z8zh1RtG+ZXQs+0a;Cad_ie^QgN{+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0_wVLC*-0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&L+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+PzQ4G?-z;FOf4bV&m5QfMyFvQ1~ zq*j!GR6;;}e28mA2#kkGqnig*(SWQfKE9wdKB>6a6e<`W@8THZh^zv_Zh*QE#A8L0 zMsqIEeGv1Ep=!|0gPFsDWCqM{AR%<~n1EsuKn(H+C>#uc0yBU#HxLH^F){$T3xq*> zNCnM64g4UD{t(@HP<{i{aS(TbppP^fOALxyhGL=uGrqDhN&vb%qT5&Z+4oZTJ# z7dkk&_z#GP-}5dsyuJ<|T;6@|$2afY+t=sMtm910IQYQ%EI4rCur>HD^91{Nl){VA z15JmW_1K8IVZSS}uy@e*Mr=l=9_oW?579-Bf;`{RBvGsBHLD#G5A}XbwMyBzF779K z+uCF5l{#}3jq+`rGWDjBTZQvGmT*2H(Lua`_yk_HMF2a`{MQayAAWpihp~= zm1`~!!j|F89bP6IWm$ej@mXW99$wZr$w+J=L8BfzI&M)OCB1$YM(N~|r4lC5gc+%f rk7WLJGMK zbH4fJ%*YA=+QckK8*7bq-SiFMEykCb{w~T#TThA=%Gjmn`t1_Awq0G8%)7_8DTB8GHCg} zS?GJ`%ajh*$9Sf~aE$n={i+(h$ERp8+{rr*wqE+^Tz;i zIv1+?RP5wMI^e@E#gBa1ykibw(Y)hza)OQ*Up0}eqELVIpe-#snwPWE8kf-lt7wiF zXQGLmkxw~tWOCLv(snda%*g1_;DM+)o6bo)ZyM3j(XoAdqxN((U(A%y7qu*VS}&x{ zl+~Ht)kWHCS$y0sVnQoYz@JvcC}iYJBv&j>mCQ&sW#nY0bFI-rB$9o}o?+C9;T|;b z8SaU|R85Uu`XGw7swwPms~*&9RP~HXvtCU@TzwE!4ysoAflO-Z?|1V`4E044dlKE< zRP~_hp~Y~Lm?09`uOJC0`#4d`vzP3%LhS4rvSQ55J!ZyKzZuJtJ#n1l$75e#hBaA= zH)ko{@0Q|aZPhPwD>|+oc&>-8>%F)FsCO@_W+!`vgy@W^)^7G*f56X8@cff1zac~A z)%&u_d;1iR&ne!|ImNr2=XL&n>v#9@2X7xZ&yjc3{GXms{+O3fBj?3DvHYxRmDyio ze~Z1x3wkfU$UINyd&ZvLRmPs~4aVO1pso;MbkW_h1?4^z`i-Ug<^hy#D0BzWuj+#+ z51~AaLhljcku|(BDjH_O4dJGZjql+%z~HZetvQ$J9s37T>>r9OcmQb6i3W^2mOi|@fX|+NQjGsp%r7j4;hy+j_g(DA7lOz#xceT!f4aG zkL)RqFHlafus5FZP4v4Y9M*($kYEE0uQ8 zTE+3k>6v1I1_!fsWZtx8E?Xyr#H2A%D4C|T)~4i&({(8sBb%jl)|$LVx9y~yQZ2q| zN!#X>YK)tbv$iSIhP3PDTVc3ce}}YsORK2WV;D8E98VQ8g;L%YLy0aim{k7_bmM#V EAK!+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0^_1}j9o0Hg;A0L^3oVJ4_pe0)i2 zMF~Pde0+#&L`+ zusbDyG9Y_FVXy#5y8vl!APxXxWB`%}VRC>TP!m5eP!2#15QFj`Kph04K=N=9A0J;- gR9qfkl$sXr>+cd@0%S0t3l;zcbMn)%iZd_(0G97AaR2}S literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_tbl.o new file mode 100644 index 0000000000000000000000000000000000000000..a8c681b88208b8479f34e1184aef1d5184c37cc9 GIT binary patch literal 568 zcmX^A>+L^w1_nlE1|R{%AbJ6ap#a1{APK}4AU+PT0xEd`O%2dY1`r0B2Lkc&C8-r9 z5H^G#;u;Zx;G?t9%>&9eAghUwFDQ*qDlRsL3dYB~IEFYPtAMZtkc41v0STcw7wA5S zd8SbH=;kRv#XFD!gB2wpiDk?6IFGYU6vnSraBy&Ou;7s0K?NTml`1%h9Xg00r?FNowxuR%)Gf2FK0xVP)TwV! z@CiDJ2)=-z_?`G^LphTNPVV`A_fO9KNX8%UUyIJo%{x4hI##sskccAkHLL7LtQ!zr z-IEKP=`;(}MB>J6JY67C-94&KdA6E85A$h$jYzjAr%|*`QKVd|mhvlp>fip97IM=w z?Ph(hVqV|7hH(@3dPMU}s4KaBTI#&!f8q{jE+cF7Eg<{keX>X1B0F-CJi(|@Adkpz z=wHw8lb^{c`H5U356C|Gp6roBvLhdpCm1z$$RqMPxldjpr{quU$?i{nA^YSp*&`3h zjyxbwFlsy?^}LY+LO-$W{uw!ULQcthDVt%8l5P!?aP>DO$VWy7D6{Ygl?Lc=|(%MTQ)*BeN^2t61wFiWYbFMrkBu7Gc(<8U+qME0|lcf AYybcN literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.o b/RRTMG/rrtmg_build/obj_rrtmg/rrsw_wvn.o new file mode 100644 index 0000000000000000000000000000000000000000..17549f337b322d0289e96b9a7fbf3fe9bfa8d68b GIT binary patch literal 852 zcmX^A>+L^w1_nlE1|R{%AUXiVPyk{ekOblvU>0`5KoBBc0Mdg5fMzm)FcVZPKE5Qi zq6DEJK0d@XA_T!lXQ7)1ly5**6CYnt8lO~LYzh^Ok9TnlaYR-DVZ+=9;;|x0qd6Ds zP6?nq$X;F`?ErMR2$0PUWCtMW12IAJAWRPU1JuM1H2Z)6ME6T5zX8g>3X|u9$RC8s zL-}i=e6YiS?3qx$11FFH1g$^}GM@p;FM#q7Z~z%V5Dmm2`35N84aSECh%S^5P7FY{ z2uvPGg8)bw*nBV#NW{m-7Znwk$CsDo#ryiZ#Fv*~3MH1M=9T6e;gT@KkSHoo$22Cd oxF88bB~UOCQ!u?4i&!2Ov0N--$ymg&Se%ZbEG0Fk9OzXB0He)^F8}}l literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.o b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprmc.o new file mode 100644 index 0000000000000000000000000000000000000000..ad76ef1f799e6ba0eb0de2e9188616a412908c26 GIT binary patch literal 3800 zcma)9e{37o9X~ft<2GsDRcj@)wQ$pJC6pv2W6-qJkZXMHJGhI})S=Fn)=5pAWJ}ZH zxIflKT~O_%*42;!f1nK}CNT+VmDr?dqFWadnk<10(QcJ!A(19PV-bO6VQRanB>Q~t zp4(u;v?sm$e81oKec#{lUEci9NApFJWJ|aJ_5Uwz zxAw5sq=lRK_}Bv0uHTV0{@6?e)-1c(&og1w$1|oXoA%Qxm6hA4)Mp$_sn3&E`W=p= zUxG}oFf&tT<{f@@%Cf7C@li6VIVLUpdsUYGpx?~&sa00`wd4vb^Cv6wN8{?GWplsb zy0`2tmfc9_Cj8cDzolqM^$jcYx^Z=ij|WwSWR~qS5mYViRvF{NJ%Bq^TZP)Mot7cuVi#4bt?v&VbT8g2&=v&219 zmS@t)mVA6-*fYoERkvbl;Xlc3q-AEt=7LOKyAwh_@?L>~4W&(Sw)=hH4}8K3DXsb@ zl!z$2n+PV~#qB<|j2HB&=onF8tEg>N4`oX};3FRtkhqh?H6*U#HmaACw~{-YwwSt^X#QwRE=ueQ9teM`-p#)5(hba8iL@ z7$Fr>S)+otET>3PfYOz^-dI!s-Haim#<{pC2T909IQ z{5j6b&dssNt0d_yp3|5t5t%p>v^VJK_gU(nxTc-B?qR8N{JMZzcIY{1OyasO9ou%O zmXD`K2gyGc4lW)$eyERRv*L#g9!BR_^Rtc;i1TpwHXNJ_$O>4x5~>tX;4)I7fUdED?@~alvhZ&Zv4K6{ z=2%PN1US?FwKKVMY;WN(c-$<%rj0L`5rTGNp^~L8z_Ok_;+fOg#(!9`D^_g5w7*Vu zvts2b?QA7c?4=nY3}yQQ7v^>_S-l?0cHeVhTEYGJAjO+Ji1NE7o_>CQVS(nve}V>x z7j&yfxd$UcvQDC^h-xJYBb#z2kQhu;O6`YBVj@sUZiWGtKKUu^JvK_eUf$`l(aS`7JCxL1Tv^R&=9Q z+R$b=)Lz+wr^u2nPPzG$^fUP^G(JCpbLy515gW*Y6JAaGtkW!VY-XJvXyZkgJ1G=<Pv*ET+~h1@lF{+U}y!xaQia~e!2t0qz!GPli%N&JNYr49Ks)io;{w6Yypu?Zzk^PG(_1zD};`{Mv9rlotR`H2 zPBAZjY6CR^BYI5k0hc#xzqakklAk?0exJijsyN^1 zVr{G7*SOf4<0T>Yx!B((c(1^Ef!7|OUeWR#Ym_`kWsh7^(eRsKw69SI` z(XT)Zh)>?YCLzCF;4K1|3!H>9QVNVxlO<{WuYh##1t8h~k-#P(iV?U^oR{U~xC~Q) zTB-|h4Uq161zrI|{Cff$1&*M^B!5}pOF*O)cuMfc1$Ma@r~=}h5Ks^#$i0N9W9cWr zQV_M&DXdSiOW`~BF%4ab(L*fycVQ7LozCM&^LYA&SgcRq?u+@S^Z2jk@tt}6WFC)y ztfGlTa(_p(`$#m_{m8+@{#eus1#`4}j(QI?BZplxJsta&(uIw?my*Lq^-^-^f06tf(C>&JNF)<&J<;CefrEG?x_UaKXjg1s SW%cHJ@0E1!{>xP@N&f`{#bA8^ literal 0 HcmV?d00001 diff --git a/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.o b/RRTMG/rrtmg_build/obj_rrtmg/rrtmg_lw_cldprop.o new file mode 100644 index 0000000000000000000000000000000000000000..0275a47b94bcff8a3597122dee32ec80d8362345 GIT binary patch literal 7156 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

{bT)dd+ic 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 =D>!qv^7RXxxAe;r`vzB) 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%0D1TZ=jsg{zlxhpoW6+LEo?rA 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
    IsVg{`6E0|nc;Al{z#SMKk{^l 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

    >0QR_Ic(m-&AeJJ|3YqGC(jqLdrh5rsw@X2 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

    >8<&hU}d*{u5gAtoRLSPuIAY)xy`?W&mT=3 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

    QdWzdMY#!ro9cK@5 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

    k&ENy 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%0AeygR6cx+@6rXryhWnBi;-O$9^B04-?m#Iwr_C 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

    xp$H-FU9r=xXQ45G|qDDUwwkypOQjs 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

    _wVAeUF_cGAx~Z$H{c@Q!I!w1W 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

    %g9!@l42_9-#gDE(? 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’X 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�$o~#@74Fj!oZ3lC z)^$enLJWV3^@Mrm1#V@N8{+i}2iE1d2Id^3TrNuQ+)Vm7G^R3Zy@f&EsP{H@WzC0n zx8#tY-S)N}yB+U;TcE7x%6vjqUprWOvaSOUvg7?zOO((YJqcza{$)UCqMa~D!v)@`2#jwzuty_YDerM?040$ zugs|`al?lz>Ivz@om3Zp=j;2xGhcINb6xPZW1Ww0R+I0=_! z%i4dkWl4tr#~-RWVsr8arxmF0IJwI?+!^oXfN-`i3iG;3eW%_UwH9&irZ?+)@?3Y! z@0X6OL~riT7+ajrJYP3(vdU|Nm#GXMdz&jyQ&{!-gO;58q3yDwYqtsi5s3M(_-1_` zxAMd~?`+4e%I#`#|6RhFI!b*0Nr_`^yXDteMw)NE;VR?e#JXG?nV;zovd?(GvS1ZTR zH*{caCsx7|=aE7MIq37V`32{##QCsId7NuXxU%75xuB69Kdq)nx+P{@(Q?i2$nxuj zclE{ln_iyly(%1Jxzkzr=u&c?+>CMS=a2pCP6gKKi&E~a^L!rGteVMJ+<&=^UK;X6 z_iZ`Fz|9(3vVz{HpZjCR@aM~?TgT>%cVDrX;tXKf%SAYJdj{`k!A*jT_TD#VIUT#^ z*VeJ12lz+(vf#fz+X&}fgv*Yrc=dRVHBxu<0Vi6+gEcR6%?X@L(-N$wdEx)?Jy%qg zeZYtHbjx<-M~ZR_d}7IlyG``rEmGgI;iCp_rub})5o|8Po%De@k20pUR8}twNdNa9 zWf*mITZV6BDdBk(@Azxv{mosMqVM6c8*AOcPR=}AVW%6;S+o9rs$T&=shmCO3B^dSP-xN2?=dXIz{{^@5QpI`0KkAPYzUNgd z+$Dt-7|iWT!*3Nb@gw_R?pf=ASX4&YMfW$WN(HDxVPJ zwGJu=-ms=4K4+H9%V7n1$I4Pl8eu8veOvV-G&S(Eny#$JW33(f67HCB+L=@D3VN<2 z-S@Gt0`85I%FFt7#^=YEV%zXB&DOSGOA6}B?W^_`^a+@=gRucx6_oqJCz{gBe?fs` z({XOyV$1&+?b;(O*-){3mtK_J)n9+KFrQ`~wCMHV&m7YC?mf;}k7eu`x_B1gtX~!2 z!G_(?l0~HF=?Ztm#g8tmb)TNwu-5a-Rp+hTS!OvEmO@JDf1z4p|9zTZn%)G&)QF#d*4eCu_aPP&YoCqB@64 zIS8j+jMYn30urrn{cMcGI5*6T4$geou*17<%|9Pn z+OAu$fC}k}Y=Z9<|BE!|9rHzeJ{9+r>)2|+;t}9?{fgnfF{?1*!nB{H<=2Y5qpy1m zAayMAV0|rx?=8XLIty`xJ}`X|UVIAj7#r;wzKGVsWt$79{gX1z&)zVh#|){zm*cty ze%a5Fj~ML*$1GXnJZlPa+O#Vsb#KoRj`ufBH?ZTk-^iFH)xtjtulz)Gu?BN8_tsf!IA|k};{1t}$dz);9Zx!cRMb+= zi)ON4C=PRP>)HeUQu$&-M)_+Q)_O#z?c_dRTKZ`UaH}=P%y$i*NxE%sS3dnPH4KU$ z(9zy;3rvIii;hu2hQID_lWPadn$ju z#M)&8#*psEOSj@JN>#eQb16n2OkwH&`AVfrPE5RYcOrPqPY$xb+DJSp!RoZ56i0uN zmPzO}P54yBKkJQ0`Lb)B;Fq-VuwhJnhx)fk9P&?#Uc%A-LA-sGPagseVdf_^;aJ3~ z^vwgw*=Uqf`#1V#3Q9g8pA^)m5S-WKa@TV1+yNuN3l_8B*H4TCk~#9ki3M@Luko3J z&Fi-NT52rL2Tpb}URH8mFUH{Gze^o!65*Wxk&0^Jueaha{|xu7kQ=n3?Yqw1W_Q6p z*8e-{G{t4bvFW<#J2JiBLZ!YQQuBXC^mSH!`nqqaV<9=u6kzb_xn#ISFG+Yo=C#VU zyY4nv^xcXJ$6W;Hv!{x))Li2S@~v6f^v}+bq_>%o)~t1_3tO=EKa4LT_su-daeKXJsu`J%@dko$mkt-Kq0!( z2)OG@(W-j^3^{^{wcMzNCcngR0K7eoO}Cz5US@YVpl^TWq0B z;V<*VxBfGQYT?UQ)I$RZ_b6w1Ex+eCJCV-cEjN*VlwYLl3$b5B4_WE@_Uj$rb8|1! z@iDg;&fmRF*>G#GclsCg|JGS4CcdY|)HP*wp@C$`$OkmKM<KU{yzNKiPd+}Tge4KXKi=;m z`oKjb?_Q8~yU-%V9cy3mSF|zdMoaTfy~Vd&)uYZ|d74-44DC6(ui5ebd&yz)#o2$Z z#)BC()W(+ zdVEG#QV*jfOD~g$?Mb_l&gUs4q3`JnJ&sYQuQwWvNZ(GOZ{JT^bSjFdyKhpfF877w zy)FCk71DiOWsj2k6SK@R9tqSjtcIhrXATvb_3?dRDO|l(!rhP9hnpy3|DwP&@0#>P(Kuf%ZpnUdjb5(Eo3yFs zIZ8Az&FTATK$+tU?|zFV-)YgRHRl=ST%V3Yqdwa5HuO}BjwVEGv7_KWR@ zsg1kg7`Y4kqthCC!6&?v_XX39HzOKnoW4kTs_O32NO5Y7=Oh2L z9?@b&B?jHf5}o;L67P?bU(i3(kB*F|6{p@SCEquMe#e*et5Yd8bsy1^N3E6e@)er? ze&ce}V=1^#KglEXn|!9@27Y_wwdhvgr#o)T*W9kzLVVTt(C#y90{+>zg?5vDNyjP6 zsF>?TuOKsjLf?d%Uz5`m3Uit!8}{!@4pYd={mM~$3sos@=R9{`7|l7Gr4$eDlI~BB zyh)BKxc&Ngk>Zs)YX6wSl$m_1dq!dmHP#I{FQg9tj2bD`;gCmJqPwho49Xu3Y+0!x zA-;YgE$6!Qh3MtqrnA}enML*mPfa^3xExgzFz_sQ$7R$|-vl6HLoC71~oR<)68;VG z8+VnW$}f&}-J^Wr%-(eRG;+9-9Jby+{@13FJ{eOLTkarYD@?HQjw zzv&j`D^j9VkzyfaR8{IPyi0|edMc~Go3yuqheB2_iJskIYP{-dW#6l{M9(@$^x(58 z_-fL?8b?)MOBr#(-ethpDxh$ftE>%GCzZQ=C*<}McSnN1`rGEe!D$oICZi@ciRRR}qR`l)nQOzm|CkJ;V(dSmu z55}}E^91Mq;5(#o;jxBp^^JKmv+K~^K81U18!(NgH!(Usr_$ieq6H?`oJhfU<`?ak zI)Yx_A9Yz-F_G>1B8mu93Y;e#k1bUBf@jB`eVLx*P6MKxY(wvCrPZ@)xy}jQO6N)& zh7%j9nl`>$M*W+Q*|D)^WxADURJ4zX?(BX#9$^?PZ>3XjHgByrIZXJ@E2M2H{I8(S zVsW0(CwYXf^;p`xUQP@d^w{SUlS$*>A18?p-#7}L`FhvkD#Pe)Zml!^nKl$rOe?-q z)45~%HQ2UQ975|aL!do8}eZ#$Sj@m*uJSq=PsT?MKN|$MEr;%%Z6u2yL=PZ43+83>? zGH7S|wp-gS#(-w{z9n!LrZJK69MJ{&(=qi!~+8R{axlE7*Fs>L^z z8u8V!Pf$0>YLEK%vsS37p&79`K#PU^5^=fH`Y~kv1OZFFQnbWz3@$I)EiniL;m_r z68b>j)#7N~ApZz_%-;5>Bc5v|d`YU*0b;rH#|i~b24<74$Iq!RdHdSp-%}I6@4rfX zc6>kEq@mZLo4qClT)?jes28q@M*Vna5KmNHJ~r;R(a$@rDe`d}QzVaF4|R`KHMpl? zn{fC(`e_fhLf&*qy4)`k!5dtOWW)8RyYFMtdJEOt;k~cV!1oAi%(_26wYI$9r_e3< z5QqC%P_*P@!%%0a;m7}3RV>wh=r!E;|4RbrQzRbsmQA%V53&RJqhUW(=N9T=*V0f= zU7Un`{MY5q zb5)FH!~Nk)!Xq+p7@G%?s8?JKL0%%+hp(!T-3Z)BkjJv z4O)SN$ZZ1sgoH%Q`z?{YNnw- zceg6?xtrhBj(r95W1OtZ3-$1Rr`7@&<`Bqhb8`lq=WD{}q+*=6CGs^x)?#fe>X$7- zxwzqOpiGnXeJZ3m@(4MNFpulkM_n;2g3mtkQLO=YpqmpLhWE7c|9Us>tmUp-p2qu9 zT$Sc+iq*pBRS!j+DNsRlFV3UBv^)WP#1q229^o&2&X-AZ5H2aAr_%tuQ*5;K{RcC2 z@ULM#-ATjzU!H`xVpUh_YhkSA+gIE`9%pNW=vst;Ybsj>`DQOy)~*iIPJl1?7LEFP zFD0*SlpUjkF|J--tg#aNGpMr-u7~-#FdFgdVGYdhGL=|0wJ2ww3+UhLoG6@9oNyqK zcrOD3xV}yhTm^5_s}VlOPU7F87<}(j)mZm|=7zDphtw3Eq@I4P^GzR}S=&=7-U)Sq zTBwf>t|9gD0M>nCig(hs39C+_kM(sd_?|D3$PYF9KNnE}aX7F6_?wNj!3Ug+fbJCe z3$JpSG^aB&i49CIE2kdj_19XMH{Sz!TnD40=NdS^GNG6^o&l1d^ATMfCvK`-z_Obi z1#b|+*jM_5qAtAHAN8TVZWy;xF~V;UYwl%MF!ZHNyisqM7$|yL*55qBU zt_EYCD*i1%CoIdct6?vo`iwN^x3!k&Gle5QBnE<;TUVZOKRHcWCuv2j?5B~4U!6i_ z{`<=Mz94*Lef)Rl+Ia6y{_Ie!tFmOcjPIC?QexJZA7UXL3qGm#EqHBQLC_2qJl_I_%z_#A-;5`OKBH)|c4 z$*%lRxdyI1YRQGp4>lv!@1ynI6o;vG1AP3kuDW<3KK`^9f4YN+o9AoDx(o&v*|iet zNZreEq;gZ)T;?eDnO%`mZ?AzkbRa<9Q+bB3)CqhK$J&TjPg(fj5cymmHnK-S42Yk#VPcD(7eVT7{}pO;@RhGSa09B6zYXW@5dk=l&!`AloX;M@@7Z$cVMZo=H}XOD!ne){V4Yt- zT88hQF*f>xr1i~KMF=+(BKws;bO~3v3D+2feW7zra5UqB5O+&@u}&{cI)U@w`U=or z%=2LFm#OMNsK1qD^dWA+`P8*4&Q}Y4!LO`zm-wJKpn@67YDqY=#A?{bW2*`W=)?Jj zeabUOhOg&7(p-1PaN$>iv5z0G3?68hE8nYNC{`RM%`vX3>YKBIEA^?k>>{`iXA)XzT?;>}w;S(4#S^VNlo2HRWJUbGy=B?P^n3K;@&~~2^kVGWgR2WqT^0IZ z^*mUI?@xzuuJ-p5Juo*;Hwu(P9H2i_$eh0zGV)Fv(N{3M6877&-mG=}B3!W#r&#hh zOCyoG74tAC5b@irvefrI8UA8+>^XbpzDpl>ARdg6cv3bH@!*XwcQphTpExt}ntQOG z_C(-3{W=8uz*B#47**UEzJ~{qxBXC_wcg=aSJpa;!S>LNT2YiQOgXfDO~N{G&6oUe zZhY&B^Tp+|Qs=keSkneON7UFX^}_(+uPQ>H?6(K>!dlq!pfU?w)*jr3`$nk{oHJ|# zSlgerE5nmt8V#Yl;FI?}9Q)(aYB;Z%`Q!b>y7AtshLOX5=o-9`bvU;iL+{W|I0`d< znSZTz->@~J|Kcm}t2}t|)-K#p(H4bcN^{W7-xqUVZp69Xx2lYnA2^LN9<2MWJ1Xwz z)A@6)^0q)P?P)OLV^md%%Rb<1f}Qw!o0C~_n|7d%s?Lkh6%EF^+NStP!>4e9D|=Ty zwnmkQ9M{H8d0U7)dM!&SxO#wM(b;X&B;P~xf|`g?3$c%X7;4e7Ftv~1S}7wBJpwU=|01-PQ!COk2? z*|Wv}EhfXo_m#D)JeQs52%2%Y7G7K~eL%j@ecR*0i?^AMzIkjl>PLV4aX#=+UE zFTw-ya;^=(o_wO(+725K2M+|JUX@%``UZTkPWw9X`0bM@@y=%WT2^-gClF-I{)Q0E z%97yVlK;?*NoGyowwwSts#ofe&k0r!H>L1zcpsjX%~_N}p@6UXBIIysd(B#9%KD zH9!+r2dVdNl>N${wT|aGE7p31G3L@I@q_AZS>AKa!&#*H;G^ZB@3`BMiy4Bx#jV(I zF|x8L#D4J)I~Se2K>ArcS=XZ-+*s>!**k#4nqG|ehcEJrE4CE(^izJg?`Np#3c$L`uZXor9oDRUXO|Xd z&0YBaqG`%CZm{Z`)p1ar6SVH)Qztg?*7a|#oVVP(Sl4mCx`EGZ z?TB;cPjf~cWifd4m`d1h)_V&-<;vPG`imu3nDs$99W4`nswAH8s~LlbDIj`kAE~D{ zdKyof@6EQ6c~X?U4{uhT|5FKknG5*C^Y*yk9k!5pX~GtLwy*PanMI8aeC3b_S292t zJ6ASb!|xoh6Yi)ehwj@E|M$~*a*p!F`|suneZzKTxwIB6w%~gPuDAw z5B2tSEU<3(G*WbRMCxCvAI6Z;T;weGKpW9BHs$0Zr8?x8&z612o1wSqA-c_FaR2fu z$tTiQwRC?lU-&2!;pp-Rd6^ulQf7{*RyH+xeL$gd2tZXY}}3wa;Hq4kC?ZS}HDA3z?fT^qW3V z{mzxAUumYe8pGb(%3Aa@OY_tv%80PCTBka&<&kgN(=K5J$I)CxyN_`y1J1LVI=2{D z%e2yR9#%SMu1b0LjXSt_vvOE}KWuScYi}mwohQ0u9|(HLkLlK|M`dSi=!3jlT0y>j z+c5NdP1E;RSm5(*FzSOD7Hp^-m5eAZeR)dP+K~GURQ$o)XD%Q6jv}3A*HQ+b1@R!n0s8Uo>Rh1%RYB;?dMN%x z`!2tuC97s{{2G%@$`nfxAxa0TdE@A>5-=l+L?u{L7^_9v15A{*vCMS>Cnp+Y9}4$4cUy zoKqC{`=KVtTaEuj*_WEd-}V?tx^Jht9oG3UE6f*Xa~}G=&*Kf1M$qa$n}1(w^_(<+ z?V^0|U%S`vyqPBYdY{F2_X8QW0!Q1tAXU8Rv1OUkojL35)wg*j`odckkp2CK@F$-| z*YO!G&02NM_EZ2-{!H)br?&IzgZbCf8u7cP1%vl0f_{~>Z#3z@{^bj0 z|3ylK;BIK^$23;C6*s`94R z6l%NHf2YM|GSfnphsk22ZP&@Y>ye%o2bJzQ9XT<<={XsyLH@Na(_)7@MY{iPMDSb4 z6`!%sz>3^nlc7>Pb;&)N+pcBVTYjye2mZDo`i(#R!8tD@mj>(^_x|{X7lb@RN$fi= z#e`oqfqwg`Pqez=yMe#A_atSmpqw|aP@FbyI89!TMu+(xf}cec#U~hK;xkgsZyDtl zJ(f6gn_QGD_o?@1$l2FzTd8FYQ3uKXL|U)E+y|=G&rpndPRV*9D80Y9$~$I0X(Ily z1z7LvEq@Sv2tJdxl~x?br3zi`t~bjhEtl!{#``em4(tZ`wKgjvw zG5O3l+kARcOVVv>o@UT#9bZW989#()cuNQS=(~NQv1gA^$IQOu2S+R{XviWR*~TKxVJ1Pd?rw zUGzW;^R~Z?&JYvP$^M3Vb6yVZD3vxU@@Xb%-S-X0=z-dP)2|&S)ihfEa>gzSt#7sZaY2JtFheQ3QFJ5ZyKZn^H*x70hbqa z;JZtey5_A!|MHON%Iu}7cI`{_9=VlP)qdIjRo~?lHSNM3zate%%R0JVCM}O^bDlId zGEeD3E&r39zI{6#SLze5+`>rXi{6i^g>FcAK9d{l1kZ?*y;O5`QRAx zxg9F$MRY9<)6{E?x8iSr!=Pt5#`z* zH(f(fkGJ*hv3WJkS-1T}aKv)@X;Qj`tI`Mh(j~b2i5cD$Zh3rQ=!iWux#{^!CF}1Y zZU3@~Wf{)Q&DK*h}l}KYUo# zCrZxmcWHOdrJ*av-6dnyT`;*x`(K|Lv2}Dq;cQ;fw{df=>VC-)?kHP)ezT}T{pz+Y zmp4V;*t#R~TNhg+A7$MHd2Q>utkWM&UxMRE>Vf;iUmaNMo+M@9yqnZee0Dyd|6_C? z)b~zxL%nQt8}!$XPT^l;zbMC@T=-SrY%016DboL64|V#RHMsq5lYh(AzKfq*oQb+b z*XF3(E>4zuWfaFxuAwq3Pr(JW>x6iFArn8>PIOe-#qm$Wws>m}&iz(B@jVxG#P_fg zF2yPldE=N5sGBGE#pnL&j`~ec# z!5^Yd^-m`1UP;YS$NDE({vE~86?_66jp>=l!#JelyyO_iyXF{zdf9j%2YcYTTsq== z9?U=;30{OVjQ}4 z$2fLtiTYlT1XiMf3b1;Cb6dyW_58uB!|lQ4c? z>mWZ@s5 z7uRNRoKH|+o!15TqVJ0b|<5MW>$U7+uc#9Zz*0#4SU-N^~<)kIqUeDU!`ImVZOfTgy(sg zj=IsXdTgjQn^->;o+1(7KO+ux|M`)qW7!0-?z;GO4SGh~QYD@x;(7PPVt!?YGJHI4 zNgPeZ^IT|v_qK`f-qJHAKi(Yq^vq=8OrqGO(AHb~=z*-8_LwjGTY)Fpo{D^aw>sQo z-Zj->_ZWT6z6tpKEn|h3AmLv8`9X@&5OS4t-TGY$c#O6Q$WIoF0pGMMnEONyIk&L# z4Lo<5rijleDd2i))e{~doW~jAy7z6&zdspRuS1)F2Xsut_uCuEMGV>Ef9_*^cC^9s zm2QdeeM@w#*2JLB|5kqgr)c49!m)m8RpQm#W*kZUbQ%1{x+IL-pL(eKJgz0{Fp%|e zYQ{C_3s|M0Zd5V}>ny#F_*qrwHq)nV+r0V~;)zKMJokvkSobX&VE;KxTty2d+`~9T zw3hYI6#1nANm5^qV)(5*LO%R=9jx2KwWPjP9r0?FuiU>cp{}u{A;$f49jUW2^7hB8 zvY~SPanV(*x4Mmxr~4?}-r5-C`Oa07ee)K0v;pa;-`-0Wej-kIi*RmVasI^yMY0g@ zY%{Qrd!%9f6^EmJzM>+zf);>$i0`4|S~){c=QrbCZxbSUHKmVY$XLI=fPBRL`pDn( zs4aE#2(05!e?A*xG!$JWt?N-NS@g!@@m~Ilk~&uq8(nw>y>3DWYGo?o-HAkuOZ7V7 zF1A(YGD;=-`{g^BPbZpzr&-bn<2JND)>%zrjr%BFH?2=LKN@wOlA_<_87zImUOY%Q zP@c!Vp-?@%*QU|XLpxbR@}rd)eG*qN->W1dzCN#ub+J{=^OC=;n{BubUL(B`){}ih z;X7($Tn2}TUc_ze1J>!-PgW!&E1y{Sj2%wjQafOs;tZ?E?=f= zvd)q*-n;8dJvk5|<#>f}k1+O|W5^;NR7{)z0fcJST zW0I2|{5wMnq~ZMkxwf3sBBd`q1o7fj1y;?A&+1;ifce=%o{MWsJuE`vztYRmjYU_n zzI!HN{8fC>>AEUWtmTr=TnBG^vN6UdJQ4G5WvuA!RA-$I=z1IbSqH{B>0>CKNAVAa zJ({25Bn-E@+80m4A979%-bZ_udV}~tcJg8PA)OO_mU@UMWn&PZoN9t=NvOgXlxp$q z!Iz=qFf~zl<~YRv6m_mLu31}zmpRo4>uO9x#OJNG5f@v9vJwlgxNG}O=n!OyF4o8p zeBWmNsF$yH6aMuC_J?lK7;je<|FpnfF!r@5Z<$ADvHtqT;auezjW~F_hSa+%iN3)_ z(I=~m|3CNt;~Bu7Y;^ox0rzt@1@UTG0?sjKV(@zghOo93bGRXW(ABV>JgTtv4ZP&a zQH^&EYB1;+>T>O)gdeF1K4zKdu0?sVksd$a{1on|K6QnwjgtCx7|zpYDsuNWW%Eak zI7eDf?^*)R0S#qc-DIpA{{YU=iPOvIOFNK^^;5n9=Fg32%-du zs_IkCsemhM`M?C>pf8Ta8E{`n#$)Gf^r*T!F~AE!g)KjI=)ADKZf7f zY4~P+s4w{?(Qo`t!e>?GP<3jWUf=@GeRGp=9v>Qyd2~T^6Q>5Fu6p7!&eNW=XI5@P3a3v2S;yB5(n^759a+N)8mgAwSl3 zZ5)n!LDb{)pg)r`S<=*@_q!6DfH8dhM#6{u3v zW5{!>{lvx4_j)MnDWfKMeLH{NY4L2y=y}So!tghJ(-7;?IZnp27UHf?5UWc=J*VaJ zJ-3G7`zgLm>(ABn1#dObnOkdN_T5b*ef?qV^-Pmy4|I({)f{uL0;Q!OIAr2I2Reu7di?7BAe#);MsW?UQK(25!YZkQXNB;*UmHfj9U1%Gi zzt33_aAGs=ou|X)d{+%|x1~R8n=~_b_Du<~AC|QZ`(ddl;eBg@v!5qAXz#tboEGNa zjXJ@NI(WZ*qvYIN1N&ZR6|Bb#emGaw_F}E$ru3LJ_8n`0_lIJpT!nFesf7?{TxYoAkSA&+lK3aMe zKCf06-mcX{z(uOBZu9^On^KQ6u; z!yng?wJ&+B73zm83h@X3w+nu(p98LUgO{vN;llblVIHk0!I?K)&%bT480*zT`dLc* zf=j#Z&RSP!rVYnGj@_)o?l0=x zsP&ni+W#NXtj2C5C zb!F`NX(qhV98=B;cH3C>bVt3gUv_g9zEt^>`+IkoacmCwy@o-!C$v@jq>-q-?k(%WiT(HPuik9^ zBKX9QEGFkRQ_&awEjkt-sK<^5%_gS~m%dmVE^aJrCrh?80K~tG!Ux{b74vL}6Ldz^ zcrNUCG{Sz=O5kmEuKp-==dVJfEj0;%i-d*0|-lx!@+Y6vnx(jR`9% zQys~_(er^l`rquP{QGVX4LCV=AZeW^2TL~a>l0H-h^}>EoPU3PrCGZt_dIc81o}4H zlmS<}Ug=gEe%uW$SYrxvO}Kl>F0(Rvj>CM9@DzU2jTPnkCClCs(0Kd)-B6)rS52+w@)kVy5U2eWCkit~Qv5g`zj)Z^Bc$ z{5Su_xWT07MK62NF|=ka>tJ0%eA9o^zTAwB!S6?jAJ+dl@3P?NE$n!2=VJLwUYH?I z-?<|4#dh8p-@WQSYzV=|S#ht%I`HCdP^y;JVjw`SKljL zKIK06rn|Lpc&2>yPp?Yp!~aG-!-=29Z5x>S;bB!!;P)P=~v>X zcaMgj@10ZlPJ60ufSCmf<6N0jfVJJ_{Tzzex~J1(k6xs0O9L#y+g>k$d)@xRqL-LU zt$KG%9lUrDIIM}z@ULHPk9k(wQu13$_h;*m=#)7l(Pwbd3;J)fWn6AMVSQFE$?&Zi zFMf?53HOh8q+o^zlY3;7#sbbMu3^cX1$(ZvBJC6I^OK-+{YCu4v&psYiqkuOb|$T} zmsC=?-Jkf{TRoI!8S>~0 zT^YW)=DhcSVNg1T6cknDn*STp?d(Y}NtxY!pI!YiDYGoqGI*8V?D;sO^z){qR9Thc zqtfBh!rpnpJANReE9kfKLtU%XUm~}+!@5Z>Cix{((Z~BO{L%*+f9&a-7cF`ce4}ky zsoHv%u4g4W!RFAX8~2m6e{PgJ?uBYz=se*nTRHcci4NU!@fmw6{&QKPqk4gE%qfss z(xtKZr{;-n)EioN-4N1wK;J_KX3e(Bl;<#oKIYtl!qI)FE=sK`difiA{i}A3Zr{3s zBUk!oSVtD%hWnVY;TAouSw0=JzOi%vg?_ltjdR8M-e2{p7=GVNtiiQLnKBh^wsp*3 z!x1+XcXTJ+XuN$OzQ8v~mrG(!k=9jDRX)~+jrxBdglBs}rww_l?sq7+hxMN$SCsFe z_GkaUe|rJpxbmo4ljUWXT~Xti{rs@~xsIZzWGP%|3DG%JyruRV&!yJa-nV!8-kS{B z&9k3eWZWF&o~v{PhZsteh1j)229-NJgeDlW3rSfN*4L=q-ln?R==h50AswYbGu`qn z`qm@pr@t2+tk-l|Q3)m1KPBDXXm*2^H|skfb749uSWC^&0@4@pLwruZP`CRRl3jXb z({2C73xD=(N3WI2{Eu^`qU&+T42Vkc$a9Ce|>>=^Ogy+en$8b*|NNZU^S zqx{HH7SzoSX-wLddDLs+N?wcK=yQ4Q`}Dk*&&vgOGLcW;`dxfK^F_Dq4J93FXXEvv zJK}QjqH-TCB7Aot*5`#P`4n7#@<;oQ14NhT|GGX$No|(;9>vpoihb?&VMm-H@ImK6%-MK8$;`xYA!; zrW#pHE$P={b zgE%?68{$HnHt3ISBlW)meemBmbdrCkGq}L-s6*xq$9=fPK%7HzdLWOPlOejKKah{U z&|Wx?RJm`*vVvvG4|046e&S{i{GM7JaSytcA^&bDx~m`XyxaTXznk?$zIj_a#MkYO zS@-eu&co+*9fI?^Wj{Pu*RIG@p3TSS^&5%*zvVCF1N!xnf47FN{)AsRcXjND{95Tu ze6Nm8u)lV!i+kY3o_K#dJK^tNY=wN%#YDb7-!P6*eF;Y6)#d)ko80S(d*zk($SYk= zMciC86!)iGdEQ0c@Z5`9ARm2L#W96*OfesY?>%KO>JsL?@f_xvtaXYXeaC$`uOt5Z zpiJaBzBNHTA+Ihzzhp1`9_!BdoRY0^9#r+%Cb}W}1McY`2js`ww?@5T zd>YQ#s&yfn55zdC^{Vq~>U>|$*l;Sh$GmFY zO8SaYB~PmAk*fN5fT!hVjN?7V_t0OC|pGoHrknd*M7qLsy7VdGN3=|l=Zsf&lxR6r#esS zx9#v=CublJXWdxxrM3BCm)@C!jy@5cqptFM+Tp$JZI1hks+(tMF!nj-QBZGL-(B!r zL7BLJBqWPJ&uhGw{Qh`<-+N+xyQYb*gsdl@A$U&@`r^5LWS(U-mpt7UeBS0ZSZ_sJ zqAs#I1@Y@uwD?9n7GH%nn2-MnmsddXOa{(WFB|dsR8Kt5x=xsnr&=LTYLdj|-);G_ zw0I8Yb@_gH4-0x=9h7eeeS}_(8GhGqu`Ztt!te2uaedYa<5jn*+m!auWp=hJWsKXdiKEkS||KsuMB+Oiw*hDo7f4bH^0Dm zckY9F;F4~LYn|I5AO9qU+di~C@~80|jQ7p~c(3Dn;orMEU>q7Yk$dJx--rM?A)cIQ0VVt|3g6Fdl9&1WFe2!}i4W*AI5q8`^LHcmnsg;>-TZgh9~3XA zecFyT#&a!ffc%isK}rcrQ?Kkk;@GK7nb*z14}49A{>t5GwN^aM0{1;P0uMSOE+(rBk!vh-dBMx`2TlWBmZ_QS@xs1 zm|w4&Vjg}FE=$!(4Ox`SM{9B+eId(2Ja-drH?XO2a7n_MMKSuQ9%KE!Zijj5-wNxo zRw^%?kfNNsv$1ZYyI_0*+v54RHA8;Bz0!sHoNanLRybh0p0Y2crjc+OwOPy0J`oQ1cSp>hQNr6!Pe+_;63;_Vjw$5Uc z`aR5#60PyRDhltsB}ur2Xx8>dQIGNa8n(l8oy|br$0-%(i|=)KTs;HWeunkp-x;6V zrw#Ufmu8}mrT9rBuhjh|)}7Mt(>`C}2{uYy&pC<{M|E_FaDRm7`p^dJa#~B|rO!3O`&}2y=#zMg z@!Hf8aX2j#Kffg%^W#N4+pDge@*Xds|Dxiq)@iFyALFTX0kxkeSL6H!hG6$KTH>S# zoabqH?%SgC=MjgW-yY8WuE_mA6} z7U$J46kbHP>wIJEdrcEjhp$lwzwbsEKk;ZCSN_U1yr+iEQ9q7tjP>mk$+tgziEHw= zaDJm&WBu9-uQ)Xs`^lsj;hP=`hbr-=ODpLsO~dc~H;#vCfLHir#f!j~v@YhKZ!Oe8 zss*u@M^-w%y8p6ZB6y6ev6$b3!}!M8(Jf!S5RUOwGpU0#lJh_V#DfA#k8b`MMQ+~2 ze5Tf@*ECH=-n>T)hZ}Z%|J}#>KQH>1^;%&)+N9w<&58r38zOpo4~4%S6$#F0QXuC< z*(>YJGvEM*$~~i3L&SZ%Sjj(C=kB+6`fQ85EccYAxGyI(!uVv>=h4@UMkHDHms?@o zxiuB;KS|EfSvbdKw!^$G*b3*7J*kLCadC`(t4FBAv}%C*QS(^TRsUw}pQ8e}>0pE8 zI|=TxvGCNv3E1!QVuW)H6(1a>OKk+yrRjLT87Ww&^Wrf+1(~-h6*NcZYuJxHT4BC; zr{g{vpM<#IIa+)pZezdL)E04OxbVEi0g_`~`}NPXR( z;WK^|^~cRga*l|{I5$-BTiK!JU8}~*eMqTLI z_($s04psQIvjNN>LY-Lgxmq`JbR77yi?y)t2L?-j>j~&I+NUC4aVQb%r$}9#bNs@g zBeCo}=1X!5th2CGoEH)sqHfr*7NZ~RD)xtQnfRP*&GDR1QxL~m#KOPL`xfd5t7@bE zJ}VM+iSX*UM@+BCuDStxANJ|33CK5$sRM4LUnIuma3F6s0DoYcq7Guj9Gxq7g6R z3G;4hH903$;PbD?MOB-+6WoZJ*IMV_|Ns8Qg!7$AfSk*dabBL*0CnfBF&O^|q3rx2 zzt!juDj#bU5C^2-ocJtW>W9piKZPr+&~q46Ei76_SWzm2r-cj0LK{o~;h_x;)RYWJ3A7xzFH(@yr^Lh+a{xl!N? zR#anU2IrQt_6T@^?P;Pzm5llKPWo9oMj&o^H^F<{o+w;$6mPVTs($6ai=rP&a=r`2 zJjqr*rmlmMyn;8QZ@@Jc=iHLD5MN6Rm$^;xA2S{gh$yrZ-0--D80WQhC4SeEeu*H4 zj`jiQ?dSa8M?Deq$Dyv&mBVGcT3}u;PsKQ{ZHWE-bS=KP(lB~Ci+wvxbUyq3pTn!d zTMj9sr#EiAb?Jg%BYLfe@9E#sh|iXc_tPLmbZWMOCwg9A`b}cx{KR-~W`WH9u~Qyq ziGE(`Mwo|n8sc2(8!LQO80R0TKP=bd2=W(Oo8kObx-s?>p9IAJ>5<}-brScI{vp^W zrUVE_<0tW;9DiBO{tKXz0N0lWR{FjXp*E|8c$P2drL!_6b&S#k}WIyYp?7d zzV^!R^L*at`~35~KF@PM_nv$1+4tOYsoVV2v`q*2{(2M0hfDLo|5K&|uli$!q{)ht zILDCR<7bNaUbA_K8?6$Ajf(J+dL2piw}x^afLPZ~Dl?LOCuQyt3prIkWIZCeESKXxwcIrphd z*Q15wcaLpeoKgY(l)nt~5%t6-#f7jR=Lizm9csAV>2TQC#|1?}!F}Ioh-{vLAV|Ov- z_zLH<%V$6j1dS7Bo)t1y9Y4tTpy{EmicA~#ZE5!q6jdSgn>q+{SA0|rxtxUgUNz+W z{Goh5qL{y1@MGYQ+v%LoNw8ZC#zAkcAHny$?Iy|JImh|*W>eYzm9N z7GoW^7=!*7O@m+GaSZS4m*PGjKW(9Co8lmOZ{%mp?*e_dzAfLcrj2#;=qz;48hKq` zCl&R%!X_Y(=)fq@^X;L0A7novVb{RCh6P#B!zZRA{-9*UcJf%9!_YAhbjM#Xm{OXH zJVI}-XS{tj+D)GVJlBmBqNOrz#U#a<2lNr7dvfhHgj7Wtm7gsI+{+S;^GfRt5SQDp zD-2X@yr1nOELRjV>!l%dUwf=^NqQpu-}__OFB}2+a%d3pw)XZG+!W&K; zoWg#P5%f>)c(k)I4~*0v~=GCOEYn)XCITtV^c2 z_^*9u%%iP3?*BZ|7WL;0#QP)<4f?ja`|3+6i4gjHsKjJR0`z z_u;^|y8+@HzjUC#9(NJ!>((%@crvPBa3X*Lu#Xrb=j@T^&eVtUdVTvt$e;BY+NAjv0BuZ^ZmOc z&R3wx`4z2%r`b={1(~>jnueVyEx$Y?VdQd8y~BjMvtD9z%)! zn$LhMz9;NM5uZ|iepyGp&$ziTRxPfj@uN`0lg19hzJ7Xtu4~Ho9IJ}=t*3N+&?`6w z{%iCYz~eUpai9)^kXLf7moUzEl12H-B-pK9d>&}QWayE{qj){^g?nmGN9}*Tlcp#x z27KKb`*4{pV0U;oalNvSG~&3|(M@9AFX=vdOD)Lva81EPO7v-udtwJP1K)nv6Lb_8 zw71hn-e9*Lf^_fYsSZNgq$_PzmPhh=^8e~s>vLXScOn1$x9!vH65w~#7_l9~^6axA z^N+58`%8C_WQP@r_hm*87fW?D<9v=EMBCMRZS3)u<|ho;X6xobwl`j^A9Sb_>T70n zMBZlCwn9|2R6qoLr`ezDPxldSv=J-89PWzop0`81;_nFd8wbOF6YuSn>VD;S6(&t@ z-*HTS9PG~F0{$O9j{UO{h{I&+2=8WFy0p(oCEPbC-rIiRf9L9^{N{QmV!o6Z4batk zK|R`xynWrvmFuRc3%I9GSqK;((Y3pUoF*BFJLJCoc)z))AeH++&9aCI`-Hb2WT_9iQ{~%l)x z)aE?yZUXXIl3?#H3&1`}3vbA;Wt;K5Y>hBpD*W^uawISmbof{fzcA1p{z0G(pD*|b zIkI3o?A!?zR8pK z!_EW(P6Ho&pJo3%g!2eign>?{1w!AMdxC$=?I0hNd7nKy3iJLM3OSYS$9|k6*Sl+n zI7+Y^=B4e#&(^Ttf|u~U5D(xVUH0X1+yVEcjl!1M>kdTid5?YlXF>S?mM{40nG5=R z#{0FE;dq`C1bd^>3;w}jdya#&1pf450PpxPewK4Q%t?^$L6d8+9&|^$pIm=tH^(7& zn+d4*_6GWEnLpx*ft+WuY!k*^#`y#{gR%Zb{^;)}*QvS1>y|6S`wt=jziu$*|6sk) zN^yOpiW=s9Ee3JfiQ$0v8pD0fNhm573-@;DihYV&55(QC@_yL~Ti8dnOR=x%B*%K> zdt&{ZoInRomR$GvJN%RS5a4II9B|dUVf=b)z8AX{;QFzR@e~Za|JZ{0f8T(-tr&I8 z&odTuKQaRJ>RRI^p@HCF*6W z$)Mj&Lec+mp09~J`ZKXXz3|4ifInnA=5G}O_(Od7+X48wr-5+~#iD&|1jaiQ0DKb?c=&36WUE?6r_b@DWo(BH?c!0VR)jQ`OC z^ZsZH{WePld`D3jXMZT@l>7kKYE8hA90&Y9*@pg-SxzN8!;kOB>mbTONUPd~hoo>-2al*6)@-*5}S9 z*f+)M!2i;C;9n_{pM!v}6)qhA)B>KI{eXuX?vQ_*9RZ*BYOdS-6Z>0}gTb$>{LpTa zE9hXV6}~@)qaU{*{QuDl^zqAHknZ{3(FXJC8iW6}!|>fj4*c|S;yUBvIS<9hH6H&D zj>NZ15XKL1VLjgkzc2E~@4g=Vyb13+S#W;C5A5$21q07Y{#dUfSG-qih4wP$W8(D#w}iteFyE9peyAV$fedyC(3d>i*zE{F*PdS&%yDSZ{2pl zJ0u8n6YRqNwg%R@lN@x}#}ngevEAchiRUlhU>EfAhnza;iuD`Mb+NvMqknIf2Thz0 znJD5}+TUvlc&ek(-{q~K%hUeAKZ$vA*Ay4Fw?n(;@sPj4+W~*8Akd$?3;WmVc>jby zesA!=JZ^0Q9j&s&x;X~p|2#jIKd$IEAslcF<$kkSF0NdUdLH*%0MEwJfX9pFqPaid z>FtF0rKks_dm3xw@O$6wpo8;)=zoz5<{!#-&=7yD(^?PUaUsJy$`a?S_k4rj-Jb2n zPJV#DpDX5j(@Ie6TK04Ji~R?kaMstX2Pd#y)MGvHaV`q*Jn>^b*@W}2rtL64&p7md zU>oFINFe&tbK!hnb@1UvhNHn9?K2$l{s#-;)<{L61E!B8rrWh_&zHM^E+VW1sjjmqoC8|m|2_dj-=W%U-LXpL}L6!Y?prUMSJs2z>jGEOZJ6QAm)9Y^E>UBKQH*A-{ow_c6S6F zzqH_b^;t^6bHRH7Ryb#@+XTI(!}d+LK;UaB+c*2{g~5FlCxcpoehVY9 zE)>diBk-On#O)>e@pCpSbhOL%nQPNKKlR< z$F2CjrzXhpxnbbvv4Ln8<_SLkV=olu%oj8si}%wg5?2}{@xMbTzV-dEKDRgFULJ?` zcvgwS`m3`YIh6Yq?e<=Z!T^^vSx&NjrR$D$`gbGVQxoAAkFhF$_>4S=zHC>P`v9L7 zoNv9)iuF+w>`&b=%&%7<`f>0C{>1YRxIc;UemN5VuVlP;^Ml-YvWe|)o=59Az^Sqg z^A+h(I`==E?ZGG?{O{z3^-|u*`qV;*AFnu(`5F5z>C7)5w*a1}&X@;T35x8D{%(KZ zhi7dCT~!7^9*O>q6!#k067w>S1fG6|fPT__F`nxtoU41wbaOTq?TR7**S`UvkKf`s z7Aa7p3I4d|4f^TNe)ED2=r?hdP^fWb+U*Y?u|H54fc8P&fa702FR^eP_8qSLguL7l zigCWOo`1vfhEO{}Uph$8ob7?_z}pa>M=Zxx);mHjo@2Q`DHibE4+mYX4**@dIdguh z2Ggw<(~mQrf1C4px(|pWoaA#2gS~+N4(tzZTq|^$weWXWm+y$z?hXO|C$S&=-3@dR zXUq6)2KdKq!#ECXC&g`n9^0@{(2))%x50B|4Cti`>ya0H9!kWYbnIf3I_TgG`<)Lr zW4t+b%!ez4u2Le$JJ82#f3*L`{+$u$gp<^I7c&IvnJLef-WUpqnIT@QD~7lJeF%^7*dTVqTV1xSa1F|KbhC+`RWUFdNfMQsz}17>Xi_hUXMD4wrFJ$@6Ri{e;?;RDzOU$}oIK9}dm^@&fe z;Cn(|L9Z?0_?oECdMgsGvN;|nTZ{D%3c3*iak9mJ&h#eu(ZSn*r`%xR z`2nwM`9{{WT=zwkUp9(QqYdb6mId~yO&1B$wX%C|L(cqg!#alY`4w*)?1!c<6Pil} z)t@0>V*}e`ci1j$a>RO^vE=i%A0T&U1%p3bxP7WC;Ou6@a_}eQ;P?ov!#?)+W4(cw z`3}5q*_`3tfOgxhK#y80kv}wCym$Kat&HXB*TH{X*&iS02>glpfKvW>n3-@;aeRIS z=Z^~<_Z!D@=)8k4QM!=vE%JT4usyiP2k%?CU_O_v1jV&8FSdV$UG<&q+GByh^BgbG z(fjp$UraOb`9M3Y*C>v^zvFzC!*d0bl}p6ZT30|HgV_#TwgLTRtmXPGroz3?wzPQK zJ>X5oal~*J&}RUjcRjXJc%iuV;K2*{mp22Tug-Y`j$Y3Ac3#K#xqJfsrfVUK-S&p+@7Uo-y0EwB%fzJ&8wW(hd=d=BzR^p~W(;%Rn}7Y2&~M#kdNIqgTFo3AkXga zVnM3&P@>Q&F{co%0 zm#em3#=4C303SMTh8#@dbLdN!bKTB+z;`ysJHNAEbjJzvc_E&clMa$jHu=0u?SBjQ;7_J=f#Wz9|M8Kf(9rYb zCC%~AAcsvBAb+i7Ch%`1a30SHp}UQpcvVLs@Oxt=&Iwd4LB8ynd6=)4AfV1bIp*ui z^2Tm0;B37dc$+y_7$IGtQU^V<&;@kAdmW!cSR&y5q6WZK=Y#)~-C$qzWk2!dYGIyq z0m>uPp$p->qK?zpFPQ*&D%SCn&Pfej&gV%ML$9@&19^XOqHy(+eP=t566l$KSsn%R zIZ015z~wUwd?KDJm;AuO^}u_Zwba&%?wL6Lnqwhi< z1z!}~w~pUYv`oy(m-hw*&AHH*(dUt7fT;VkH0)UQ(fO^mllc4s$p zK{_^=e-rtbf2ZJlK=YBTH+2Q8b3McoT)U7rIn@OHb)1Jhz>nhn9*T?LTZ-orMy|W+ z>b?i-dz8<~majnj0gI7`QYY4Df8u;h=_=nR+}RO$NVgFVj(D8>)2j~jDDKNj>v3Z< zud5y3$K8ND%1?xS+HqsCj`xOfy~}=}$LfWUvomKS?|Qir;_m$n1*Zc~Lm$q|hn%ak zK>y-7E$Mv4)P=}DEf&u?*~r_KS(gHyQ #JU4_y#QD4*a2)GBkK-N3S&oS3e{qiQ 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

    J@T)iP2dPL>J$9jM&vj1;w?0 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

    r_bRcVGvzz?j&fGKYW60xEaGH++9)EO2rktY0aw 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%0A`)=hOayP2vZ2n&JNP!U)`dz8FB5 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 k?&^Z)UQ8G&RmIs?!pPGBILD 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%0ADzkf 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%0AHl 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

    hK+Ydroi?sEjIKgTo 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 {N5PHC_bSlr-wn z4UyUw)w7pQQR2sM<;v$KOvtM?`bb612G>^=*B?!B!@TZB@!}{iI#TQUSSBVch4L z*6mE=!c712xvuvkBoWnTj^9a}z~Db^|L7AZ;#2Kua|ifgzp4_NcT*US2fuhsHHe~1 z%PILru^2q7uOHniEe6W`LI#y=0R(0+Z0n$YN_vooQ>zqfq@0W|mcn`Dn0hz|W8?YPWVI75ZwuQircb~E9cp-NApFe@T$*kW|U*|AWx!E%O|6K9sWYSw>o!e?2G zduE6e0@Bru?%YfW{HaxSY5gUsV@K!1&$~9FkF3Oa`U@*$tvAFj)N^8wd{>(601v^x zr`WS$oF8G^C}{Hi_|Z=pCOvj!{AH`pK?{W+BW9OWkTW*IC z{2UghLpF&(M`$PAHzIDQ1A}KzmT)7^N}~Jz%XJbRb=<_qofJ4PRN6t7PL0p)Z%-@| z`F8jgu^eh559gBgjdFCO!3))eJSn11-p`~UDz|-(w3{^5*h};a{@*_a+#IH1AYl`> z&^wIkNif57Tm6ej4rV0r3yJL{@~Q{CxrzsJKau<&Hmte~(;`>(M#MAX??xO8@Ad8> z^2axRlIK?0aQxz<_k2A>ejNRIdXngKU6z|l^3P>M|Kh}&**p!R3kTUnSQkj4CSg}X zuQK7WMAJ|Q;Wj2B>}g0v#My&AThEUO@Ssv&)cmpqFC03xS1AU#;U+XTY!t$XV|uUq zWL=j?loblvBg#DZsOH?=XD@&-bBp|gc0zciTdsUFL>TRfJ6?@0vl4niKMu`q|3-Qc z*ONwRO#x?lLB7#wYUs@04BdNx7Ej(tjYRhm`G0g``hX!V+5|SIbH-ESV91N5EKV|X zuGj1H2mT<{iP}(%^%D8DM^V%21_o^NeYRtAk_q4V?r6C6Z-Qz}Q%aS=CZwOwAm3KT zh@i&BC~uvwuKQiee|@W8q#ZX35BZW9aaz#1K74`&pA$43=@Z#tcbcr{HIdhU z3vkLjr^yD7dSf+DN*2h+cDV>_p+ozVxQ(CtSm5B7WUUg)iOkr2U--{(<7OMBo!%uL zG>G+6zU<}!=Yj9$ma*LM`!sz>^Bo6dB&ub_1ewrr#7L{zl>#3=Ol$JZbAbP|?4J`5 zc2Q@eA8-mIsdquNP)Zo;+rpd+PYB}e<_CL=&+{QHiS#;%IFFojJVTpnsiDI9#YJCq z6XaHC_W%6O1X(YM!+x!dh@H$FAJE!}PP%|5)npoMa?-ThHA@CoU*qayg=BcizV!P8 z=rB8z8yo9OJcr+}gq><-qB{ok-8UrJ4=|s#cF)EY?2Z76Iq?x z9chqod7JsmOGF&rl*{9rW5Bca(I4t5>^QMWMk_3t6A~Y!$C~;%vF5U&c;XZ%3Qyl_ z8eC*YYgf;0(_U6wKmEGorx6pn^fp@0=h4D9&!clAv3~EBDPOcU^CJ0lrc75WA6nNV z$rS^+5JI;n&ApKg$10rOvG=i}X!^B#Oq&3>Sy?Xs8sY})ce_R|T~-XQi{7|*mHVIG zC?7gcKt%NyFUo@7(h0V6LwPrAf}AcViWt6xS{-At;?aG{(+R zxeu_yq4Z_^={@wI>yDZ#c}s8 zr1zm$5X~N)E;1f`h+=1z-tdeQ&R(1DOdn>(iGvQp8T0fI*A-_rw%?4C32W~{0yd+{ zvS;N@qZnjgKFb@k5C!-A*g^UkJ_JrZ4|0`Z$4>WhIs+AE)F1FpyiF+v69w1Yszgcn zsr}g8wk!eh)}sdN*Tvx>YVnkOMGX6nbs2fG^MEgjJa%*^E9PgNGiRKLIw|$Yv!Yc+ z40~P^kv=JnE(LRPiD7ZTU`tZYa~?SD%zVE+ml?mNJ5-o2Z@`VsmRl)*DdP>jrChR- z3eGhT-<-d#gjLTHp2i7z_$!-wG`C1Y(&)&&r(>J3w)@P2QI8NT-aeLLLg>WEIAdG_np7HDL8Kc>B>0`bfPPmQXS5Ei)krQvIF!e63y z@_~o|VC%nm!}fH2RDqo)K7C}CPSaKFY!PmNK|U}8sUuMZQ| zqppp&)NxmW#kZ(R3T96wZe~1Uz(VH!k^|Y>Fc7~kVwP+VimjWn@9SD)POI**tDYge z3i#9HinPFTucNp9h#Zu?cDAh>vB1z~W^hQs2|DdP(Nm*aF_=Sl=zzLCc7;8^oV{j@ zulL*I{5~t8T}k8G9btAzN1dA~>vqKnrl-HP?z`Y-?7a+fRVP?#RmVJY+KP+K_fPIS zU<>jxDl?ncW*7;Wop+=+0Ncvfha4rUXjdx^4)*6poeJIH?oalh(*JNxcf}H$XudQG zoG^mVTOAd(NYDnsJ@&5M)M{v%_yhW42OqdY4}W^mWN7Ru)4bZMJjA zFjpY7dOXX$4gHXI;z<0>2|K*!sQG5B5{IJ#qeEPo2a$ZV*y!@zD1>d7-CRQ!4m~eH zm06=;_`9xTr@ZrmeT4Ce`%xlrt$W7teoF#^b~TEPL>)oFtKpRhok+xJw7caKezkhp zr)3LH1|WUnCvUk<63kX^7Ba9TfMJXAb>rg0ppso$D`StrV#qZ$RpTJ!gx_d2it$A< z!%^WddY6BBrz~14gan5-CxVIoGuQV0(ePvanrIgmirDLv3-@YVA$6CvyEvW$p{wO= zbQh1I;&x$Yl3yC^5S#NrYE$vo4thNin;QJ+M$Mz}h1bqgCO3#UhwEzPj)-7+($GcJ z{x~{SOD%jXjzab?@hJswC4?s(r4lfHYSopGC-&dmVhE&sSh|>Y`QU$FygWpWj^)Jp z<-nb@Rl;`p~uIkZyp_!w3u({n7k2 z46g?coIfWo3>u%Y`y$mRP+NC}{)tZxbY5QfF^$dutNkn5tRv<$gTo&Yc{Q zsgDG`vxO){o)|pX9`h#I7NPFMkUQ(16S!z{I8SGP9wfi|?yY>2h(BuI)I~9P)tY&l z*FOt?^+cyraWMP+?VBP=c&q&`uvak(npXXxtd>EzdxX zdpZC4(dL6ghd1qqdpZJ6P_=fKCcyx!U*BCljNYD5GC`VfNJ}~klm`kxBCzID?%)Y1 z^vW{pN#{e{Z86&INDi7(&(O*ZM1o)c_U9KjiXh*h!u$P39$wy^ce*W~1jkw7<8{+9 zcu}-XtcK_#BrCD1$(2eVYdj=j_{l8Ey>FgTmBfrUr!Icti{!%k;mq-vMdDtSoz2Wo z7eS(ae302UVbI!r@e8IE!xxqJj6W?o@WkdL`K!0@NUkAkKNU0Bk!<9=%|4&VySX2` zzke$R^}~;1-f@Z}>UW5EU8XqB`uHc8G=3oM7))qQ%jH4jvBGoY>mraJU8cDAP#ggU zTU#gnr7@rv8N2nh6#m?XTxZ2_;Mw3^sr)Y_Rr9&W-yaI1WlzMnTd6YGS5tOwJIZjlQGNfWlQITGO|05CE5WPivF(nWPo$Sei}L&F z2;5n-)MUw-6XA}|9IRXdxUF8FEpI0b@`bQ!wL2_mr(UTOJhnjkA0J@HrvnQr?IXfS zxy4wJenkw@jE-Jq<3wMu<11Dvmq~4MZy!y72T2${+(YCa5*@lPb7wZgx3N_#{Fel( zG!+MoSfns5`qVG8ToRTK)fLrVY(`up+pW*Uz07b)oFklD2x}3k@_syWFgV&P$Nf$Y zxr1Y}9sF|0yz}HDzpD&9&bfWpZP<)>@x292>T4urms-Ap5owqe+ohWpDPX%>{E6N! zCCtCBF7}~T#@i7~l^bPBh#o)r?CpvIw)mu7uD6oG)pS)mQ`0rld1cMdD+_soS5YxvBZ850O8RrGae^`0JpH* z%r~M4nrEAhf*8IRX{J?piQx18Lc2C~auh5)J$am20#tQb19R1qILmU&%|}cMVj5Cf zQ$oD3rlrYVk)}eG({Rk;gCdwXs_1t-R1&NM>`%27<-yv&hoH2`W1Ew|@X0|rIBzOS zv;HoO&(ngvZ#al}Yjk#v-ysJ-{xK`MD0w(-OV2VYYy9*Oc{X^eN}T~`sx7r`e+WY}=XF)yHBr3j zW_-tcUJS|CkKO#$A%@cee;g-7@v!;p^6}e3ur%`NR3q|wW_b}Ei!;pdyr48?Vk?fU z;kP3_-zD+m@XdiGBWXOa9+_S>l}7&CNb2Y!NeG-<(`;AXj8t3SQ5Fs^d}Ixb&N|8l zlHd`^H4$;_lWcx2{!t!Z?|uDZT%d@KIB@~$AVn0<&CwsvlLu|HcEQgXDg4h@5X83{ zwZc4JE+nv9@A)_?4bSHA^}YH^c%?LVv%*akqOZ5{^BJ;3oI%gv&5{sg)wGh09`j+P z`|7r!1){E6m7;o9LEu%N4h0uq7b2I&%4J@)Kz?T^&vT%P&nWBAx%{V(?#x6ZAmh?9+hDKMpFj= zs$kRT%^}J$6fTCHn8~XSdo~DB*ZO zc=OdEB~YZsZfPQL5g(co>Ctorg!_IpY;KdndE1!jK_T(s>VPPQ(>Y9Hxs+g} z$2)GAt^)5*-OmmDw}9+wPxjmQD#To9(}@Fz6;MEXHdE)bFt|DM65T08ATCC!QSg`- zN`>lN&#gJ&*nW7&R-#XmzP0(rx341bkrB*4b3_6r4Q2-p^huzNymCORS_0uAl`Z#& zh;uTFH!|}*aejvSaCuzf$8{}x&2wIixO36X=HUfmza02_rf0sN z!$1j7Qro?wqm>aKTAfV&Mj6|mk!lhLm2l{jINhm}3P==He2}Rtg?&bsPEXNr!`4W3 z_|2d!M$A<_mn#rAO(9S#8@hL?N2FJn$PigSO$K-*5p!Y^lnsoF$d8Le_Tw}Cl&y~^RP;@XPN(o6f zUZ3CKEs9I`zHQ1}XF)@)pY-W{TkxHnI-^}m17}Z7{#L0_2Y2`Bfyo_e;JE#H!#$BL zV7nFeyGu+3!R@k~yfX@*zPh_^$y5qYK3!Fc6^Rp$UVl;`V#@s$$hQc9^tB?%#bT0^Oa{N^hwM-qqL9$|W{q417yI6~4;| zq~pTc)lUpyn2?iw>?Uyhwq)~ZIvv!DnI{jtQv(~ttlD}EBmCTyWS7QGuvo*rdb-#I zVH_4+hRnv;)YNe$?L=eF?mgWxGvL9S_RH>!tp4%atWe#` z`8d_zg7B>^Rz1pPhG*}(1=+)l5f|nhnWkodhDYV&eGA$cxf}T7iM$GI56q8geG-Py zeT@&a3qIJq_EgVb&I=oYKa7Q)azoj$t<<@gZD`Oj-{_*O(Q7wHS zp?ae`K0Ujo{;0$mHkXn|z82a+Xp#4ImxKZKao@hsF2ac?wXBh+69Vw|LXY%|XZ{FL z?=;&x;ft-;?cTSy_`t}_d+^$_$G`pA4wmLSUW#jm;CXE~v`!-kJzq6fHVM@P+n=T(jF@FoZhW|FH!Q}FlipC|L3rDepCElaj5qQcH$RR*pz_hXww->s ze#)s&=7lJpYM##8aNs0r^**GKx8x(JdFcWlbu>;Vn*R93wHMo}4k-L;Da7x&kQe(( z(y@`B*Gs8C5r)+?oR99rKtbX|?hWYxBt**X$a$;`x~_O}mxl9*KTFM!M=HTJsYU|{ zo>O>~vmkZiO99-HR-D@GkKzk^XvJBogn#%}2o5ZW{+tK|Mk(dBO8E`g=c-i&LFM=Jlsjl{Go|UpF`v&UR<=eAJ_GR*LRu)A35! z``tS*O$>mNtj67=`qy`0EhgunVSW_j34HtyW`ARRuGXS>fd#DKB5GC3qc4T}3# zYB#*7zyznSdf(zb2JB51ve|sD5hfI zxM%=lMI=s%Vz2p&jc}Y_H`O^%g&Qt^9J0@%GWw5GQXZ}={Cs(6E*;qwn+WNN8iak_ zmH#un5*C|`YV%dgA^M`?iTKQUM0?1nzlkV7V%!E=Cc#5E;n%>geO?;5jO7_NvX_y+ zb?Bq`@oL2V{{dK6*gxp(LFkg7Z3=cxDZ!bJ7m9vXC&9Yf^)PNz7QUT6`rh!;5zv>6 zJ`=C0!#LR}hiYdnZryrXVfwBTSz=G89XFKY_LGOFk8LZ$1^T#Djes2Rjqea|9Ek^S zmf=TMB{f`|uaG7`a}nET4QD;?mBC_6bg#yb^SE1JexcCe41}8mZ&|bF68V`w^N3{> zrgqR)8s@R$$>T|SZ?%h9ec5cq$5e)ibjkKpkIq4Lf5F$&M^8c3?uvBI*iop|i7}1o z$3iuI(}z_>VH~^kXW^^h*Kt?Kq@)yOG$d+S+Y?C4a&9g!%ftqT>tS46hY_34V=M4P z3@jPkk=*%L5Ot$J=uv+S+`etD*P^NX=Zjp1$J#Z;!gFU4_}B0w8^37Q7bt$lpC0$G^_Id zKE}5yQ1p3!y!_J^@G_8*KhRQx`u#xLJwht~a0O0K(ri+QmQzM*JN0de!6y4 ze^Ns>f9039NOef1G-}^Gs0JyfxJOJjsxVl)H`qR|h)hy``>2l$DtdPC@CK{k2>W4| zJ<=M`&#P^h@X^BDn#)qqm=?UANKs^b(8P!1Poz{-tDq|F z-q}tbHGIgUUhvwa4q-7ruJi~se4i(sV6>D&<<|9r@F`(Dut|Ipb5aV*6Q*D#Xheuaz=D~TjbrwbQw$Lqnt=@c`wkT&XelPy+fZb2!f1eJY&0`AxF>A-i24f+sfpZY6kEdrAUL1_eksVD>BF(*#@bw`gi1aO`rWEpdMEhw|cOmptwU+5L_n`0a6{ z^VH{r^)a?6UMD?oh?-@#2M6Sh@O1wE(n)Va$kF8mmGB$DNpk7YIG+|0TfGM&!&Shz zE3Qza(h&S1tOXxLO^NgNuD8CoDW-O+^Nigxfye`|7da$j^jNib%+4F2!ZG*#Hc=8@ z3SSPRbWul1DCV&m;`WUfHSkMG;pAPq=OMF~J>g zK{`KHQ=E9ZL1ga*6Le(LT-hRG41qloZgT{m?tYzx?4cAAS_kX{94|1Va7#MP!FqFa zJ$JCIkhR3*UTGCtOW+_Urd_J3v# z^{gMd8=prt(->?%h`% zYL6NNJyEL+JIwE|yO4Lt2Cr}57(Gbv`~K(Enc-K8#sl71BN!wX?q)%;}M%ZmgxW)ucqxR+Fvbq?Z zm%L2Z=!RB?d`jKBZjh)Io!q_66*bh<&B-Dz;6EMhqinJbeR&73TJTxI_tNl_KiWLZle9YH#IU8iKh7Eic)^sP9I@mx)1?C7LB zGJmBahH1yYyvYfB;yUKevD#os>3Q3}!zNI#IrUUDMhkiyHEAwIutF!deHR0bJ9avD zf7dT`g8Mz*+N4ki==z)z8=|trHruK2ql+Z`ju5pryTJpO#s{mnT6g34TW$x^UlHliat?~ijdUEal`>Xyq zCU4tgc*_@uDKvc^C;Naja_EbiXFRA3)Z@sfqA~w-!uR&4aN>Ss{Jw`e1n$#)6uBn* z@IN8c2h;3(oHvv>g5%`#fZNyDVPv^Zt+6W+mk&mqlUI(%b1BB0uJ)*Z{m(#5pMN0n zXmU3~-&~bjYH-FS`P3VV(TSLL`{=F6PJFH_m2kQHK`?)hR)t)pYBMGB=8lPjU11M2;5{@*3fxpM*!IF>-BdY^1xmX z$?Z8rANzm(wR8w_l;3)!n)q*j4}(SLN~t1u6wZab(l_S}hK>(upL>%xn$=~xerTv8 z=_rnAhgE{6#j;-WOer=W`W!UmQGyrhjv|6b3sI<}N?0xD;;?uQYkNx?M0rB@>lsDE z%)WU=+oA;ZY2 zE7&bsF{aB@3ngh1Nkpd-e_w*i5YaanOhGz_P@9DN4=xmf2!4UB3^^b#zpD8_RRdR- z)YWyiHbChaBT*_{!RhG`2YJyNtmTTTT$--HIjYhd*=40@^kA4ZZZAgWw`dUo!8{~S zo_FB5l89wX@0EDs9{h0h%0_5j!|>#>=?A$GvP;zY_KQA`~%^rLZaM z@8;fKh}Rd~jM?+kFwjnR)_aGGp_VpY(oVc!NgrA-ow zcD49}9yu+Q!;I{LR}cFch$T&$6kW&!gQKBMe3>}@`sWQ^$HPgZ&Xr#+$Vr#ZHCAi{ z1=Uo4W$zWJ>q$wO$X4PH>hx0P93IMti<6IJ!+mFT(a7yB(43eoI$M7SFOv-khxMB{ zP`*F6iLVVVbFRz-YfbRnS@W24v>w}n826v>sz!EguKQk|(trD%3!AJ3uDwP2c-QgV zwf*CDwEcnQNR23t`LlCZkXKOlzKNJeI8uF1gQNNm23`JC&}|4ZFC&+nXoCNP9|gOv z)`O6Ky+FrajqTb(XT|%@L+hiomgKh_2vGb%T08Mw>EKx8cnf;IpSDkruZ8DuQsUO8 zJP5H#555VJ!r^;o6f%wy3@g_Fsb;P={B4KuH{pMuu`6gvVp*fKF9$KS!?vuX@z3|R z8-MkQ29UJ-8AYZYA_rK>DvC(hX>x`98ug-1P5#>+$JbTpOo+ z72-Ipau120$L~eepoBIWJ8&B#y_R>m1|kXP;J$hlnS{G@71yPI`+Wh= zgC%8-Y*6~Ax6*|_GCB|aZlZ;W>6=7qE8a6?-nex1@?SfcLqlcQnvfs(lBodkjiFOHyYd$FZHttOPqg8G9hN4j|0Sdo`$+71^-2ML4@)#~ zs~W&SQ6sF3s6V@3N-AFI(}rhCrUJujBJZs&N}k)NgIneb!b)$nAfalIphnCIY}^qu z$M`@6U7f;wO#77yoPD88HD3p63ol% zxOXz^LEK&SyWeRY6lt|SO!=UJ;0l?#tp8PY{r|D`Uv8Ba`M&&eS|VBJQvo|Lk@eeqnx!CBCaZKQ6c)hpV@Dy zwE5^mGOMuv-d6+2r+ho_oMwoI=AO3tX+x-J3)8Jd8p8WWoP%qe!M`~GeN;pK{w_i$ zY#@PZP+MFR@3nW{9nU2CkOdbUJ?o6{>XPkek8Wd(r8n+Q4L3pBi|pZB&L;SzN7lCY znK9wZEJVYgXbk80&+0*EjNukq^Le5`2TfJOHL_#+Sf(jby-s5QX~7$O^#tFgJS(uI zN}B|?EvwFPFSMatx%?_$ULBmzdaS(+74SbCAq9!E?UDCC>LSuglS6#f0H*2W?{022 z#Ak<&v4TDWL`R4BgOO|ae4$V%dl5h~s0%HP(K(EO6ZC}^7w zw5OeYc-{4JcPYU3@pTh|r=}DQ!H-8ZDGsTCPV;&@Z zW9-=R^W=jLLlmhy8{}Lvz~f(1eg&t@am{Kmi>Kcb4Ds|e*NMEQ-EU*SsG&I?QF~E{ z-ZjCiMGbL_3PYT#q^%Jz)dOvo-GU9HDlU|_=GyT|A~22qm-UJTbXO(D~v~!Ow?^$p_z?BGH03M2C$85xOF4mnu1^f0B~kczruI4T;9Fo&Jt)FkwsLOJ;XLXD}V#cP?wVIp2TK zm12Yp0<~qkp@sF5JnrfyYIuM5!(9Db2Er`ZS}^lontlqt2=SY@9mMI2gDppXG*IDQMYYyYOk3bGeGC9 z6654JZ~SE6-}gGk30uQ9yKkehM{wp9{(u}K%+>}o?%pf~J(*vh)9HONK|8|b_+uB2 zI~DBQ6zl`TBnqNM>4oGd3Ql^_op{F;UwXmB0h%WFYD!L^z{f8}ECAQ|0)5P;bxtiqgsrp2^8c+(z5rd{O@088ItJi^S~Wo+jacAKL@C z%)C~8k|zKu?(BMBl>Ko>V{x`d&=*(7f8L(!^9ILG8lNqx+rS^7HttnuhW^?WRE``}WNEDmA&6w$e;s$?h9Ug03b;z9F zXd#FCKlGw6!H{6wJoP1HKRj%A8{DAVi>_%2S3OQ|ygIpMURm80A~Q|f&V&-r$Kk2N zV#_LMeUtU8Fdzh~_;}IMG8o0R8S!<*yp7kn&+b~v`%vMxsfpak4~_cmM#so}{?*ai zFi@T8^RSGDSLR2zx5*K(H2*CTG!cq|jLf}cYQcEPnU)pJ=nFLwo7?RJT%i0e=A2U> z1KEQ+eXqTYgn-zV=cXPZ@EtFk6dl=*BTC^M!p0(q*;!}2))Jfq*zta$~^^RPbSt8b|WR2x$;^2N| zOq?nt2D$;)-2JbF;qBLuBTs?@;B6%Fu=a~P5|@^~)F~1?HpkL?v-a^2zNx$V`bI3& zOWm?cFNY(frdes@$Nfm+T~+$cA`55V7aSeGQ?c%qvLQt%0dhn6qn{NHLC0_IHuppX zvV>3gn9X?M(aA9BD>4}n(fPwjOhKE}-M}M^iP*)NbLncuVX!ZrNgtC4MkK@7F|#Fa zToSl%brh3S0BM2QqyZkZF4V0ZDqj(OWZzt$!s zk5Lk(Vjbo$aX#B6dIBp)s}xc$sbY&2`I9GCyRlBFM$ag>qcuXqE~2j)uY61xFM8Lb zsX$J$bh!eh@^829bUKMSGPTQVyEXsU-8>GusirJB-DjQQ;&6Es*e27wU}!-xSYDycew%F)N*adx+{?uFSGG#r3oD0 z-RMzpc!Y*y8Y8_W?@+B71}= zW*y>R2VkA)`$K%X0S2w)^k0`tAu}qzY%HP*&NS8A#S}vXALfq(b`Qb#CupV4o#2x@ zQ~rI|Re1lRKP8)V0Xy_+zp~M4WBVUC@5p0xznK}gS02J28>-5lduX=n-9;_ai=x|x zZwAg^MSFZ9kNUs`2tLStNS|YX(I2A3Qa#3r!~=?ZGl#&nP*U{O=RQ&|9r$`?xf3M| zheN6@%fLgn9H$X#hK~u(UVU><@Kwg0rPz>%#VhZl-QAgi=HqL%nR zie=jm>{S~g=FKOpc+0wR)l|>8Oy>>`++um&c%>N~ynBXO?o_}?>(Ld%ff1~#ua9N3 z4`Y5>o%ha;p?`eLdtm-+0MU(H*{^c6v(3=F?R~+3{vzs@stwcL>tn(6O)j{fqV;vF zqxSY;v=8m9%sn{-n~B?3AD7=jMA*VLJ%bkb{sr1D{;T)QQQfhHL5O7-fBiYxyP)+4 z9_MU?RJ_mbe*Q8vMdyg_kll=7wv*BNV?+4g&-VU5o^{{9-+2QG4>yS=n>9k9zP8`d zxeTn4-cKFAso<}Sy4f)L^UDJyUJT)WoH=2Q+K11fEH4N~JD4wX1ZIVmL17|leA^8* zl;vrY*(496p07oIV1FNoMJ!)A-h~mpKL~dta&B1+pC{(D2lFznA3ns>tPdmEq)X>!)lvFb{w4jOHjEb>=kD{HVrf_6kWzp-+O!W<(+`{D zK<>UQpCEJWNWZ&8yV(qSTH8v5a!lY-9&IJ1YK-Qb>xY7Vk`P*)n?z64S)4J{_g)&9 z!k{^A%A?u>yL6djuZCLUYiCPUSDz(Z9=^Hj_00mW4sG0%#bpkg!!(noCdRN)`SjdD z+6?&&ml>`Scm>0Aj_hs@D+mg3(7ez5kEZL6%jtc?MWW0QN@(#dGqP3J(WcN+5^c07 zZD~)bR8lId(xOd9C<@s{yHr|4DGiE*-*e7;e*N=)TJL-2bMEWD#;wWvsCQw`pi||z z`7YFs9(_6e=q?C53~KCi)kH|{6~m*3J0Or+CpkS+6%X{B<<}=^qRD@)<u-H)*U%Z^?;vWRg_Ho;T{o-cQ&2oES-BsmT@_QG~a37TP&(c8C z->uCzb=9#nvE@@`o-)pV7p=NRbpK@^vQ}lh+>GYe0?)o%Y(jMNk5v^;dvIMTKc#Pj z7T#zSCR!%$fq-6w@pP@7kP!`7t^8XRWdb`APRv(^#Ik&yRC@{^3hlmWbOG~SMt9oW z&_Y`N#R`*kdvN?m#cD3Toyh6ix9&5SI@(|BtvX|`jO^PoD)GxyaA*CB1lyiHXq(fk z_v^AYu8j?ZjNR3SrTWqgIimMpcyq(=Qy?rXwv@u{g#-m61Xu4%rWvIdUL z(SEdkt`-izsFF{P&_Siz89bDdRrT%J@HqPDjxpOsp7ZmKBKb(A_1uOsam6>@5 z(G;^VDKf$cVk1AD9$6aVM$Hml6M0?KOgj>szGn}ry8g8fc&Oox*b(bT0kW9vBdn8j z{UEeLdlwiSH~_==i0-(TI}r1sE6+_t5#|3y9KMpi6~&EV)BR-+BFLk0Z1zJ_*NZFS`<14kFu(n%blp}UZ*2gf%HR8ks&#SIKr+Q%o}Axz22qDs?!*Ek zY2Pg$)lj53gKO#@V`S$vn7ESHxx%ZmA8j~*AF4WT{KkebROpKG8{3WFlcT3?xxE`@ zGo}a~9kasp`9&F7+YUn_zHnI0+yV>rGm2iVH$|6u!H`3SAyUg46r%!kF!qKwdYG>B zf1Eday<#m=qMaRANZX-#ZjW+{xiuag@GEL47=e?%8b^Rs&@JUy~R#aQEy4eF*Fl&~-GQqiz?&p>@)e-)%b+h#AlXj?3 z{V8?yz73v+~JU_?lX>vaiMt z8JpBsZHckPyN`}ipD$QL{J@=2lS_t(-v8!u{`!lRAP0U4+6Wp6-v zn_1JQQ8#GDJLa>E#h&-_>Vm8lee89per6~ta=<7Yi*r!CLhJ`9kylJyhm^%OP5f! zrucKev&ceU5BX<~JnGL?#4F!@?~7{P5iBLBBt>*MU#&wPF0*w869+za9N%6%R?M+J zhMkcElXo4k!tfQJ*9&CKG3wQS?`SO1uUUrekaYEjs@j_y{#$)9Ps&Mt;Y3d)eP3Sh zo8!jT{Ui_1PT2QG#Zeen-0qstZV6A7JI16H3a(C}_22jS;_bKJo7U|1g#WsAM^gpd zu}Z-B_`>#N!Rd_4@#8A-o#=zB$EKz8!j<&}S>wsuo~~&m zzd}Fe%uL=k!uOGBJdq)1kTKD4Pfp2cyk7PwfBaW4x}`>f3y8l+Yo|`b z+#xR)yJ%$&xxRXpYX_rbz?lmZhEFordJ~%haCO1c`DZu#VrZn!^+i9Kr}a%jGpunV z?(L)p0#;u1Iu>wSbLSgG8bkkb0djrGH`+Mrqoj>=fQn zD=%!33?jKEygRPw`(as{ig@F550+PRM1quJkLyS*b`)ngHtC*)Wq9E)NfCSSZLExV zbXppE3ooAXK6(jCj_ZzRiN?Y6WPQ?_;s|i<5Le0lXb+pD1J7K`Wq`j`DGDzxLG)H= z%RrmS}=<^nAyZv5T!>S5w-BbM0IQempe1)GALCuN>2xXtUl>e~F1Uc_URf?3j^S8S5M(Yf zx*aENO|y8y?xTa2hl<@r-P5CFv}PfkzqOz3++6?#y1agqg^`+`tgH!XnDzQy=jg@= zjL039pQ5CKMQ%GM_x@|ZR!T-K@D!gXA%|v9J!ZcS~r!H zp~Uv>`PRR8L9HL|N}O;FrR&C@OAAPVX3_Yi8(F+khY9{$JjPqA5Gv^*^whBum#hrL zKK}Oti(Y(0>W4Bo@cKNAUsZ&=MrS9wZn%csz2oCfnZ%z$(AvnsMsVf_Rg*k5I*Ggz zi`xs^R7_sL%uek2cD~10SpTqB_DB)9=UcuSa=8Yb_77E~+bDMacq1~z1X4#sl%6A9lLF#rd2cDvCxgaomOL$-(05s5p}sZ+BiB-Ww)Q`SiIB zJ0;(}l8S3V&yDy7&jXFny*YWmpI9v<7$Eurg1%9%eIk;GI8P48{dweU`6C>7Wx4rsWj?eY&Ed`1xCZJA)v}*vv|;X~ zG3CpWE%03F_1S-{0h>a%ljz_YwqNrW%wwwH5%}z9DpDo+PogEMK$h%MBF&iq$p#LEHMAytVB+TCNeckEzC??&PuRrP#zKUmylvx$~{$&{H-Ax?+Hz1ULX;ZR} zJXWg9&f9gQ15&jLiz0>EVEOtW8TDJwnWKBO3NU9GHlx7Sry82 z6BiHN?>t(r>HE(fkILo+HA8&E zBk**%{PAze$BL2jEioZ&aQS#sZf1Wo6!~P2{(ISg^Bvc3d^`OXtuY}%`>UVh^2wR! zMcmqOY<^v<(}(aZ}DqXX#R}AM;MwyGrIZk9$9faoA5ZCencAx zxYw`T(L!<~=t1?3EWWP+GtaQ>E%<|`5DDN5O!dkSpH8;R+#<=Me^d<{W9)Ait!;;r z2#vs7p~n?|m9$Zmfn{W)%Eb-4bj%X zaBcXV`TcvXjvi(&wO#yfw*k)DJuHXUUc}D5S@hI^@Bub;LLcTE;Fq0yt??B-sMt+i zK56qlTp!ceew2SdqWZ&)j?XhfxW$W7fgOfOUU9oWY`_Si%e0<|2OorMf5?~cEr#Gf z=_4iYu7lf!O3_j=yYX24c<_rsRlMu#bolpO31dqpeLvE*kL?qX?UDa5iOWkHi_KCE z-@Va*Y{|Un!h<_7|M{PNRTqq4a#*(GV5kuSKL49~&&dGm6S=ErNb2EqN8^n5T3T#B z!3ZBmqi<`rAApX#i>&(L{rL5&<&y1gJzW1>IOpXNV|2SLc^{Erf+ilPJvU@ba7cD# z@713Nk=?TJv+AGyaIas#bLh@K?C9V7)^IB6^ZQAv#XdNMKOgKWMEWdXTIF$X1#vN*Vw{zvusdt zFKXY#lh!!bquJ}b!3vk<-U&;^9>Ut8>20TWSfD!Q^TLpP;!|I6&U$^(J}hA3vfMEL zM{0(|duOBzZ5K+|=ty#!MY<9*?D3zC^|7FQ8}w@$9Og1UgxG;VW1rb3NZA~HeN&+h zmOU>IyIi6Omow>0PK3K*mEP6y9bzu9cpQ3p=L3R&L>-PDJm~1b`0X%DzkB=4 zZ|bNSjQ4x_(+ypMod%OHkUq5&bw}=`6Z)&#Jym8~q3U_J;2wE%JeZ<;PNUNRDn6m# zZ|u{8(JMZm72fXn(WT|$O}Rp)PIzaZiZg!dU0Ywg#1U4W_XHP7+T%dAqyE@KYxL`^ z7Y+YnffL^*_Qq^7!lwyxGo+{!cp>U0kS^th?WZ1+Gw*_3?HBEgWtVh^10jbj&8fXJc%>ewy*Yq!P;iL)vus6V&G($%;B z-BCA1-`uOQ3y8k5Vd^Bi$r6MIu$e(hA>zxvmVLn3-ValrL~W0;K7r?nU&lV<>DB8 z7Tb6DO_Dhjg$;4}8_Rc}!dm+!6CY0u#O%NoNm_e+peTN{bB~@YULL3{=Ylm(G6ymS zG2s`3nBPDpNYVtEmcAbPK06$P49^WLC%}*jQHYEOV@!lLvGNrMTxYwEfU2K z$@JP7VE1jmZCV)@p)W08tq~rJG|3Hr&kT8Ce#R{Ccqe-pDf;qc4^eo(u5IPgR|(Mn z=CE!3$~d-8Ka12%+0m$h2)Zdw3RWNJU2B|}^T+`@HoOuKj8$QDGxq%Wp35i+ZX<~R ziTKsbH)7Hqhd2pK(aP14m|;FmdwH-gj;(y7W6*gV1y&#Y(qC$Vu~!_tfJ?s1%7Qb_ zL-Y9FMmLox{PijinkW{E+iBKWeSUt3e3==cvf7E|1FnEps|EbJfO}TY-OufeXRniU z7gM z(JaFwo+jZ)kzG>0f1MXz5ArMTd6|tHb@U+SG~5dbBok&+Ai)qj7x5uHG4E_-1Vk_H zS(J6o8^)bqG?or2p;venp^9=4vQF=*-q363Y6>ig%g3Z34)p^G(Vy1) zLeibjK8#NjlhUj{8k^?AVp?|R&*baSpI+A7|M4=u)ABm6^N`NxN}nbYg&p4>rA-m^ z!^Q3Esf^^Mr+X`xy+pgm++4NxatxV>PKin;b(5g>9501LG}Wc31+J3C4vWGw z*Oxs(AW?Zat|`PH&EjJM3ohW~gR152>56zmmrb5e@Zj?bQt6d~=bzDwGZBT@IXKAI zc!KD|CRYe)H(h|d%=n!@cXxx33a2hfzed@bAH(V5Pf_UlKIqfdTNoI7ZFt2o8}|nS zhOb%d#gdeFi=I@x#@gzUyzKQaFuuX?>f#i_O9;>dgUYbB?*dt=Zn1Sv4m7_;Y3qG8 zCi#Y>T&w6|bzR-)CDqlpg&62HhxvpTF^Ok#prx)E9S zL+U_e7e1uZQpR@lB`oE(v3ZXyrX5fN;dy3fJBiOU>9Hp%?R!ygotie}`We&PRz)TK z?1I^!E95urSj_;f_xNvg8-Wltm^NAQhA-a(ROU?iC_Jo)e>LlzWI0Fy~gYF^G%mr>SKLOUvPMB!LPd; zKj9G{T`+cF_f+HWf~hSyzIixn3sr{)xh90Fcmp+2Nv4ig%VjC7VhFol(kDL_yl~(XyyCiv@~{K` zVS*dtgWn@(z4W9OV}b{GqK!8R$>MZ=`~sz^b^m9**Oq{=wBM~ZtL|vTp}vNH_tjDK~$y@udA^nGUD%* z<{g+!#(`^%55k&;!L|MDT&piQbJn1HK~xvAzTPJYvlWH;8H@gsI{j723jcpOPq5hC zc8^cCJ~q+taQh&%u6u1=EZdLJTR-P=b$$Vj!gQlQV*Gdb)X9qNoOx57jVyk6$Ih)U z#ZZq3QA+kBqL3ay*Mk{H7{rP*1f|F&wPVrdBg)qHP52iZyNqNzgZVUzA(jXG|MmBY zn2Ypz*rT^TFx=z%Ih{j)i)&gey+R$S# zuyd&n7A~h1pM8+q{Vw{z-;c1i9|(G(*MX3E^aPm}_UE-=;I#f5h%H>>F}70*^i`=B z-pBHypD^R+xQwEE2bei~5iKn4t;4Rs>4eFCgZIXzU-k0V;=pE_N$iK-B1hR~-yZl! ztu&o*=MyF}1IRltWnyJD`GT$uEg7HhqB8CDr}Q?d##XXEBkCR^q!Q-Eky!wf>>4m9l2oZOpf0s@wt4PyIGu zeTC7m7ZH`{qX-^E=OtEHjt9#WV6J$M{Ta%t-2H!`<4?Kvj$>!$oE7SQc z5%%Th;;t+UwD8{g&=hJ8_c&3Bq%t#nQTD%fxXv7lz18`qZYH`WJ-JYeyN7V`?qNA2 zZA;7xe*UHRmkp|ai$x1$+2CG;*|ku@Q!uo5t0g+`x2pM^FvnN9Hiz03MtE8z7yfTh z58F;DI&e?7g+|*+$(I4v$f#9ak>g^8_kB-BQV$*`^D^$djh$kN9>ZI+Lc7f{%d4uZ z_^B~`W9}T4UTcV*H&2N04j+MvcZxw~lLhMDh$dL;n_+uC;?L#{8!d) z`qCCg!wO%nY_mgdL2P@djV;!RR34#$5pf%?)QFWjx4<&=lz>3A>CiC zsq@_y3GUe?CdZFLb(Z1E@SPqcGv}RBu-!92SzFeR_%q z77Ne2ntRI)V~4{2#TmKa4)ve(UNt8SNgMg37dhbV`2dxk4qLo>I5(bK z@gx~x?Gb^Ghv$&oEK^NoKIIdTC@-I{o<;J9ofqFzndF3whnfBF_dCFu9``fH7XPIm zwmIrz36tqs!ZvfwNltA3L`Bt;`0>~xQF(y}^3*f9$ z96cq%Gyr*fzQsFS_J#DEqh4xCo{$Vtn6bs~I9_bH?*4qsVJu8qUn3_aA4;C@1i~{YB-*qvZ%mLE-(lR3e517i_6KOXb zPZX;h2UCWujl+W_cT5xvqrt$^!U#Opcy-lPI1nFnD(0VD;|;s)7}9S7@)?`hp$ndR5!Bw_VO&w|m83ov6Aju;52Y$|Ylc>3^XaojNI4cB~yO zr>XLfToj%9_9T0L7Pb%k9Le2I^hw7?Cciv-6{lveIw7~}3PRsb*_i8dp5$#FTv<@> z3r-HUHr~?mlZAO8;SK+(+ht(&1PiZ;F;_8=Hjvclas|}96s0!xDA1`17H;JF{<lIG?#U&SKvW4o75OhV|u8vk-le-IKzLzgEXbk+QB zQ8oyeNe$kZ3CWXziDG+GSzafJ=p=?uXDm(tU8OJdjK=(6iL1sML|3@?Vb!mJY?wxd zo;y68iPMCII!$+K3nb8*qR7o`rpimpQothm6u~6w$IoZZ~glSzU`$G z_8vmy{BhlhZ*IcL*YwQdhk1Bws@ttScm;>al-m@gDCAtF3AX!~{4L8ddFT#$b{OPss;)xT`HK+S&8~(-hvk2-7UYjiFbj;p+J~cKVshty7tpk~_px zwmTYbCLiMSnh)Ta)uO$-W);K4R9~v<&s{8gazN)+OCi#(iqKRf0^T>34eMM3U&f?0 zWBh0FY0l#%k;^R+(k@}XQ?iug&C!k7BB*VN-{oso0H$rc_d3KT?GZERNyhg*4h1Q^ zF>pK?Gf>fM4MM^Yq(J)oG!3+^353k}-C114{`?Kl{fF?ualw;{Wk&1Df61W8^>?;q>g`!l>vp98CFmf@e4_LQfZSNfA_r#BRN!r=C z9-EW1{IwSI=fN8W7{bjXABg*OU4{MwLZ0CgK45*2A2Pcu$g9Bfvd*Z_fN z_wGjU)*xXyO%S|=2UE~Lhs1Z;ANN%9aXxA$83Eh|x8$PT602HRJzpb;_>4qX6u>U- zm1_66C0p122Ghn48pR1Z-txdVX#RO{O+BcaGe_9y1D+Y*()~vK;|z@9;-WbEz;QNr z;xkC|I(Zg%8`iHDnet-7TN2v+*DPIq2WK966c_bHef2-FKjSQ4^&Kh$4`aVJd}izO zHdx*4ak?e=7yprNg2BsQh>)V0l|dv{?B-Q_@dcsrG=b3$v0Gi5$Lw{mjUEu)&rOB> zIW*d3_K(#EjDTjb8b9@bEav1N+F9QV=|30Q^8FH>%$a*A&qH0{tE-D*5NyPq|C~v337X^oR+!Z2$Th zd+G7l0}ar&O?0~`&d-^v*~-h#ZJtQYp@oinxhVSADH3CtomN~re_0QlXt~>(CY

    Vwsbsb0Tu{2CxJA0)4zr;d4RMowGyIsC;CzH%6! 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
    ER|*%h!P9c7u<@^FDTCb>>%I=(3Jtiae}! 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
    PbR)>Yi>2cPd)G@5_ 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

~6+ojs11FYSc1+ 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 `ja^=ahwC^lPvUoKPg4diZ&+^)yX zI4(X2udl=9rk}vcySSai>07v)!r5)%ery5c|r~A z0C{>7`|B#4U5CpW>#K0(u-S_12IrSz=fz>($?XN?zQe`2VwF(CIzXPD$+&J2XK!s~ z{awO(1N~}%&3arft}E^g3Xh-9>w_+*o|TPC~n5ZVcyA$`^no$oZKT;DK)GE#mU%r;xO;z$$Ii`5vL#gdwITQ)UXba>vts&>pwPc;d&Y8uVc4@?W?$1 z#l=h5uZhF_|7=|MrK;o^>8q3)UiXn_Pm*hDSO>_>6YQ@Z#rdPyjbZx`ZpLwOKlT$i zxd*qC;xO;z>7C@|G|p}lD@_gS0J+)DxOx`nH(}Su_B!0m;o>Un=W((Xx1~7DKeeps zr&py%U&pEJT*g(7T%Rdch8orZ^87T$IgjnhxM^{*0s9Uo>v6k)(+@t!`m-nw^G=?< zMP3cCeqF2#HLL^V`Kyd`E7-n-n^jyqkNp}>w(phadpmRi=l>_^cf;Z^|I})Pe)f>` zm8OQyD6M)$K|v*%saWhj=Y}5<|?tu zsbL);w_6$4%;Dlv?B{WE5pGMIUVys_XXoOw7Kht^)ViUsPnNzi)NuQUJl{ZWsbL); zFV?d^-{ItgyJWuG1)RQ%yG5M6h07(ZU&qxz9Oj+eyhQF+aQ?hlS!!4Z$cuxF^J_SH z2Dd{KasF{PjI$?jsjz+&S0myu|5P_d-`pd8l~cogA9A~gyr714fIKlPR5Ub**@cS=EuRrI>lQS9DmN>oV zN8~!Lt8lh~epzF^9#;;V4?ZjNS2yA?|J0_XpT91BWvSu54|(w_c|r~A0D1Zn`|B2Q z_B<|^us(>Z0XEOzdKu?WVz(j=^G2UDf)Un{j$NyrDA2?4e!&2=dGJ&eCcDKyc?1yo30dAEz{M9#kdM0@}inG(iN>h8)7`Zu_arHRPH()n`?Rwly z;^KolWq$n>PB#3IoTuAqaj%=9mb3KJ?c2FNf1d5CKDj<9R)!k>3XnX1hH-8l+b3~T z;^GPHE1W!v+Zv}2;m(PBWka6bLtc5T_lT9DhQIzL&+lZM>#)6PAMXz=;Nl?X5x z&Yr~OthiV8sr4Lv{gCvPp@vWWBhT+Ax76_0pX9|o?9W#?*@N2}r+4Dc;p{eCHdt@R zl^2J3CpXuTyAJ0k%l%1Zw~{vt>Xnsl8^Xka@QU&y!!PDn9sq{{M%`lXr2eaQYVRMsW5zE=RF`6<1@}yoBpB?!on(ILtq_De32@ zJtzNeyPa{qA}?+dtAyHXYx49u#&r&7SK+e3dMmCxHkabM#rZ|pb>d#LKyJ?^_lvkV zQ>+qdSO>_{(-_wcaCR~-m$BY}s}*e4<9Ze6AACmU*R6@e{QtbH_kLJvxIUG>D$e{R zUJokrbgX?jeKZ)H0wol+@Qrz=X$fkSnt7AADcUIJ%{t#u$#wrJ8nvG&sWs8re9noeU(sqog+`Tl4sPg4v_0h z*=(sh-pP}b$-4ngH;7e64eJ28UeCB{1)C4T#Su`I~b6 z<0i0ulzuabi-)kE!pZ%(ofe0ACr|f~m$Nv#Q>-*KtOMlcHpbO+INy%lJhnICro_c{ z*jG5*m*#m;i^Kd=%Z7e>fs9ufHGJwbxjvWNP{TSvo}bD7U5D*yxLLr($=EOAWCL!O zaJn9M196yl^6cH)WuB`QtlttVLk;TydHy=%+#0s8;$~=)`F{!fVVpdVTZPkuxEm3N z`KMN6^s^_VuQat+kCU56+0ISi{MFAN{eM;Ve)49Lym%s!^Sz(K=^py+G|ukC-3->Z z;i`|5t+<{Ohx0wTxk~bIUxUSZ`Q}-#%ihI(;pb;7Z_K(yG!P;UBu~IVwF+Dr$3PE*BMt0uz3~N%Q$}tyA^D= zKh5>!syMvgLtZ?|xOV7bnfLUA14qZH>{0S=m|Q=ED}~LY;qTPKdR&j-d`~>yD7JUv zW=tGD{ejv}&@XP1zDi@wsJ(8Ian%&#^i}Mqp2lV?+vU{oDRAWW(s;aCTs-k7w=-<;PfrrdYrwEyH*^& z^o3e4(AUpPUzu2QYWNZ;#x+Zfv(Loi3~=!z+oja->Hp-}6Y+Q}SU-xZRcs!@^%~Ca z$8P8nxejQCr7F9J+$&tXG4bxy}D1HpUgNnhwTR3%;RD`_9ad~xQ*vw zCGK@KdG;20<**mvGbK;(6>loF2sOf;imop;k-uvnQk<&ZksE z?bQRuxn;)X53!$S1>5@>Ur@uR|B{8rKV0{s;Cb78y*HhwfpNHDa(9chkzOu0v)SjPZ zT-#?{x*;BC4rlAxPE*6D|B;&yeoyARE^+=Yb``ekf0OfPjf+?5dnXRx_CcOLPu_W) z9TY1~?Nu$gd4_Ryhw~?~Tfp`S+$`eaQS6t*y>>wDmg%SWtmpp69>!HGA^+E3-_-LG zD-&x@4VMFKZs*v{t>L22_>>x69{hqlEV5a~`C+VQaI3`OiSZZS>-lD>2Na4aq?yIW{&Y? z6Z?!;b}`<5n2&uQ`?GuHWn$6NZ_C(kW51JJrH+1A#eNt24S7|^d?DsFdAS%}MK48{ z(Szvu=;i3~Tjc3mu0+qq{%Z70^jh?^SY;pXXXxL`{3eUx&&Q80>yuc2xS!$JA7wkk z_TkH!BoA*3#{MwVer%ZFt@;mccMe>C<7^b7VAKFlxn$6|khe!3<# ze5p(9kH>yrzD!1C%k-=H*q?~~j=Y>BuS;@Gu1xH^iac*Qo~4E_{~<3t`|%DZ4Q?Bp zI^21j)wpc2u5i_f!|_g%`~I9tHw9M&DK=CNsUU5dkZ zzEYc-e(t2NEH!-RCwWnmC)BVEkf%!<$3L8oP; zfLvy`qvXljt@8X%so^^S$+K0-!e&An15>9&@bksuM%qb&QJ2RPo7c3 zcL0*>`d8$6Rdv`*v;TSl=Tq1%VmpbOC0tBkKM;p`Cr`%6yA_;{id9ApU;0I^M;KSF zVY70*ynL;PrkMXB`feE8wH@;R*(hABVm~4dAO1+~#^@&l>8q3)=AArSBG=UL9gyT^ zk^R+^IG?#xj_0PZ?Y|^HUo(x1CLVtVCl0r>;;=4|rxkfQhqF?wG&NlQk(+tO)g{j7 zu&c1`L?9VM?JBFJjT#RBr zz{v=1mvO3aw;~SnPM!^sS8G_W&B^oCP{TT~nfYIpJbd{dw#&Z~=N}gX`hEl_OSm1y z=_2mN#9{ua)dc-)RKAN^Y0tQNlH45qGu`m=GN*=hfZRI9HPg7Lv7f<7h1*%2mbmNV zY#x_$;xO;zx=&u0*vyJmP7Uh-xt(ELQ{!S9dxw)L+%`C!#GS|41TI@~n15=$Kwpna zUm0q6*-xI2kXve42gnP>{`>$ZP579Qqi>Ha<8*Di%vZO9vsGNKV!eW^HF22t%Vgfo zfZPq^d`YYDoJBrf|cVjqfaXF5)$JK;5TyIj{6n#@mU***BWuN4> zA}^?69UxCi_SeqhbRKtooXz2K4(mRy=CPT@btw+>PM%MbH#N3XVpUMXIzXOGGOlfK zI)OWnvvFLuSdZbV!)6rM3*s>U)Mkl(J}iA@so~2$$%`TKgc|0bJYD!JGosT_anII#41rc<8=Ue>KWIK;jF>sIMxnV6WDZr zE!)?VI4|kDDRG#8s-K~6r+!6V?iRC*YiG%m8L>*KVI3gPrWsexVLjl_n5ubfCg|5C z&d0HyG_ZYuL279{L3H@39-kc1`}j!{Y!K zL&I`?>qo?4{U=Z6*{&PI>6}<))UXba>*1H=d{s?gGZT+LiSy}r{3&dwa5IgIN$h9D z;dLUl>(fuhq#y1lFs_^<&qm2LHLL^VW`uEdiSzmA<>zx1wnOxr8W(H7Df8tWPF8W- zh{L>-r_1DJi?e}PX=+#p$juVt>IIxHVz-Fx0&bRY(P2NpNsHTMahQKq(sVu$vNxhXJ`ghTPBK;=OG$PYE^5H+lND?IHRH-vtS`sa8aA78Jv7ZSa4~kn*j|VmB@XjX zZAa-Br%PWY)NuQUJUu;p3S#(w%6e>Hj+5)-a5aI$SK!3UK%Bqbm(!}7!uAc^OylA; z>}SMb-pP{}$h$sH4~bPq4a)(!ewK07JT_0^y2SZ@>?&;c;iksL!`M4<2ix8n?^hFz@8)#ShElvs}g5 zg)&ZQYFG})&He}CZJ^7U|I^u@8^-n&+$dZ;_3N@&JGt3K?kb$`5GzX!>i~JNjd9-LAHZSt7SRu_~xx9UxDRi^pHa z=`pxl!P$HNPUf#%#rkbrtzq*9u7|FS>%UZ$zf9gJY>#>D=+CW+L*#yhJb4zkqd0vE zcVjr)kIQka_u*;+n}=~dDGu{bZKmnxd!?@|HQfFoFLskB)UXbar@Po+*T>loT+U&= z4OjEnT#xG#=T~D_iNm~;+s)+O;o@a2^OU@BhCJTehCDrsah=E6>9}mMJ_T1DHa%P~ z;QTo37RBNAAJq@&+qXX@$1SMg_78dT26;*i>i~K7n&ja&0M;+#Y7Ltga6R-%&i{w7 z8^(6qjq-SHlsK&a;YVkV|_2KCa~Fy>q(sN#%>DRUAUPR zhxwjj)2gWV#w@7*ZR-)0FHZ(~0Yhxw;=EA*3>rLR(I zn0NB*1#(Rd>j1eq#Qy4`Ut#{A#cmker*NZiu^;;pob1Exs5q?uj1gg%eZG=3?S;6had95@4ku^fw!!J?xbxyL@8nsJyy~z%POJ7-5Ab}`HEcUl;h$s@8o(n~dVriNpL;>yo~{Q2NSH!|fmP{5*0?4eJ1TaTfdY4kxGMw!!Hsxbryc;j+d0I9zq& zFz@8%z3XM3-6GE47As2)>i~K22IKqyC$Hgl8K*DfZUtvA;Bpn~L%3QKhxxxMuKQAz z*)M&SQ^Rc_a=VYbpoVpTJb9S?wWBzF0C!_JyBC+^SntKv1U9>IJt+?JPM+@|Z>F(5 z>!aNMzn_{ zLyYTIaP}-NSFwHyS8Lep$Mw(*=l^}!4U5D4Q~d~id$06WK@GS6$dkR~DK)GEi~KFn&jd2Kelh5%JugWE)LQ61Dx!AfY%?(INeXbTM>u#pFDe* zyjsKh0kJaFunt_q{NKwsH;nCG+$db^#(o4RyKp;-(;c`Q6NmYyRulBItEI0rHQe_h zHv21Z)2neehO^6YIga&aTuq3>{8QZ&eRH1lRZb1}eaP)o(?{QDP{rwN?`O!9 zQ*b+r(;n{nI6DrPb66jPt9fkR`!$*0x)g`?pFH3FF?n7!HMTFyI8{)?IzXPh!1ir} z(?huPIC~bCE!I!rs>5bKt{24Nc~5PY=;x<@N#5tO_cG28$cw#Vl~BVvK%VYqT(^R= zUASDudIzr7u-S&|pbnE2PN!c_;`|isro>_XseXpOJx2PfpoaTCI`$*tFz@8awx5vma5sk2V`QAls9_x-*Y8~;$Ezl=c^lW0IDZ4X zDQsWE%``4v#(qW|=AYX2=_k)hU!~MA@8sE29 z`+n4Nm414j^i{V1Z{&4&wMMQ_CpXlv4*Ul5e+v6^!`Qy}-(MFDypw0IkyjH~zbsaU8rA{w`~}9jDQpknW*QgIVn2hEr*J!q)BU*Xi^Kd= zt9km_1JYNT8t(g$n|sM~YFG!z?OyiR)VSD#^jKdFbau)q|8Keq3dM6^)b>{ zh8phskmv8s9Q}7GOAYG)dGWU7;q^aG9@xe8=O|8Jrr(X>>;+toV|@r$6XG!MrZ7N>i0*T>mzT+U&=3s>{vF#l9n(Kp9kaP)X8 zznXDPO>Qq2tAZNV0rKSX|IEL?!Rfy6?ONgYC_0a`v*PhvtWS@}@31)q*9+pX{*&j& zkvB`&9wQFx9=RWoC+}Uw<8K+KZ{uzSXK&zg73S`l|L(e zmB#J-2)TWVyr70p@gh(5v%hu>>*#JAn|<`l37kKS-4sq^znR9_X8L{x+g-St$HlgP zl>h&FG;Y6xemjek%W>Do`s%oSiOoL#Y^R*V`Ni~IB@XxfsNT`HXGvcbu_n}T|A)Rl zJs!_va|$k7_TxJ8{N5d0S1e%r-ml8@t)TY&B6;$*Nk1* z0(rBF?ICe^|Bl?RktfgMcIbM}2T$Q{7@PgLRO0Ygz|>}xe*S>;l|A$^-XFY|@qUbc zvKP1GSntN&1p6r`$;}ROH-+&>|9i^KV!++0ZR z=5c7VqAxB0UQ z-{Is9+%B-6ZjoHSOkOTw^FrJ&wdV%p_7LNmWn4Uq{R&Q=!tJWK*R7H3edOiP4KnZM zVX?}o;XFWYA7EUgaB(m8BRIMI$7O!nQE|BMM=i(c>uv1U#F|sXr$N!T*T?-&;^OMK z|0(vFOK`A_R3lE{6faLKDOuKW)2r;VLvYppZ-XmoI>7JSog%rP{XG| zlIO=U&N*z4!A*mU_dY4-WADYiwxxC*{p2<2D;=w$hEElwpTErZZjtSpC31Tx?stHT zXW36e4X^*m^;3-NR{`(a$1a+aKrlD*`uBG$omuW|B?E16a&4ySwa;=7V7 zO$`r2a`PR=cOK{8#;(QoTe#`OJ-gi9(^4u-aH(#ZnQ^VMXVY&d#osr5|kpGd!+jXplQAAM}}T=WmFka?@; zKlB~^+Ep3--Po_9zY|?YKlW$x^VKf;o3YnK^@8t1Qug3mkr^(xCIpccGNbIl0 z{zuu~Uc&Z%H1>z2s_c0B#o6@RvDhDu{g04$<5-`F>j`Y)_BplZCduuwjBBQFaqM;c zy7M&7zIVCIXFDVAb+gpEPhWpq`pU$bQ+sZXzWo;4H}kmoRxX#1zGOdbMV>vzxUR7 z3fv5EaT)f@;$FK#?N;e$A7j5dRzvO8YxMK8gKXVR6qZ^5S^LwIet? zHtv_&>qg1V52ks(jp6+J*o|ZRJ={!)dw!C<_zrnHg|lyqm8OPI{UA4A`xh?vXK?@!|v-=W{B*q@C3?@6xoH|f_S zu|F02-==RKqwhvze>(O*@|WCh8jJZ%%)iR`YBu^S(f#NzN6$rnA$tD9?SE1pH&q#Z zYwTCiH%HgeH$=PWYoeRzE24e$WzlW)CDC2CKF5=W%ue?no_8qa()NuQc z+m|sC&&PQJsT}EFLT}6L9x{m%>w2MAF zy7_Q>KHR_b(I>`!8-09q7k#W)4~^=I6EGf4b~t1VYxo7 zJT~9o!u3y!^Y3BTiNl9JQ~e@+`)%o~f*Nk~ktg3GPpQ3bK%RY*{gumDe*;%5*nADw zt2loQyESaTikqQZh9HXp(D9L`U~ zZXVm?aZ}>rSnMlt_^@yC+dqI^4NR_*DcP!{TX?^=Q?b^ zNxxaZ#W%2D6o>hzb_4p!SEa8~YWUD!^6V?*ni{_Jf!usq^6)8tIR656YuMg;kNiB% z&~M6lzqpmYAI8bexK-kCULjAfAumU9c7<4JYFO{d&1H5C>2P{C_6s<>i|sYF*DjKqI~dn3;e02q2IBA?U{tq4ZC0s% zO{%h6*l!VQde_&O=Aqw~WuP0Ds1PL|uXL>D48FUyt{CTP#^n#j<2Y>ZW4nUd^9^}=cRZfQ*-2LZf4Uayo%E{?o0EQ7 z`t^c1yz5JzUm1_LgzcM&EPKT!az7wXH^$>F z_hwkC%Gb$wWn(R<;r0*X+7ZU3w+!TEUN?%fBflt5H%$$v19J0<PG0BBhpuS ztd`nqMj7YF7+1W=e%f)I9%j3Y+Uq9B^>guflh{0s>nWTcz-}7b$8j?w?)h2rVhbNi z)b??Dw~SL6wb#v&>$}*#n#bl2T$ecCiCu;5Ex4)0;kP}gZ9~7fQu->5HKT^#`e0nu zGEQ%b$LX-y$aXok=N8EAmOq#CL9>X9GuX~A;q+A84sdo7?v};j@{e4vBd=GndH)yW z`I%G0WdON-NAmFQ-wrMV-o$x;v8y_4IWsSzCDNI6tSk%aQmNe-2&sXQ{!__^!g*$Z?faYL`PwYw;vMW)aQY^0SHBXAeqW=~xXl{Pq{)+!W*TyW?@DvAv7!iW}dQ z=ZBvmPj|-S&Eo79-1V`(5m$5AT#M^@anF_H`4;k~!giBb71W-u$!^z(Hb$HrPv!*BgCu3chW`pzXX&)ooL8^0yDDfAKYYMI=; zg6kEWzlhx`wuf=EhKuL0AKEF`0qw9QS8EN8gQM zdpB;zad8*+6XNi;Ked~ppWY&UmBp&5y=t0q^$g?8wedK!IKPtZEVbA4$&34L;CA#J zPB*e$JCC#TaaUq}4z4P3udd0>i?_*jlXEyfAs&y~YZ~%m9ou`4)Auiyd23soy@R_B z>o;+=AP#T$QQZ=K^P==s9;>DHngQedGUJN-u9x#tyMogLY?o1c-72|$JRWZin@4ax z^gD7M$REUR7~A`Bqr~C2J;{r^$lFnz-XT^QHT?Dux!%dRY8;zea6N(Z8?l?j_FCLb ziFwTQ-<2BEAspu$-{U5VEZO+94?Mv-{ABW z+yOuw6k7um8x?8{_dtaCR;3MzOvUS7X?0!S%Q}{I(x? zzLC6{#P)o#DyZRhFnM|oF4kNyv(zWwV?KV z$+)&+T>7Sr3*Y^Nvmxp{?gb%XO4vGdrz6F)Vj#l_R~eJ2jz^-Z3h|ANeG zw}`U`R}D)) zy#8aHxiTJS1m|1W&QincKk{NzJl+^iH{y02XXoQ?0_&50ncKIM;$A&PZcbvHo5uMG zVr8klW`?|2$2dQW)AtM3+dj_T!QC9zFP_cu=EdQ+{;95_Zw||NmB(tS;kUmT=N;pU zr{i%NoE~7ij2d45k?X_fa=aFs2idOfaDE?l3)mhxz-{?OanCQ27dzwe1~|PX9&h6+ z_hFXF^|g$vR8HOT*vu&oIXvzEpc`Lca^wT)zsS2*AH?WbHM~zRC%lU{xF;Z^sy4PR9N# zPc8wdlJ(Dv#T8NPZ5LtowVJ_i{M;l{kJR`o-wc=)=)t(a%MX zM?W1s5q%(fGWzl8spvCV}`Sj3oE_!F|&qv=9T}Iy+T}59T zT}NLT?V`6tH_@A-ee}lYHv0VNF8ZA4h3GTHD*Ny_i!ncmT*v*_LwE2vS&IGlFFZPr z%EbM-;n*L<{t@YiztWRDtYd%8JTJ%oVYavLFwT#}?N?&|0R7?>`t4}!ug3m^^fUGo zUgyRB8h!mV{p1n0uP699%;VTi#_{9SW{Q4(AKTeji!HD7x_z2)?F{3RJJ?S*i?f|< zr>VWNPi}5uTs?>L8?l?m_FCMOxVRGgN*vzyBTqJwcMfM8#Y$7d+rZ@Je8$xt=jUM8 zVtWQ|I$WHJ{en2Wzenws=qKx>ud-M*wO0-pS1&WpyfY!sYqx^)H^s_Qd(A3&afESx z4JSu_iPxD!pON!^c9?!QjP-N4RO0Y{AGtX|?nZI`xL8?gc>PCSJi<6Xj*|y*JAt$N za5std-ME|*hxhxaZic?u^!m~BwaRaiamrG|>p#Z%KI4jO<8kJ2awX$4YIy&TTyKfT zE3w&x>k8)^v8%B?A2&`M-tQwX&LD3+PEHl8j2d45k?WHfS9aK(fa?XEufuK;+ZX>| zS)ZCEarkS0YP(E7IdXxV2Z|S^hQI2M`Kdp}>xdPcJ;yjr?UiG{&pQ7!+tq7~%MV~T zMBhG+n_*l$g1y4YVcd?0!>@glXLm^+UT@MbXUWYSxE{y(PV6SIy#+UuxVRDfDV#*N z)8g>!Ak?x?KieYXm8SNpRdTb5{nT?f--z8j+czb--Kk~$_Z2SIxuff$%1&Z@Ta)V( zjEw6XHt+weJpbwj=kH+W#o>KFa(jf_cer>(tTJkN9Z0TUWL&q1&0$jXzH{9Q!+^uad*xm&apUO5Uqf>|aa2 zcs%ZBF7`)ae-n8%8oe=kEc*QDiRc&Kk>ga8(Wl1#RP;&F)6pkH&-@?mN3VwI$aCgbV`=SQ&f*uH|B78fsK-{IsiZWqMiJATR2 zr^(ADoE;E{-$x*?2IS^(TrcDN5$sm5eGoURxVR7dHJsdy+o3zJn zhi{kbz-okC-$-t#y?T^9zn1;EF>J5I%{VT$U_XJAO}L%J=|0f;Ph$SE#m9|E|8qR?&hzBF^Bs9|fc>=#IDH&< zi#U4(mrGdR@XU`KLDH^z&1tuk0&ZSVt$wixbEbYIwhoJYC2Bx+$E! z|1r+P(^zl3l67DPn-;k z^&_})*gS~q2Iu!-=fz?EslKCcH~#R^{|8mI<9rKtE7)$r&8oQP*T{?W$=jjNvi_eV4)^oOyJ7O|3|uO#PsP;;HYeeF6z3;k zH-_yx+>DEReuCOg(l6dT@96xhgc|;wmpnZ}o>9X(K(3F-uX%_2eb^k9ap63G^XIVZ zWBW92=5TQU`+0Hr{SNZv5%R7I{?}jEO#et?mBp%KHPo;?uzCJPHm@AEpTl*7i_c)^ z#o=K=^&PccpmvK=Rq{!Wn^Jq_5_$H?&mDcZD*X%bcms0tbMbh~IR7cWe8#O{`xEq= zRb2cy_G>u#QQQvQ6)yv%s`Q7*ONFz48JFqO)UX_on}3!(Tn6C$pRgOl_8)LFj*Gv? zegY?di`z+YcoO`>r{#H?Q^V~Za{JHZ#ZR0q{~o_ap8SL4;qCr^&;0*A?uK#px42YT|23{gu=y)o zkBY;*ljnay-i%}WXJS=Q!*W2L{0ZaQNu2%%+)d%^k8nAS^%rq9gU#n~Ju43LPi^Mt z=Rd{s!hVWzexAJeHL*&lVL2dAKgqbR!r3QqS>tg2a?Rml3-L#4~OXy9UIw z#x0)57=;w*xS^OBC?;-GByKol0u&QB6f%8y zqn-sLW{eTLhThZf_vXo8@ALV+=hl_(dvBeqx>EOdIbJt~&9`wmgY7qQF^kkUN?+%Ls;KGLzFF5*tTUhEIAx9PXSkiCrt<)~|McMg8XVq~f4wF> z4{-i*`b~$`M{&C#PL~15&2K)W72-8^`ARxSPQC z=SD71mXp|hn|?JV?$y)e{u|_R28UPv(~*5l=U*moX35o;a65<17jZX_?H6#_$L@2u zD#Ym@ccjLOzWE$=z@MN11EYVgD;! zFW~Sdj*B?|Ic}E3>0fssS3e`~Rp1)gjzguq{_`K< zW?0;7HMJX|uf8vRZNB#k-{1FGUyib_8e^UN^ylP#O+AkNH@ID(_TmJ2{?)<#O=9(B z+)iQhquuiS=%%s#!r=a9#OZw>x%&)xJ%|0L#X3;a{!gBNigisNt54vzz~;Nh$d9XC ziS0+|mzB6z)zmuDcW?d=GS6c8R(bp~z7FkQA&(8~3q9y_e>(hxe$x*6BZK~r&Oh?F zrG1iq+i^eYj|TTMI#@S2ez(Bw%SG0ikG?7I1MRm5>&IB{zKN?P*7Fe2-Q=MEDekB4 zW5;oN#nhnxQEu-BufsXf3U5(9;ej)Dzi-_&_>6Z<5-@{dl{daNQiPQY4%_9Bq4e9Ir<6F2awM3qMnOsrR zU;C4r&+(tj6)V_&f#a8}*nJLHYuJAV*XuZZ8pomEmHodNma6klkhdCV9~WyyO~2+v zZa&JoVient;BpMR-)v-`8^``vxSqh_O&ll1>DN1{?KJ)TXVTXhHGRBCu6{~xsOewT zBey@{c;y^+KgQKO_J4xwJ`P{<@;Ju==Rc(1l;ZSpKY8{&@~+0}yJBsq>EnKK`)$^h z4R+teRg3*MaNXhXRU8*^{$<=Oiql{FQ@dsQ*%zd*6*c{}H@W#7x&7w%IUlW(yH9hx zY7P5O;d&j1PvAK8J@)-CyvlWfVVr%0eyhc4?&RuMC$ry;V)Le0TWb0Y%! zzk=%t9Dau5B+g&qW4>kzXFsOjPK(q0sl_aP_4EH*u7{Z)vaXyXx8E0QM@@h2Pwv0R zy1I|UcX2Fm{%zcpIQu4UE3CeOyIP#)PHw(TUN+c%Nvs_;?FZ!ki>#|V9KL|#0?t2& zn?;;`2DeLCeHwSm;xvD1xk}%BT>9El(_j0OyN`0adOi6cE^qn|9NXle=7XA1dvWMC zd0MDraYBeua+il#Bqo%*|Aon+r2Wr|5$n)z4_gCU<%i#Vhtgggejm_n_ zh}d3?%SN2WPwvhkuRH8>u@2O<9gydNb6n6UZ?L4eoE%HvQveIO{~d$vU#bqfq_1;o z`tgrE+exmdY5wHqevVg+V!H#EW7uuS)j0OI;d%mxZ8%Pf)7;7P>&V+_oNYQmek@W~ zl6N!Y=5k!jVtX+z=djy^t9k6t!F3;p9LGZ3Yf5Tc(a)Xqbw*7;4v;HLZm4NHAh(9& zl?`^g1|JW!*dO?+ylt&J9KuiJ^%@s&e&D|!JP*Wa?&R6?d&Jt9f5F?}6>__a zb>%8{J8`v!{r$LJ$6*JKLltiW-u+W~{x-wnG=FM0LO;7s)@w!W6{F;43%RAHw*lnt zN{(NRV}CiWCvdnJ$4Q)T!p#)U&cW@pIGyjwRUj{BvGHPUsp%hoA$N{-)jam@f0fr` z-N!-Ej|I*%+>|)`;3SzxTZz;BsYRr(4oY8}?Z3r&w;{Lt$Q?E91LXdBj#qa$?7?vX z=TG8h5ofz_yM)zF+%1dK+W>O2gS=eDcDq4ZbY2sPc6sjn~NVh@;GRF+u(UWPVREKo%YnU50Hnz@!}-TJ#MCO=5RZW)s_F3 z%&(ilM$s>3#cA&3_JhBc=W#WU-CLvVd(^ZKkcWekr~M!22XIs3Y#(kbte(eRjm;ih zL~*Zds8vhf?v%cE)b!Whzw$z@ zC+IsPeeJ2eI7uGD9Y^M+^Nia!Q{>qPC-VB6#_C<%&0zBuE@rVkh|4+b4&Z8DoaRpM zpC^w64tvDu{U~`;l4noiw!&%`?rLmy;v!;uKQ0^WcHpWNr}6fe6ZNk+W_UGVwU7Y6rdouSB$eUrDd$G=_ zX&)e0j&EvA+)29S&P?To9*!<$>BR(a$fIzRsxW@(;P%L~f{QA0W5qaJ+IAyBt?* z*auv%nmc)B$h#4&lvtbW>vEngM#=35R$i~=7%`hp(>_4%wy>^hvA+`69S)b{xPbGEakGfC%XiB2yIm5e z`BRG(`pV0CZK&yEA9Cx+9X0I(NF z;3o!i$M%3&J8Ieo$o)Rn)e|^8kK-iH_uys1>?JTt6om$16wuXz0}W3z9!?03Zq zwr~9tUWcpL9mLg|IL)6LhwhSj`{$*v12tXuAOG~`X64g33Xy^g~U z9Ea*7&xbUBYOAH{e4F%jwui5~8zEN*K6T{#&}Iv_FGk7jmAD+k?s8m>V}CKOCvez= z<0Q^^{I$HknkjMG|H(7Yx^4z5C)S3V_5pHhSy#?sXK*!-y~1@LhYZI8=O2u4{wu}l zx*xTx>1PL}uN5_2_aQe2$SpPP1LSTW$E#ZGpT~8F!yX(La2_t_W0*yp?WEr>iPPN4 z)%Gaofno)l+hkq(xtsOnD!JQ+t2OLz!1X!~*WoyHH|PH?xEaRTfg9xf(rR(K?nf;~ z>8o>Oy*AWz-G|(MaJ0ORT;O=sIJx(@p1{H3IEizMn<<Id+ELR!K8CmTOF3>_AP+Z?=LfmI)hv={TR2|3gw>U}TgK*c zT&!SwF)mlJ+k~q%ahf~1&&lJ^AIRK85bK(OthKq>p4Y+KuyAD?^_FHh>iPLpI zYO_c`Tr7Q^Q`2=H@@x~iqNaU-+?>PliWO{gT&`jlaJ7cL$Mrf64#%M%4)%YkI(J{= zd9QJn$vUm5X&)drSN3@PN3nhD20)nb1R{kp?J?UAoPF5ukLZx+RA{?u-nerC8|MNQXz$c-Ym zo1T;RPvt7P`{2Kmc~ooIzl-a29NxllXb0#2gSZ*S*#X>Yahf~1dY-%(#pa-v{oX!F zUXGEwegA>)e;oV!>DLoD?7(pn=i6~Jg|pjmJ1tJHdulODUtK4CZ4Nv*xb8=8uOxTW zv=5N`%Q;@%$Khfe3!HDlO^LH}a9d%O zA>(*)0p}n5w=%D05ohXSybhPJI!M1;7N_}B%T@a3dFg9=kn3vI8o6_~$m_`O;`a4A zdDw~L&^^rme%uV>YzJ;NR*qkb>qfBIM!y&pr~RMYUPoSyW4A@DJvHqE-v+{^yIojj+e{hvI$jpMZ%tNZy^AG#52uA^U!V!H*G zW7r-1J9)lWv9$jmO0-whotb*jZf7i_`q6 zv7qlW>FYpE*L}$I5A>0_>WrH90dn=OeVDYl8xSYdo(>wBgRP)%sb*#Kz>pl(#aV*4X{?xXjpFb~sol(==$<-cm zLrwbtxqXu3l?`^gaMfbJ6W1LM_v5&L^K;&k$FErwr~RKi+s3+X8LJz_+ECLzKyI&N zUAc3VwBwM*)02ub=ZS^ zKacA^4tsDcaPAJv*VmLd+eyEz#A*K2BGOmerLWDt?R@{YvA%5RyKT5?vA+S=9S+yw zxPWtatvs&HqBzZ;JiC~6-E#6j{2He^S7L1j)l$>bft$H=`Nu=cRqRh?eYoU+Jk6># z^8D1d8Ou7(J~sHWhW=2V7V2o+42#p#g4&Hxi&1JhCRLkPm7G2;HGK>~?p`AI)U+Lt zhZiJImjQ783~r`y_7rZXv3d-5GuS+gi&=3RKe@e!yqd@Ef`4@6`_%q+^14qRzOqjq zk67URTlAX}XQvLyHr7^HeT9BkV{-{EqBvdtqgE|_`+4bWM@^T1$o*%@12t_2X{cahXkKtkk+oN&0Do$?$$lY;g$lJ+!9sAFILmrRt>PO{e7l-~W zr-7GnGmNtraI3L;26rRa9Q|8^(*d>*(=W%wY5vrDg1-BK^tHcwkK8U!l82kgb86ZS z$g}ToymlI^Z{cnRo2zj#i|yBNIfva>a5XPZZv)8v1>~{7;asuKscAbP&pyw(w!-SO zxT~=_6&DfPlX2N#_eor};xvD1T%hldmc9nNk9(*e2qwdCnC05-qG z#R|4BJis=*irq`}t2OM;J&7Mf*2U>51&7C|ynRRW2vrme(qNeSD+#JWcB4Yb7TsGJpjjI;>5C5^e z-s%pAU*otSPV=X>OZ4+srLQw;nmf6=;Fm{UKia&&?TZz1`wT8uv3m+vYuG=A>vbF+ z#&PI=UjGl^W>}o&PM-aMyc@ylcCj|pUNK5;kADAC>FY{A4r2E$ZdZ+Ce>JWraQGUI zlQ{nhZl=U({?u-Ues-?(wfg*5S{nxbARx6~_gfzl57boV|eCC2^WR zwOFCA9+SQ{)bud`xqX=2QPVy^?jPWI^*Rps;5hUE^Zx;EhH-W~ZZ%dn<8DNp=1y+D zMP80!d$m|QYT5_L{nuDmPvGzs94B#p32vrvb^&guu{sxbGvZz`OD*T~?(ZQF)U*#gIG8`j zYld-lJ8m^rH{)&uo5%hguftJnPyT&5pO$0dG4t41>?JbRdR?GjcG;BFb4 zdvLLW?GJFdirwwFS`(-FQ{zx0^Y-78z7EuM`G-8enmnVXeSlouyiMlSjbL*L$1g^) zy#SYE*qw{3aqK^j>j`n%|H;Ft+w@WztjyS#lxPZrhncQ5>x?%;}ui6%{^-H| zPvG!jCi94sIDg@GIe#=$;xu>i>{ZrvGgv)#uFS){Kwiv}+h=e&huu@Sn#cYzT=#K! z7{>zV58$R0r}^tGb)ib!s5Cb!hI50Ja>aJ;I;{#&^2aJU-B1)SgWraWJp zMVwtizg-fi{hwSN_n|ya#R@i`m37)u(>_4%PUZI18ulmSdL4&P;yCp0IR77qn_--N z47XaG=1(m~>8oFVM9!Orn%?)3+fTlIhTYM!F711)uh+@LhyRGz-_Rd3|6k)~7-zr4t;Xu)e=6tKZUmc`=oh2n zG=FL}PTxKy{dE1~`|^0y6XgD3@<2`d0D1lZ$7`l=cJ;GzzHFzlI(b=+)6HP>%y08& z5VP3+dhjvmoH*_OHVT^xfC~g6F}9{|%4(0(tngSmzJ$Yn{y^dG-s|wM$sNio0cOUc$u+wlCmv z6}x9}wI)vcKe>O5JP!Rx<{lmv>ztbQ0rKnt*0ma|dvG^`%@1%fitX*V9K-HrT#bv< zbw6sHr0=hmz7EuM-6!S$aG5jTOgkG?HK>M~wg(PlFXe8!8SGyB_wuwUW(Rk37X5Ng zoSqis;WYBPkMoT<7C1W*Hziibi?yMq?Sb4L%et<{?igG|><=F$<1QOWbI2HV%f+ELT%p4{(eUESfZ7smyhpEx_1 zKh7Sf-!5VG2=11}Y5vr5mA<)4`r1;{*Kuc{l^dNt~aCn<<=a#O*XzC*p1f zo8xgYD^8dHsMS1udsyBsYj?&Qa(S}ull!;H12w%3AkW|6?R8V)>^0n0SnbDMjm=(M zL~NhMWg|{=CwGsN*B$oz<+t8-c#u3UkmvW}W)Ww1;dTkDJ8-v*%`LcC!S+U6u8PzA zsr5R2ca`+Dr>4t4EpG!hljqd*Hh?_4l;gD;s|#^Ag3Woj7{&Hk{&C}S47=0lSL5RJ zHh|opNFFC~I9{xCYT5_LvtwD;PGfZp?q;w#{DHhai&<>n!{r=yZ{uoSoG$-SV?p2V zmwwuJS=W^0`Cjsjn)U&5^(^bU8k^m?h}b@k%Lcnk`D@9l#r|IUbtg_A|B;6~$eTr+ z-y+r-HSGiB>PFUe%h+ti#R|69;Bpnat8lf3{bpRRi_`oc9qjv3bvRG@I;W<~Kjhh2 zzahw#Vxs&I|khjw~JN%m?bJmKQ_5pJ9 zp5$r&$M$Vp&SCckuI90S4cC1f_TyNH)8#*EThY&VOJ8Tyboq~5Jx*?@X&)fBk8r%Q z!R|p^wbkfyza9qIo9k^K(r@517H}Ve@0P`B?&Rh?@^Tg1v&7m_(>_4%&tP4>j>Bm<4*dt_zY#aXI6D!y8mr@R zHzH2+r!`l=;*X*Q?E~cDUe?6|=Xc?z#M#yZ^1h+1u)2|cS7Wmk7g3zv z_fxBuzTGT+?WpNv0CImRd7!3!fIPpD<28#oI}f)@Sncj}8D<%q)94o~*lxt-syNM^ z+-?3ld0$ztV}FdS(}9}yfj?pXhu@dEHN!Z254Retw{bUu%^SEF#r8E^j)~LdKWaTe z-#sh+^gLi)oFoss$#ZJj2gtL>S=UZu^$6}}uz3&{v)JB?%Q@`s!qvPu&7IueLLLho zZWQaBn)U(mY%A;93ae{yS7WpFN_qcWL~JjmUpClXh^tnd=1+|a^!*vq*MXWo1|ZK* zBhRR5A0Ss7IbOGn&55{J!S;>koVVZUEGU9yJYU+ZSrOq=WmF0 zMos$wxq6Lt-3T`OaWRVRUR;i0_bjf)vEPmB330moM{TC)hX_*6P9U$?K@A$<2AJ zDV1XttO zKZxrI9PY(&66bf}W=fpqPwi&tXE#b;D{6Y*M{c%~TWZ<|$lWy@ubRjHDqQz**oKpU%mb7BlFjWny&kh+c(G^HSGiB{x!+d&;K~=$8qR!=D!y=!#H~uw;HS6 zxEm3txs#hm$jdQo9~5i%9{*@|HBRpDVqHCf!yPzI;`|oeOyTTC+)iV)6?Ze@G=FM2 zN8fCgzP8kK-G|&=bu-r=F68!gpFEt0V}bLta8u&!4BS>&orb#_n~k`L;xu=1dpvp7 zVt1@qdurMT$ip$LiwihE{4V?NBF^5!?GjdR<8B$7H*m2cPV=W$YxM12>1#(#b0_!D zk_T$q2Ri1zo8vXZIC~to8mmWeH-gQBxERIuUR;ie)BaEH?jWxxu)jsD12ydf6v6}Qt^U4y$BY_7t^EVi3*IVVo@r`CP??mX#hPfgc-$irFW`FXF(`_rZ*&raib zZH3iF+|}5eh>M8r@wjZTI~G^1IL)2hAO4lhIWFMvo>=G9v=5MHZ?mpl!s-p&Eo1W< zE>^JJkIPl;_Tp+yoaRrBLr=)O{o~Ttfts%Skmrw(XVkP0kgEqdUN?fxy|@^~_AXqG zVRr|v#<9QZCi%YW32~Y`dANpk%@oeB66=hb_5pIWnRVR^HhcfM%&VBi_B{IK9Cl~n zY99MDaNQTD`BR&cemGJ3I;W=VKIGZ)_3MPviFG9CjOVHIMy?xbEX{JdOp8nenuMIU__aV0zk~?bJ2gv<-9Iu|h;Vc{{aefAFrf_x|Zl|%@h`Skanmf5Up1hpH zcJKdjKy!AudM6Y5vq|oW6bIFPXz>tg9!;{YJ44)U*$f z=O?nRnZnuexShu8SlrEEa||wKu|2#d^DXDZY5ym8Z*@)BpsdY!+-NpTSYP#-29_}E|@4ZKE-z<`6HxBN9 z39GHRTgK)ZT&!Sw6)sn?+l;FRI{E{nB+{Y~GM{ z={$h#Yq*@lZa=Q(vEPg9zBtXDJnSZKN}OMK9QXeSd0UaI2XR+pb1yC;wr71)&evsw z-7WO17W*4<-HFrusm&t&aNb_|IVIoBx^{^?yHuxxlq5C4+a-xzl9;c6WFw{bmz z!y7nGiqmyJYCBCo-z$BcQPbSX)wAS=n&wY#cXPaQ4!g&3HIMy?Katm0-N)fx`mwxOO#GTV-AP{Dt*JB)8Y#vcc{uT(#J5#&w6or8q9&{6gF;iqmyJ zYPU>3J45>E^B2|?E9B-ha!XD70J+=9x@ryk6LGzc!|^x{?dJS{EN+Hzb_{N{IL)10 zz4w;PxfsRfZLzl0v=5NGH&|DVWB(eiCve!0<0Q`a;${kG7xMXOJ1tK0rxvsH)q}EL zo3s90_UUqt+}=g*sA(S{_m5vKUw7Td;l{!J7dYQKxc?Go*Wk9o>MGpT;d z2HOk8+ELR!K<>|DUESeu7LE%zzlyJ~S;X1yC*^t9E@5>%>$_!f`uvAluF^M$-<0!~ zrKamX0(12ydflMEiNXEV*o+VEFJe1} z%LcnqT(#Jb;JOp1@so#P@@5g|Lt>p#({@0v*8j7Ny<5g+4HqleuHtePyA@omVZV&) zb#WU1pAWWwsX8o3U+2_x`G-8~$Q3nh2jr&Zc*Q8T4KBy9i?|xczQ*+g4&8!$%o-=f zY0l(%pLOjt&gR8hQPXxnZsu55%wju>%Q@_3a5azpG_LzNOyO9F)BLGzML!>xzRsxW z@(;NhBRABv9gy2mj#oC=jo_-qUgNsMVHn2+oDbnz>?Ay(Y)2=CL2= zc6A?zF&qn=kK(4p*$8ecahgB1i1gKv^tGX;%Rl6Hef7xqtsOOO2jqTD@^l#hhgBRG zaK3_@MVu|;b_uH`+%1dK+W>O2Kwhq5+ljTKrtN^-x2&tzacFQH`U&%oxEaP-ja!XX zg}V`Pnm@H1qi_1s*Or>j_vCJ#+*8xr0P--$@!}-TXK^!yvl-k@V>OMt8EmF-F)L1U zC$|&i)jW3NV(qEv*8#}G80%tz^HJQCI2*xjg_Xu#jm(>_3+uSlLQ2jgrRw@X+p{#Sk+S;l68ezAgWhs#xQnmf5`$m@0NqgV%O+6VS9 z|C)8pFwT~KDzD#GV^z@aMzHDQVieoC@5uUcOq}LVttaTaY3|ok)8!xXFh!nI(>_3+ zO>+Ep8mkH1&0sV7ki5Q&S!_q?mvh*S;A&o+=1%U1$zy@TkXYx`v=5MH>%ZXpudrIf zU5(8uE+V!oxNNXn_!G`QtvJn}8W-sMPS)!{O>-yDTk?#W_5pI$aQto=n}~}QY-?Pu zVprj64f_(;>*6%`XJqc7Pu>jUd|s?GYT5_L)g0@(5o~60F^cUBF2}GN{onci$FZNJ zUr&hB{He_p{V*ndom120AM$LJTv5|LKyJnt2J^>u{=aY;WDdLagEGHr9{V+1_i}PSkj>8O&L(lU1pT^CwIL)0rYj*Q}k6<+} z>$IV!eSqAKar<%%yHQ+?V?ToH2^=(zlQ|)$a9fGf{!gwN@*-jr#oAKSK0xkj)>SR` z6|OrRN*ot(Uf^aCXMNl*iPQY4#R`2jD}8OK>GBV`ogsJBv=5N`wcF(NQLp1L$?@aR zBJ-cX%`nc!ajUT!!`+BD&7Itgke6fFYO!|Iv=5N`Vb;|XI1J%9iSzaUB=c*gaJGiq zX{=UpHzQ8-rKS3U-X&-ow`HyqFW*BE$Mogb`6(f*sbDf9QzeqPl(gp$;0>`@{jRO;e0{X>5Q880dm!G`)&rC78kSF4xcXb zDd(`O=~wgESGewr)BLGTNk8MwTo9+Zljo!4?GnyL#9CGVg6H2dxfz!KtgNB+&y?Yko&uDmX}$zhQrg`u3pFa6F3h2R89}sqqrFsr_%tn z8=)4XtW!sQ=E%!Hn_F35j*;7&#M-?)BB%dqoZMf_x_SbKuj4q0^DA&Og|o|WJB`&v zxSJ8D@spdg$;&xx&lIP}fxMb0_ow5!kHaZA7C1i%Hzm$az-@(94|laV&7E2{^v#An zM_#7dzW=H`{#8fr-of<(_J_nePU5~3Z zaXRgjyZa>9p4ux~@^ClnKaj%*sw|8E1*8KD^n%RWT|{0FV}HI_2Wl^B^89SpH6u7X6St#SosPRPY)-+&IJPI@azfmzCaLul zeYZjS+EaURnmimuo>P0x40(3bvOIs|^&Lt_pFlF3J7V z~6)?g1A>NQsWYRf35U&ID7DK zMK6=*XFe+Dm+Ufb->#6Wi*UD!&H1=k!}e@ku48v5u7>u?^T0o}OCG;^Se)ig9!_9g zGlKK8e_uX+$TpC-qvYx++>K%L{(t24HID5&xSYW55UwV%e;wCT;xvD1GebYT|9R%{ zH0#<~^6au)a`h;AH%D$B!o@tc_u;aS-TVJWoDXE{S{1GPPZypZDbUI-~Zw zRdTg~+)#VP8o7P$cVr&rI(F~;t+*OmV*ZD4J&eQaIBJ}~jGGa0uN@`No+IzZuzFgo z4YgN{liMd)S59E}D6S^4e+bu8IGp~toEPIX&hMn(%!qsKEVY}XpIt9~t*E_Xp4?nZ zZjWl^@htn~?h1}q71&>f>k@~HaIA2CK5lB9U38SZuW6&W*EQto6xJ0jHYbU-rS{5> z+?~L>Y61Hmt`~9Gfa4O*kHXC|&fb4n=GU%>)BLH$8h!P;^tHL@RCyfBb#nV6xjUcB z`_<5k%>QYQR}bUx1dbZ#kK$$oXAj|a6s!AiHzrPVCpUMJmlN3DD%Osg_5pH#6YJ_J z9InT48s{6f%KVxcoLxb`oyF=h+|7y8{HbN1zBya^+CJgr@u&)NcRIPJrhR}sy#KrM z_{Iw7Cvg0x##s-y5vvWjYp^*A7p*wWo!q{&%F5&!T+$`hl zMcl4n^&IY2v3VL7YvNwHPOXOiTIOvZl74#s!Mb{w+~0kboKM5uZ z6swzXH-^pixEROwT3k+u)7;7373B34_Lqrupr(C*Jimx_%?!@Y$L%auXX9=Tn=^4S zkL~HW?2CIkKMxN5 z&5`FruO6mGEmiyLWxWp6UNb_TUrU}*(>_41zCO7BF>J2D#W=Q?;c^1Ii*PlG{nP(h z-mlkF;xu>ia60Rn8JwRY))_VJ1LW!?)^&5(oPdjYYk*gZ|ZTEPAZTrcAAD2_|wwEvUm z_mQ_NIJ;Y{6*cVx>=rE zMNM-jH}{cSYT5_L-Q66oTEPDGj}PAe;cyfExP}b_ln#SiO$BIdPghxp`4?oegeZ_Q~zjtgi~} zp1?(e{iC=pad-&F3g-hiHCFf0Z=<-^wbZhsZ*G;owu9*8KL^b&JFlROUNaJpFM)Lx^>)hVoN zN3b~wcca*zfXgxLdbk=Fr(gS_#!34A{lAgdX&BU;nm+zvT|3P>bx78wkNvTEo!ePz zubd@!FSD+i!~R8F&*ShMj(wazjhjN;YfEzVD0x?5^N?6uYOk!x-F>X9BKCLVy20U2 z99x{%rvVl)?QCEzA7#o9>mbry0ho zN59qBoc(+9exe%@_sUUn`_7AUyJ`%(L*n%F40%0H9v=NX*E1$?e$sY1|230XJ{CxUtG3d90{$=D{Imo*~K3HEY416~0ip7D?9C&Hq(+6H2`0Llp^Qu@G_=G`! zb>QB>YXff(YxVc}I=LC-**i-zuX6ZhUia_gN@F+Z7em+|qF;~T@H&p8IDZ*8W8z*r zPM*E^u-s2Kfz=bTP8({km?XE4a{F=$yN7T!js462T%I@e3=VhFkFz+x6*qI@UOP|i z`t-AFrLPsWR}|#t>*SW&D@$^B1;?u@>@UN0jl)GaMx39In+9iRqPHyfaFQ>4*TdW7gun82sf)ZJ2Womi*^mG7wLEF*gS`eq5pW~`H<#Mt+Z5a4}JE?^DkW&VqHB# z?(Y-pKu!BTd44zRnlYT+iQ93kZpGaMHaFp765H4R89x_KiPPN4-4(2>XRv?bM)|tJ zMdWdoJU<^db2vL2xAR!N{Bh1heQZvlUliD$gv(Ogt14<;({~%BpFWpjU5w=6DDs@z zYZ~(G{pWf8wOGA_yAGQ}xLCmUbzClD_cE@Q#A)v2{yFlvg2U5dol|?wDtYz<>)JJ} z9>v`{Hea9Oy3o)ood55pUk+n;C$6-(SC3HRD1Cpu^wV`A)-_|~`L*O3HSGiB>g%lQ zCa}2z7n9gthRZ4JF2dC`_UGezM%;_D_vYo0D)+V0!{C zOYC~Ms<7XH>ss84k=iu$!#i>vUFXzZ+mdI8$Q3p11LWp)uDcft*uIR*MeJV0)e`nM z{W;fVmT`E3eq0f!xs&HFzr*|cHJsfo>(X^0)_3dV=1yD;9bo>q;&K?fJO4_KQ)%q4 zrC*QW@O2zV#l2>X+K$uDFOt5_sJ(82T%AvDsA(S{w`X&_atgaMaW#$o>A0T3;S?Na zaefkR=EQ04tnS+oUTXQ%KNE;+`j);@_H>x?B2muh5aF1*Ek&dw5*R2=P%N4 z8gZIGwd?3-Pe@-YYOh!zH;-`6!WyE*rL&z;Hrqh7@R zE4W$0$v@(DSsc#)jKHJk^??VmAMO<>o<^(6Lx`?vCZshPsb z|NMZ*-)WrwH|}P{;rvgodwa|CilV^Tf6AOP)NmdkxBtQRRfXNZ^y z;`Co|*NMaWQ;RwJ`YX~`8MRl=lbe4ex72VRAb0=3{^~{S{~k9>IQcu=F5~o*xLd*c zZ*kuDL_GgXRoP#WmkOJ|6e~*&=K*r}znQBCvHxGV8N$h5;C2|N@4(#%)_;!kQE{&r zqn6|JvprQU|jl8O`{a3Ma)Nmdk_y59N)8OQvaoghbpK#Y<{S}1#% zT-P}H25uUhepReAHJl#Ev-6qjI&99t`7E|);9^c3ZWh#Pfm$z8n_~-JYL`b;b!p8c)WgWcEP2>_RY8&!0y}YN~pbV zhCIEBT%WUxJk7~-^6abZuPCrNAD1Pz=isWs?hIVl*q{Fl4?~SOtTTD?QRcc1rymk4 zO%105^6dT06?53U7nk$cz6)0i*zJYuMeN^+nfE|$}7J&66!={G|-`3Y`^#o=iHdHMtLd=%?@#44kP z(*e1;gSm1X+i&A)0=w&RJ&FBQxS7JqH*h;G4(m_NbNcBy(pQ=qF8`2cXOJ6eI31AN zPqV+O!tPVJuCf0(ZW^3?6t^u-&-kR=-nvd4)}36x;U#|kox|BXWjkf4;eJnUcVU0k z0(Ni4^&W8#bN!a)c}2S2Imp`1Lo>Ma(9ndd1^QhkSBLA*ACoagZinCASVho#4;c^_?kK<|r zyN}{}QXJ0ztV!PEl zuEpWIE(2im6I{+?`y*T}VD|%DFJgby zA@Y2zSrUhJCr_?tu3N$BRbr*@;AJy;-!EDJuQFHkV{<+(6}IQ#Y5=>B?=QE{dJy|h z(Qk&tVg0Gy2>s+k(pM=pT>c@~?+@3KxAHJk^?%^i=)&$BGC{fW$l#{ukqgzFmnAK<3J z$vwDj#bN!a`7HhPdg&`o4eL&xMVIr~T*aKF_Nqm4_YL-6FJb@N&$0f?I6WsGe+BC^ zaM$-MS?}asxab#$$9wYZqmqa79{qfQ?d>`7%VY+abMK{J4`Tn5?Rfq%gwuD@Z-=qo z1$QIjUNK57$LMEUNne>*EwxvTGgnVA=YBsckAux5_P-UYl-g^j$o13Ab<;TeIWA_f z`3Wv_Y=4BSLL6THNAB(+Zz}BX5UZ3LUIs?4zs+3N;Ou%_wAkG9EpE>pwqK=R&5Fa@ zzo^YTeRl@^d}N9BV*kp2io9K5J|B(!Z%7{QU-Y}h*dL4ibLi_k{z?8F#S+KK-pPDE z9_K!e%VoB&R+uwevAw1C@(JeM`A2d;?8E-Ice6hIIDHzo3hTXgmHBP}XFsA}4B{lt zmqX%SHB8MXW1o3t;&%BIx&49cM>%S*o+kHCuW){ziQ9iW{(EwqUXQy1>#J~H;_Mr^ zsKmXpCO7AkR}Hr3h?S%E>XzJ}!CcefXTeP~5AA$n6`* z>tXDEf0sP2dTOs3Ay0lQd9NMC>C?Cy!}{kqAII5Ga4~_+k8n9D?p0INdYZm{`emM% zeVe&vhTOlo+;qEB$vJa8FU-l)y-pK%1=i=p2!+!tQ)rPm6oa47JVa`%g<>rLk&iuPf+h zpJMx>#OC9;tg!tku4-|wZphvH$(t7Y_lm>wPV%-R*YCpJEY9}A#T+*8#N|A;yWna; z9G>@+yEl?IOTmA0E*V1LaZ_V=<~O6|2nf}%KEqtKjNOyCUcr6?Zu)-BY2Xpu_KSO+q80=6^_|jJS*(WID+igYhM2QA#N!NO zcQxC2YB&v$rg^&JM>#fz2VfEXCnzKeevu+tt!nE>=$szXmebw#=og;&D2xcVfGY+AC(s&Gzwl zbJ%W;t9k4;!}S98FW(`zgJx0OYnRB=XUMx{te+ICj2d43Pi{6aSN1(C>u(>yRX=tQ z;96n7W|5~+1LE+mA8I#5KfRjc=vXsquNY>o9AVB}9FH@K?FDS-sJ(iO+@E`roR*t$ zoSwpV?F80m9xwNwZW3ol(J!XN;lqE(&DIafeySO4_lw7)h7W-u_p8~yDR8=5JYI?Q zD%@2#+X)x7xK}pRs-lfJUCI%==(m}_R4^UwbqkI!>BeMYP_wb#v)XHPO$EMT(% zmy6gwf~zI$9>DdoI6VC$_ji)Fea~^fzeTJxH9QR<&u(C@P}p3J%K>aJ!_^>m7vp+J z+-ruZ?FfB;ru0=BtETq4QRa#<=CU>MIOEt{@T5F#vPZ?^O_008$jP(a$jbtoN2cYxX?G&8N^-Y7t}E=f#!ZdW&2Zab{c^jY-x-g$gtJ?4v5d_PxLm>Z zYFzdGMxF=M{Zf^?n7mQgUm#ZLWtVb09U#|dGS>~_>=axKVY3F8!`L2+s}XVd@F!|B zM&BJmKQD0-_ur0VzdH7-*k^w#T}9qaNFF|oCHC2$(p%FnCS$*eefFoa=Wmz)S2-2? zZS3zP+lBR^Uron;7yFyhxA)SoXJUUg_Meelxf|#=dF;={{$*Rp)B3iE`FzZuZ{;#h zz7T!pzsv2>Z_ocDUyS+1?6;d(mi5b*Vty`pzWj&nqgSF&iSCo_RI(ae>P z*R$B)iJLi`+=APAoZf)D1#$SWFKV$wUtcVJm2J&;z?946=3H`14e$COcW1J{y6?Z` z@!y|rw1?!_62@ zR^fIWr#s4)<^xqlKj1x_~L zw#4ZpxT~;!0OvK%E{NZ~(}=^mlbaiut2%727Ar>$ANox0FJrEm!^y?CoyX~Bk8*ip z0qZmA=ZiQy1s6-=@L`|SYK6WzO8UxDdv)J$W!>HCKKVKML)gCQCr=K*t-|SkxEsKF zHO>cdwi_;nuvvx6VR3lZAGzJ0ydK4FYq9dw@UB1dWHaX4ah$HXNbaBA1lCvogFJ5L zlQ`S(9qAWS*gS&EX>nM8YMs-!cS>J5YWT26a(@eXLJc4OMxNfl{<;e5HBa;BgBoWS z(=QrqF2H4r?YX$>#9`gZ-6`bF9QJF(;qjQfohMI^#oYqdN8x-CXNTir37bQ3xs2@r zxLOg1^?zQ@7fruZ<#v<4^3?DtZ{*1;@{}6B^nqOO#QyR@oNbSbA#9%fFL_>G4rBZB zEwVn<2zJlodQ=?No!mc3-j3sBgIJ~1@a|7?{RngUB+eed#S}L8;&K|>J8?CG-7UDz z#bN!aZAsr>CViDWzm=?WSCOX|kZWo<50Gc)vcICi=1g3+*q(x`4!bqDp2hxH+{}r? zr~Hv8hm&^;I6XwHG&P(D$g=~OE0(a?50}f>uEy00cDv!a?{_@@ufk2gIIKUl8=#+T zEq#?z!-qYR>&?hBYB&#&o0q>W>s=0G`#i2juzLpAqu4)*n=zbh!0os=tUGyn!RO-r z9_u@0E?kdbzL+96x8QOb+Z%8-gWc7*&auA?Hw8{E#%(DMANEPjYx?P#(pQ=qKHZT# zJB8d(!+C(*u3>*whuxV^#OprTA5OoS!^t7IoyX|`xLXj1btl)W$%`eN?Iu=+8qNdc zb`^8g3U)i;y6*+ne|y~Y<78{xDx4ns3g@2zaaez9F+^WK`LCPSJ6vCo8b0)w+-xAX z)NmdkcaJbvk7EA-ZpLtOFK)+idMEBCu)YQ7lj3mxC(jPpT<)*sG&UE@oU+t#9w2uY zuzj6le=cqcoScc<5~ru&uEKf^&TDa4e`?v%&(7UUp0Arjn5#N+dw^IuYB&#&`~8?} z=5VqaxAQpN4R;Gzufq8v&UV7Zk~pk8x!Ib$TETWRv2xU2-S;Bv|8gt$*QOsQ&*N6% z^cma@VErV{2XVIHY`HE}42i?~Q>zjB=1!ScmKuKVBX_rudulijkS8~=|8^XwSL1F1 z>&tLHiL;AwF@?m2)|a8uyqaNL&Suag1h*R$AfkDEE1Y>nG_aaez9zDPek_Imj}RzI^Yt~+`5q*$2)PL}6M zxxS3N7{b}bVr8h|JV0(Q zV6Ga$?p$1tVt*!X#&B{9ZpU%D26q$U@M+J~Vv4>#T>2_|;Ae6kDyPZK0pyk%&I9Cb zKlWGW*ssP-fs@^ETjF#T?kcR$9OZdvEe`8Wo^8fl*<$nZjq-SEso^|8?w*%Cod2xS~rk~v@ePyWOx(~U%h1^lYdEob~{|)S~>Bq^{ zxK%j440i)qN9Th$yO@446t_PGmm}g{HA-&Cm5u#;nB1*lz8=H=Slo=`^eEg;V0}35 zCUJHME~docx*xTgp>I}8U)fk4HC+E;t|^%FtKxA=obJSSni?Jl$g}O^@oH?g#$|); zX1Hpxd-(>rpVl2tqnlZAubm_J8)Q!DCz&r6$TRZrcOYyYpg@u@2YF&n}&J!0P~*OD+ZX?_evh#4!~S?C+@mPk|$M7f7x=HGC>lJl?s?w~NeWN3E6fR=0%B8v5ljw#VXX1*frJ_sRakmxEA? zA@-jh&U`+NlQVHK9Q*sl{!Hx0{TCy#zbf|g*gqt0KN|a6$9@s}t7CsG_MdNLJ@PX4 zcZ&V-*xwNQRqSsT`xCLh`V6+OWB(cEi^w)2;JRI$4)$0=wsNJ&FA@xS7JqlenG6=?2`*h{M}? z$@K%|MS-(>#mZ2_{hr(&@R#!VURBuLz;<aB>-LTby2uyG|V5-a#$q=<743 zuQFAf7?J`ae$K49nhv2;Lb-6th{Zdu7A9<;; zSuGCFlgO(9aQ$qcQfL!{^a^j@}j`mEn;Q1U&r~pB)3;HS5??u zhU*&pi*eK7= zX>>b{^>^rZGdQ~u7X>!o!exn*IA2xb@Gehs`+1pDjvAJi+<%tsnu z)}O%nBF>J+;j0H_eN1%t?tx7X4+qrn<^$>517%*hSkptus)((_k@%vtLVJ zr9Wk^8znc<_d{GwihK1GwV9^2GtBuLa|t?7vyW>E86)C9HSH-Lg2mypvk?y@7Rolk}B|)l$RLe(8rVd120N&VHH!>|eQB z9+uMsFXaC>NUnb^dHAqroc#h9!`S@rNV!Z_j$r#k`qij7yu6d#eV4o$$NoEFl~Q}{ z1i8MExo#3?-@?TdHaGq?e{P<}_Dl4u8FBb^kJ=RU-DfzC|K2U~bSOQM`L<-PtC-VA z$K%vE`!L%XYIwOPxjmG*s>SX=TzA;N8#l8!-5a-a;_z!dxqcgYv4FF;h?Sv+cm0st zH!)W&VYdygm$Ba*H!C=OR}C^} zf5?97A?&`#yr+iyKY9Ayc)Ss;zk|C`obArLzlt$zE~j6Pi^JnSx&0D(J&E1t#mZB| z>7P8^{EPhAU>fTaoBVru>C4HBA?EX$*pK@w zhjI4VxP2b`>`$2!$*YmLees9>Q=1+?lzsQf@^h<4W5103&&YPl?alVhSnOA^e>8pn z7W(aY?ANh>ApLZ6`rQP%ex;V5d)~ykx6v;q*}j~j=56e6!+x@NGnaQUkNc@su!;N0 zXJh{tavWvf#CCOGBKOODF7|&&-^Kkj{jonE``@AO*-!X$P3$kk{^j)3A4?5?wu}A6 zKlERf`@8-w{bDHgmty}DY@c1ucbk^OvA-PqpJBUvkh~g^stmcZv0smpyA#=;r-ncC zk|!J|{J96GN3-8<0_zXQ<4of0P+Ux5b099K#o_Wkx!wI;a=xl_?A|7G%2UIi`^b~G zuzg$N^i8;{u-*peHO@B2MT5;NSIX_BY{lX7KDC~upZrex%Knt`!hlXRhw!IPPm=<*DIIn&R=l#9Y&l zljv4q{dxM`0M0&(i$QEYgYyw__)-UIHAbz+nX@03IpwI~%lydwq2viQyse8oJ&^r& zQ&_({9%mY7d*fmTo857lWBWE-72@!&ZgTe~@}|Q6=tDPM)=^Jl7B2g?l-rfP99R9=eGS)294_mU`_GfNgE;xDSf$kPe2-jzhPiwgXD8xf1e+6A z%lWSy#rDJWt1;{j#r3#2tUtA#r0@5ZzDlUQZi+nJom^AHmwS+BZ)1PO3^s4UWsdEe za8+Qp4X#Vc}^e!*PPVe?a5&SLvxT+LzkLtM{e z|2^C+h{O6*yCwR`jnY@?<-5qwHD4yzmy>7I@VuYge2x8;ef_NemvGgO-RE(wu>UM> z25|Bj+zyJvx|64$AkT-fK3c3YYWQ*&a`R#4%28|&#nl*g2jY4h`*-7J0w;Upc2XSH zpPEn8Pv0VarK#b|e8{smksE6GaxZeb4g0GK>^8@BiTx|5%kL{qg_B=jF6-XbIQ<3g z8gW>6a{XiSqQlt_#mZ27qtt#O)$ZzlFOcariPvYOz9J ze@Xf(qlPba{Zm8pT!Vd>NZB;c`VBzSL){P3zyQ`=y5GW71bHR!O(&{k?q?7tUrOfL7W|p^C59~SqHf}l)M@V{^R9L>m^n$R!QwZ-i? z&J6A*u*uk;rG{63kUPy>IfZ?St7&nso}o55wJoS!DODv;ePh$zT&tD{JP= zqcYd48f+h2kY7*SedKjZ?$_g{!^y3fxvTtZ$gVtb)jIcoTB zA98;lbImeN&cf{q)~DjGZ)2 z4(eD<;y?lv0JC(d##%8TpS!#INPwtLmuI}4L*54n4 zn|_=efm?<3VYnL*hgW$~%OU!ilfE*sT59-k9_H#1=A4Pg8O1(hyM!7({DWNUc)W3( zr8u9!Cc)(-wpZ*UKc8w!9R9jb?w+dTbluEgzfr6bYOl@7^`p#n1c7KIDViwDjFI(pNrKeJk^A$6PndTykOD?*h&)VLL3E!2Ej7IQi@rQLS;{M0kPdh=bU$|7(vzx@(vtnhay>g1&KE+%$jol?q zem?aK_7Bo;a&h=>H*&o`?!Uy@t#SXDlIgWmiyc=h}Xk!1--)*{#qq4P!$$ra;*l%N>{V8(^+gFpZ-^KoY@!vCr?Wytj zv$4NUtlV+r&2-#;F80~4@`urHXUO$IaX<4o^SH~gakwnvevZIZDel!3wOIH=e^l1J zSd6xD|4Y#(dO13aUWwMxecQ=8r)hM5bP}ziulNwh8;E}P68ZTSgV9e#4@GZ`9*%xA zdL;V6=+Wr=qQ|1wM~_F}8a)xcE_xE%YsAXM>Z##!zx2a*d&KQ7VY_Yy>kHW~qlQm+ zAUD}n+-?hOPi4ER#BMFFE9{TMO)c)V4S9M5dDminm^eJXk{2DhIdxoqzU3^o=dF>S zZ#9RVVZNTnKEus|IQ;rg?Uv}L3H^LP$@(VDEB(UPShr>7^TF6>US%8Umn*S96#LIg zuFQS(t3JuYWx&{fl)ha@zwVFyk=S2P-l&+5#yrmFW6{?zmybtZ5j_!|d_mSFpNvlV zIptH)mwZKjj`?)-adG<@?2ZvDPYvh!IClhjN(~?CMXr-$sB0I%}MT$Ti|)yEKU-cQz^CA&5`R@FP8Pn=W+G|E*7wP7MF|IK833#>^9$(66VlKMXfB;;{bI zuArYBvHzx@w@NK@c}cE~SY_1kU9RLNW3H^R)wpV~OL5&||J0WJS-!)`3tyG>ZD++{ z-O1CZ$n$xu5BlMz+qKFbB`+4p&4ajH#P&X1En&AF*UQ-7iklUjtix^J8#mn^!k>Am zxss~VOQf$fHM}a7Jj+g$pOZ=dQ*OuQAh|u2{Z&KQt;O{)_Q&C71Si)_@&6yi>0$J{ zF>zRTa_z~B37k1`_`QO>oFumvS5w#-Tu)=4;bsOW8n-!4Q`{BeUS3j*ioSNg-Sl`6 z9w%iz!iRd2n~h(QpNDly*0*ZN-Gh>c4|l}=KHPLTS&!RUoZgDNIjq;=d|uou7Ra+J z$je1+E)gqB?Nv+U?n373W$e$x%?eJ=!foI7JP$Y(cl}te#kmrP^{1AD^s^(RuM9PO zs3*BSjNDOs^)R_Vi2XGqIPth0#i@O#+@88ItPTBq9A_CWCdA=Y-Q*@Eucoj~#L7{_ z?|tO{)lzP6%?wVC`!hLTv^h?nqTdx*Z^U_tvqy1JiNpF+tA@T=FMVaHVcp5yt>m5> z&I9DhI`-Gj;`AEa&0&27&gXG<2`(0}xe%9&;;`=I_AK&x8M{-(%2UI6fIL~tT-*01 z*8e!%^<#Yu&K1s%z{LPIhv9Ni9M+#&57W0!`pQwmr}&Y3OP)}}d4N1M?5`WcI>Y%m z&NMD2ut{+_iEV>el>HPHHuupl zYi!r!su73vr#2mZca8MJ@BhrTv*gJYRx*q%zi zTEcEEu9wAO-O2qiG_;W66U%w^7MrT`8`g*@MZaV=i}trv$&YR=9pDHZ=S^VQTo*sb`Rou z8vE#G1}C@DZ*y_4E6LM!k}FN^A{xiRF`0JfP}Icl#SB=;%LznUSOCT!OZWBuxdvYy=t&R)R9s5pF=JGC08Z#GI_ z*;pMle3v_O%_MXFLH5&5;q*SX(+{qf=kMJ#d3I|&-V8SDaG7I!4Xz68uE2FE4%d6h z{e|RhjnnhQN>ju2Uh?cL=86`ZBW{y_PuXE>Zw_?$maHzIPla zja5^_ceyiHEHRfEj$1Bcld+wphU>lLPBT~c?I`Q-Q{439G{LRH`qeM7egoq0t|9Vl z;whOpTvb79?>uZGFpqqrWy{z2S~;xt<;zu&cESl>#&8yAP~a;KJ)^s_6ZAD(~o z%gZqA`t5oCHN{*#&73$6Q-s{gmO|aW&2|`bC3{#$_uGFZUw133)w>-K*!b zZq)GU4&>6Ib-5+Dr_^h zbJXxQ4|1>L@fw__xNWgcaM$7N)qj-7(_&T}uJe!hzNH9YU3Un~0V3i_TJUIs>s!^JQ*XW?=LC)eO=R2*LJPj1&;vgz?vxg+T3CAmKgH{&=x2)7ehd)!Up%;91R z8;i?noUCu<{8i0}!^{7vc@_Iw=ELH{+6r>%_5t41IqV`)em+eWgv@^+3~KZ?6~oIQy11#IraLF?~Oy3U78AHDskNuh0Psr;6+vp<4?$s~E^RLu! zzK`3zfZGb|XK`2K>?vF{*t~EPe>ZBy;e1c6XX)GZGOt{$o*K^g%(e5(rR(Bx7O=jC z?J{bwSR^-BFjp>NdkL=tdn~ozd2FT4ZxE#dx z2wV+ecNngRu|EhmBjRwrr*>oXQ!9O?W6h|&Vw|~hf;p4L<4j_!+0IeJ+xp0T8jm-P z(*(COSigFnJT7-R&iq&8ala_U;oaQiW+QV|h3%ta<*4C&PwpRNu4!<3A8uQ$*W<3k z*{!&k6^HXZwVJ1I9+kIGgzLC6ryMn$@0n{Bne*qx<1FFyEao*e{C%H1J2f6}1)H_F z?0c)+@9lB8>c{RFTq|)nzmxmJ$lF1j9@NO~LwoXWh&*$+7{p7e2)Y8+WW+SF#()s~K|lD6VttAH+?8 z)BA8+V!a-BmAF^bp%vccvWaX256S1q}_0@oe(m*8d=rx)UO4(s!9H!lv?`>Ew3 z{cNrDl{xHOc|5eoF<&jwcgNs*8T%t}vx3tHzc07)Lu2nW_|}YtA}v9EpCRf-h%D39rl!m`F4cdym&5m%Ta8f!^N05e8>Z} znxNK`)MiSma^IJENHhF5!&+vC~3n#1mIa6OOxM{u)%(+}WwQ5@doK`oZ) z>wToJvd8|f+)T_K%$F<7Regip{a=$07YVQW#co@+^VINiAM$jIc)S6uUpt5O8pPR) zxER9bIb05l!-u$%+nxSSIAs%dIH zL*IUre%|7QdF8%L-sH^ZUFV2NAls?*BW&N5u|F64C(+mMp-;=6f)oFGa`g^X2Hb#{Nq54$*yoF6*6a8{Hqhg;<$* zyj;cnrfYfljK`}dCGX_}vH#dV$iuR`>3`(mq?wBS!PvixzJF0_xF5#;Q0!kzKm8^B zZYK7JWB<$a^+WWFBKAjO|1|P^H2S3IvFL}CtXn=F{gK$8h(10#7l+e6c}A|x+h3Fa zS5=W)wpT9hr>@EU2iQ;3;N*R{ZE^Y@+;v#*6OTKKvpsMzCk`L#LT=tlUM*m|gIGCg zxa>#nw`Hzb!pRo6UB>BaIrq~QtY5@=-!5`{$ezPRzc^g(r&a^>&12G6mKrYele>q= zJvDrq2YK>+_SX*M^e)_uV0|0TM{#x&F2=CA7MJ7V@UCuh`*req61y*pm8XW6d66ey zV6L6U>F01agY{`R&vAAVE(&ap$7LxFpXNZVYx?#B(pQcezO;+nzmGhjh7ao^Pv67- zx(@4oa6XH(J#aCH&D(J~kL_D=wIB}bPVTlPZw~19s4KME}*QebfmoM{CoPCq+ ziZN`yj>~auzl^I1?A|lB>3F?*QXJNu+@Hi;JB^d$#VY;gjr=+}L#{ux-Ge;hEIPX&$eKH#T+)*o+Rs4 z&SU%B=fu?lcE7~+BKAMS&5}5*J9+XDdAEYo?~9eDhF|;N#`@pIT+xrsZMam}-h`_G z?5@T2AokzH&5$^Jcq6qNp`ToPh1@>U&oP&elIzpNDx-!EcOo|@F;|Xbdpxctu=^Wa zPh$TO+)Ux*1Gt?QhwtttPv1kH=UDF}Rv9&1?j<*SFjtn?z8zN;c5lUXjr|U|X>hVF zZd-9!e`-D(`|MAp&z-etU6rQx@)i2oFC`D_V`P2I&u}qE-#&)RdF&p-)dKd>^&(Eb zPrq3bhua5vdK-Dy&vEokI9E8kR;&y)T<#~g-(;>F#O~|38p8g|xE{vI7jQEo4!{0W zyD@4$&RlxD%qdL`f9504{)XI8!^?fh?Q;jpuZ`6dcJGVFoyPt>@whWM*$1~dPWQlF zAr3F|BG+#vFDjhvAXbJNUhYF~w`Hzsu-gLHE%vW{R_?b=hm#j^JB!oja5pCoZ?B*h z3-tA4(htwynJX8`%|qmt8eZ;0?!M1ly^Q@`xLLu;ZMf}wyWFnQn{d~U^|d%x;;`Q2 z+1JU-L2SM(R+buG?nCarz+63y{pWBqf|Jv5JBrhja5ska@i-qBhxMnHlk~F>NM9Lh zczGweeIL1_hL`)0``bPw=b2^(Cws8}Hpl7PaaUmdR-BhO+W{AqIIKIl*@C=kuzl@J zxgWb1KO)DgTXO%L#NktXsMQjEbDQ*)rH1cr zCU-ZHduq7sOP*ZI{@T7>S^sb1t{>~K<6PnF%eWZ8<_owS6o+*ux2KWU!`Pi9R(_us zkKk?$>kr_39B1#t#RN95eN^^WPKv|&Q|oE^_N_9n95sA*Gr8Y^ zJfVg^^OL9Bvj48YdJCMFID733x&IawHZS6`#`ZZ}HRA9xFLL)Y@}|T7F|kUh;pIN$ z=|jwQb69^L=kqwb3l|I6+=k0VY;VHVk~pkCwOOI>zAk;`so}f3hh*K8FO#R#@G>uQ z{RQ@yE1Z1}7X#RwhRZ>0Pr}s@cE{s-SR7vFMeaXB-j3qr17ej@d)*khejjuBIL_XK ziwSJ@!Q~{jd*EscySL+dS{&A&+UE5Aw$fJ#HN3o^Jl%p^Q^R?HJbUf$@Hj^U~?NT7qPtwS4-Gki|b|V zzloa_aajL%Y+C=Y-cnWa1?j6aR!t2r^QWJEj_r#9Y)-@FAhsvrY6!dIaXpOv-{59M z9M1dX$+f(_w;RLhdt^>&YIwOfdA1MR7Zcd*fy+s3?^=?_+iD8C9q8B7*l&xQ8F9GZ zlP9mu$hvk#@c(;RGb}sp^jFeWni^i^Po6zNZm8jOKyDvrcU6Pk!?A3BCC#Qjv zan~;n%TFx^=<6e;uQF=*&TewE-SP6Y-X6^M)eyPcAJ@a!?~9ueoa~9)QJn6IyD_YH z#`(B7JPjbvwj(bmvDs3rEH#`C$ldFw%ktLK*uR9E8JzqEw>eIKg}ValCvaYh!}?Rp zntpb_^p&B8clVRq)BjP{$KB5MbxZDV#!ZKl>u@`Z(<^Z|hxMg6pU2rnxL6Q}rvc>V zZ1QRe+tbC$QN!tg+@H)`vx1WoaND;V>;Ey_^<#bi&hqPZu5flR{bE2I)}LAp(KiPl z#bv@>nX8A%-Ilw^&%^IX-i(kZ+u?Q;r(5D~4C~iVll9BTarP1}Ca}5a==d~19M+xO zKF(Y{jorgy<*DIxK%U&sT$|(cH+#v$NLOHeGyS~8*>$+6u(=YKwK%LlwQlL#FG^pz z6Z&MoO-JreCr_y1bU>b-%>KGLtWUuCJkCCbiv?_s#N{HkAH>y?IIKIl+w~1R{aV3( zPnlB*HJlE1XZ?3&`>r4BopG*kwj(YEu-OimgV=6~t08fCmj|^Oq3?ck>ZbKno*GUA z zJRKm{m$H3c;_M<^RM>nGmo>I$RM@bsVB&eHcElfFu*;Z^?R>5=4`8qNdc z*$3HQv4G9NxLm~c$k%0^t0nCAq+c&%zbkH5#9`g7tb20v&YTAOak{0Wc*KNt~*^`~}Y^pm?~UZvEq?&SJ}kICaob~F1c zCdkcoxSYiHN?c80cPXx?vA+m6GdTGoZgX*1ck=Xf^1Q_QWUUp5_UV{dKvre zaI=DwEpgko2lxNiPl>k!aaeb9{TuRP0B64vD?<(E0do5UbJY-bkK=k6`-gEef|L7k zJBri0aW^Io>rX8v=|{#Ki(OyW(ayofR4d(%JeKPyYOPrm6iwc|j z|3c1ZWsU6z=~oSQ2jjXGhjl0Sdk)I;>UI_5Ww!h3NLk;Hva=S0vS5w$M{7_tf?02T$ z%;024+~zpl4tIq(tUtA==xSPZJZk*4H!}*^)+jCbQcNVd^Qs$IByNJ*K$=#)^#q~1wXS2U%1t+KDwr@3$ z|0mD?<%`1|YWwlRIiS50Lx)*%u)xm)_mQp2AC$ldMao*K>r! zIh*-%Q5??y z1pRUn+sAP=B@XLO?(QdVX0X3o9G-uWw>f!wJMIdsZ^n6vv+HnCVRI!eYiuvYRU;1T zPi;E-?riCY=O4_qv*gL?f`<$$MvZq+3)Nmdk*ZXr_AXhlsk?o2BY_|JqeEi4u^)<3y)ev?s;d)pc{tQHI zN9p?~q#vGtFxQQdr`P=}=beYi^KtU*eq2mob2lz0vArEvQ`p^%>uKz-!_AC1od3y_ zOUb(erx%IC^AGa8B+tHxiwc{waam(~I<6Y*PR4bM{Rz0~#NoOhwVR`#d{Fu-rH1Q1 zuKz-#LWy&F2!w*(~EFdh{O4xT%S!|R5&|b9G?G>mo>S)lut*j z8tgtszizQV5;q-AK8V{{oF0t3IdNEjYOz3H?0%IXM7NTSD=wlFh z%n@xjB9B3|4Ib~9Bi=TMwzJOnUEOz{`Rn_ptY}bL5_y z_5t$nDbCj{;p}?c7C8SX?nenB4 zqgelSpr0=emzVg&`-G@AUlsu!ReSkdwFz4$^tUrK@3Y+)hvc~pZ zxQf`l9oLOGtvk8@Fu$JGbU3_G=2S*a`v7_VI*#vFuzoczRq3{eH~!; zLi+W(IITam*`)9P_^!R{sRA`!_c@OJ|99j$HSPc8`qz@D@Bgv+IWEVr{RytdvHJn8 zC$Rr6j+5fF|C5KWlDE@1`=VIo)U*$f>(4V+%wqF7T+U(pDO}BCcRj8bu>UBIi{iBY z)V81>-Yb2TeeS>TzOy9H-%hTnX&)drZ{>VtjqO`-6|s90t{d#%h+~Vx>u}SF)4G#q zuORPMaQ|H<7;4(it*`=4`M+`!={xY@+n4{$qjJg@&h|4%#*M#X9UspS}b{dpeOP}B8) za{D=QM@{p$XR6`SATawtyg-XGV`)$7>)K<1RA4$9Ft$ol&4a(vui zF7$3TarRC6?FjSwtGH9xd=VF8;byK}{PoPoN#>d<=E8@`+i9GA zfa5eZy$+C@_cB+^V*4&!&0+V#-F&|>kNsQd#|81AStJi{ByX2+_ByfB)O1rmVWs4`Fqz>WqsAu^k)Ff70b+-&++LC z)e5%XI^}xLL#57je6e_2+T7Ax?i*KyE%oUX29#y0F)am7}Jc z{E+*PG8YvNAI8lX&OU(Kajf5qy9sgnln-h(Mc=$t`pWjzQPZdUGZ$x=^Ka@OXBLMy za$H7DH+3b~uj?Og9-CL=VgcJ%;A#=Om*aX#oIcfs+`o{#DRKB4vC61}wj$SmeFx9a z8k;}jB4YbHTs7GJ8rQ9O5IbtKOyB=N`sw$Qs2O$8t}xfFGN-@Ed5R%6UuE9@+{pXs zYK`1|p1FD*`_JLHfy1Y8vx&3oaXa#_`u71+mHsGsp|JU|SY_`bug1ykdvQI1UEeRp zuzx%KIElmGZ0X*KYBxh)zmCT-eYMo|=ic<)tNX{B@B7nzzdvu>;PKrQbLC9m=e){KkT;wC@w0uO^QM1)`t1n09_`OFhs_A? zMzP(T=igoR=NY44kBJ9yoLbKJeU4XdvOn)apKr){lpiN=n*O-OzCYw~+7^fYzoT60 z`^y}!IZt}I?vF3}ena1^|DSR>x?1V`W#3P~m%4X-Y{%o&t9`%f`%Cm)q#uWUzwY}R zdt`lmNxxa^`?2rGJ7wD`m&x08@-WYN^S)|o`tXnb_)X@_Ea$C8rg{0F;W$T4FaP9z znz^WOn8M8%&L?p@j`alYCd7kslH81uS5w$3v2xV(@=xwZnTskZt^iwETbwOXWahSFEIua27T@yc8*nDZ-~rzvq*=D3`iUjE5-*FRp3O^eHjZG)=@ zyNK&noL>IPeMR0Z<4}rKPE9ZWDzy5vq|62N?(P( z=1P9;AblISrGNRCs`OO#CyiIYs$KMIE?r~JAa^v)iS)9${MqxkN_viXP z=Tl+xZ9Ff>Bu_Wj>-(HfOQL|Lz5x$lqBx9TVI^-_=a{gu8yLf=hs zd{ljZwePQ=C(koKPQMxJ`@_D!CjE4;Q1PH0mwsArj?1X&-mc{N2DzrDxBujZ$4U42 z#I`?gHI3bn$EjzqU&V12hZWq+iPJru$+HoDjjCI~dDB0>8j-KZVv*dezd(NNrCh?c z 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