/[MITgcm]/MITgcm_contrib/darwin2/pkg/darwin/WAVEBANDS_PARAMS.h
ViewVC logotype

Annotation of /MITgcm_contrib/darwin2/pkg/darwin/WAVEBANDS_PARAMS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (hide annotations) (download)
Thu Aug 23 21:49:33 2012 UTC (12 years, 10 months ago) by jahn
Branch: MAIN
CVS Tags: ctrb_darwin2_ckpt64f_20130405, ctrb_darwin2_ckpt64a_20121116, ctrb_darwin2_ckpt64e_20130305, ctrb_darwin2_ckpt63s_20120908, ctrb_darwin2_ckpt64c_20130120, ctrb_darwin2_ckpt64b_20121224, ctrb_darwin2_ckpt64d_20130219, ctrb_darwin2_ckpt64_20121012
Changes since 1.1: +7 -1 lines
File MIME type: text/plain
add direct radtrans solver

1 jahn 1.1 c ANNA WAVEBANDS_PARAMS.h define key paramters for wavebands
2     c ANNA WAVEBANDS_PARAMS.h set number of wavebands, number of absorption 'types' here
3     c
4     c description: Key parameters for wavebands
5     c Anna Hickman Spring/Summer 2008
6     c
7     c Set parameters:
8     c tlam = number of wavebands
9     c must match number of wavebands in input datafiles
10     c must be the same for all data types (water, phyto, CDOM, surface spectra)
11     C (set in SPECTRAL_SIZE.h)
12     c tnabp = number of types of absorption spectra for phyto
13     c must match number of types in input data file for phyto absorption spectra
14    
15     INTEGER tnabp
16     PARAMETER (tnabp=4)
17    
18     c Input and assigned data:
19     c pwaves = actual values of wavebands (nm)
20     c aw = absoprtion spectra for water (m-1)
21     c bw = backscatter spectra for water (currently zero)
22     c ap = absorptnion spectra for phyto types (m2 (mgchla)-1)
23     c total absorption is used in light attenuation
24     c ap_ps = as above but absorption of photosynthetic (PS) pigments only (m2 (mgchla)-1)
25     c absorption by psc only is used in growth
26     c bp = backscatter spectra for phytoplankton types (currently zero)
27     c sf = PAR-normalised surface light spectrum
28     c intenities per nm and sum = 1 (uE m-2 s-1 (nm)-1)
29     c wb_width = width of wavebands (nm)
30     c acdom = absorption spectra for cdom (assumed constant) (m-1)
31     c ap_type = absorption 'type' of phytoplankton assigned in darwin_generate_phyto.F
32     c aphy_chl = absorption spectra assigned base on 'type' for each phtyo (chl normalised)
33     c aphy_chl_ps = as above but absorption spectra given is that by photosynthetic (PS) pigs only
34     c aphy_chl and aphy_chl_psc assigned in wavebands_init_vari.F
35     c alphachl_nl = slope of PI curve calulated in darwin_init_vari.F
36     c one value for each wavelength (same units as non-wavebands alphachl)
37     c darwin_diag_acdom_ilam :: waveband to write to diagnostics
38     c
39     c n.b. some info about input data is in the headers inside the input files.
40     c n.b. final column in input fles reserved for backscatter coeffs. Currently 0.
41     c n.b. local PARwl and PARwupl are assigned in darwin_forcing.F and darwin_plankton.F
42    
43     COMMON/wavebands_params/aphy_chl
44     & ,aphy_chl_ps
45     & ,alphachl_nl
46     & ,aw,bw,ap,bp,ap_ps,bbp
47     & ,wb_width,wb_totalWidth
48     #ifndef OASIM
49     & ,sf
50     #endif
51     #ifdef DAR_CALC_ACDOM
52     & ,darwin_Sdom ! used in acdom calculations
53     & ,excdom ! CDOM exponent
54     #else
55     & ,acdom
56     #endif
57     COMMON/wavebands_params_i/ap_type
58     & ,pwaves
59     #ifdef DAR_CALC_ACDOM
60     & ,nl450 ! what is this? used in acdom calculations
61     #endif
62     #ifdef DAR_DIAG_ACDOM
63     & ,darwin_diag_acdom_ilam ! waveband to write to diagnostic
64     #endif
65    
66    
67     INTEGER ap_type(npmax)
68     INTEGER pwaves(tlam)
69    
70     _RL aphy_chl(npmax,tlam),aphy_chl_ps(npmax,tlam)
71     _RL alphachl_nl(npmax,tlam)
72     _RL ap(tnabp,tlam),ap_ps(tnabp,tlam),bp(tnabp,tlam)
73     _RL bbp(tnabp,tlam)
74     _RL aw(tlam),bw(tlam)
75     _RL wb_width(tlam)
76     _RL wb_totalWidth
77     #ifndef OASIM
78     _RL sf(tlam)
79     #endif
80     #ifdef DAR_CALC_ACDOM
81     _RL darwin_Sdom ! used in acdom calculations
82     _RL excdom(tlam) ! CDOM exponent
83     INTEGER nl450 ! what is this? it's the nl number for 450nm used in acdom calculations
84     #else
85     _RL acdom(tlam)
86     #endif
87     #ifdef DAR_DIAG_ACDOM
88     INTEGER darwin_diag_acdom_ilam ! waveband to write to diagnostic
89     #endif
90    
91     #ifdef DAR_RADTRANS
92     C runtime parameters:
93     C
94     C darwin_PAR_ilamLo :: starting waveband index of PAR range (default 1)
95     C darwin_PAR_ilamHi :: end waveband index of PAR range (default tlam)
96     C darwin_radmodThresh :: threshold for calling radmod (default 1E-4)
97     C darwin_Dmax :: depth at which Ed is zero (default 500 m)
98     C darwin_rmus :: inverse average cosine of downward diffuse radiation
99     C darwin_rmuu :: inverse average cosine of upward diffuse radiation
100     C darwin_bbw :: backscattering to forward scattering ratio for water
101     C darwin_bbphy :: backscattering to forward scattering ratio for Chlorophyll
102     C darwin_bbmin :: minimum backscattering coefficient (not ratio)
103     c darwin_radtrans_kmax :: deepest layer to compute irradiances in
104 jahn 1.2 c (is considered infinitely deep for boundary condition)
105     c darwin_radtrans_niter :: how to solve 3-stream equations:
106     c -2 means use direct solver (default)
107     c -1 means use approximate non-iterative solver
108     c (either a la Aas #ifdef DAR_RADTRANS_DECREASING, or a la W.Gregg)
109     c >= 0 is number of iterations for iterative improvement of radmod solution
110 jahn 1.1 c darwin_part_size_P :: phosphorus content of one particle. used to compute number of particles
111     C
112 jahn 1.2
113 jahn 1.1 COMMON /DARWIN_RADTRANS_PARM_I/
114     & darwin_PAR_ilamLo, darwin_PAR_ilamHi
115     & ,darwin_radtrans_kmax
116     & ,darwin_radtrans_niter
117    
118     INTEGER darwin_PAR_ilamLo, darwin_PAR_ilamHi
119     INTEGER darwin_radtrans_kmax
120     INTEGER darwin_radtrans_niter
121    
122     COMMON /DARWIN_RADTRANS_PARM_R/
123     & darwin_radmodThresh, darwin_Dmax,
124     & darwin_rmus, darwin_rmuu,
125     & darwin_bbw,
126     & darwin_bbphy,
127     & darwin_bbmin,
128     & darwin_part_size_P
129    
130     _RL darwin_radmodThresh
131     _RL darwin_Dmax
132     _RL darwin_rmus, darwin_rmuu
133     _RL darwin_bbw
134     _RL darwin_bbphy(tnabp)
135     _RL darwin_bbmin
136     _RL darwin_part_size_P
137    
138     C dependent/hardcoded parameters:
139     C
140     C pid :: pi
141     C rad :: conversion factor from radians to degree, 180/pi
142     C bphy_chl :: Chl-specific scattering coefficient for phyto
143     C bbphy_chl :: Chl-specific backscattering coefficient for phyto
144     C apart :: number-specific absorption coefficient for particles
145     C bpart :: number-specific scattering coefficient for particles
146     C bbpart :: number-specific backscattering coefficient for particles
147     C apart_P :: P-specific absorption coefficient for particles
148     C bpart_P :: P-specific scattering coefficient for particles
149     C bbpart_P :: P-specific backscattering coefficient for particles
150     C
151     COMMON/DARWIN_RADTRANS_R/
152     & pid,rad !radias and pi - use these rather than darwin versions for simplicity.
153     & ,bphy_chl !scat coef for phyto
154     & ,bbphy_chl !backscat coef for phyto
155     & ,apart, bpart, bbpart
156     & ,apart_P, bpart_P, bbpart_P
157    
158     c not sure if some of these are necessary
159     c SOME OF THESE parameter names are the same as WAVEBANDS, but have an added k dimension....
160     c the params aw, bw are only temporary in wavebands_1d .:. CHANGE THEM in WAVEBANDS_1D to something else
161     c this list mostly from light.F
162     c _RL rod(tlam),ros(tlam) !surface direct and diffuse reflectance !not here
163     _RL pid,rad !radias and pi - use these rather than darwin versions for simplicity.
164     _RL bphy_chl(npmax,tlam) !scat coef for phyto
165     _RL bbphy_chl(npmax,tlam) !backscat coef for phyto
166     _RL apart(tlam)
167     _RL bpart(tlam)
168     _RL bbpart(tlam)
169     _RL apart_P(tlam)
170     _RL bpart_P(tlam)
171     _RL bbpart_P(tlam)
172     #endif /* DAR_RADTRANS */
173    

  ViewVC Help
Powered by ViewVC 1.1.22