Warning, /doc/phys_pkgs/darwin_spectral.rst is written in an unsupported language. File is not indexed.
view on githubraw file Latest commit faa67d17 on 2022-01-31 17:00:48 UTC
a4f2018aab Oliv*0001 .. include:: ../defs.hrst
0002
0003 .. _Spectral:
0004
0005 Spectral Light
0006 ^^^^^^^^^^^^^^
0007
0008 Spectral light throughout the water column is computed following
0009 :cite:`dutkiewicz:2015`. The :ref:`sub_phys_pkg_radtrans` has to be enabled
0010 and will attenuate light using intrinsic optical properties provided by the
0011 darwin package. They are computed from concentrations of plankton, particles
0012 and CDOM:
0013
0014 .. math::
0015
0016 a_l &= a^{\op{w}}_l + a^{\op{plank}}_l
0017 + a^{\op{part}}_{\op{P}l} P_{\op{part}} + a^{\op{CDOM}}_l
0018
0019 b_l &= b^{\op{w}}_l + b^{\op{plank}}_l
0020 + b^{\op{part}}_{\op{P}l} P_{\op{part}}
0021
0022 b_{\op{b}l} &= \left[ \tilde b^{\op{w}}_{\op{b}} b^{\op{w}}_l
0023 + b^{\op{plank}}_{\op{b}l}
0024 + b^{\op{part}}_{\op{b}\op{P}l} P_{\op{part}}
0025 \right]_{\ge b_{\op{b}}^{\min}}
0026
0027 Water IOPs, :math:`a^{\op{w}}_l` and :math:`b^{\op{w}}_l`, are read in from
0028 :varlink:`darwin_waterAbsorbFile`. Plankton IOPs are computed from
0029 individual functional types,
0030
0031 .. math::
0032
0033 a^{\op{plank}}_l &= \sum_j \op{Chl}_j a^{\op{chl}}_{\op{phy}j,l}
0034 + \sum_j 12\, c_j a^{\op{C}}_{\op{phy}j,l}
0035
0036 b^{\op{plank}}_l &= \sum_j 12\, c_j b^{\op{C}}_{\op{phy}j,l}
0037
0038 b^{\op{plank}}_{\op{b}l} &= \sum_j 12\, c_j b^{\op{C}}_{\op{b}\op{phy}j,l}
0039
faa67d1773 Oliv*0040 The spectra are selected based on optical type, :varlink:`grp_aptype`, from
0041 spectra read in from :varlink:`darwin_phytoAbsorbFile`. Usually, phytoplankton
a4f2018aab Oliv*0042 absorption spectra are given per amount of Chlorophyll, via
0043 :math:`a^{\op{chl}}_{\op{phy}j,l}`, while bacteria absorption spectra are given
0044 in terms of carbon, via :math:`a^{\op{C}}_{\op{phy}j,l}`. Note that all
0045 plankton types can have carbon-specific absorption and scattering, but only
0046 phytoplankton can have Chlorophyll-specific absorption. With
0047 :varlink:`DARWIN_SCATTER_CHL` defined, scattering and backscattering spectra
0048 are assumed to be per mg Chl and only available for phytoplankton.
0049
0050 The particulate spectra, :math:`a^{\op{part}}_{\op{P}l}`, ..., are read in from
0051 :varlink:`darwin_particleAbsorbFile`. :math:`P_{\op{part}}` is particulate
0052 organic matter in phosphorus units, including a recalcitrant component,
0053
0054 .. math::
0055
0056 P_{\op{part}} = \op{POP} + \frac{1}{120} \op{POC}_{\op{recalc}}
0057 \;.
0058
0059 Absorption by CDOM is computed from the CDOM tracer and a recalcitrant
0060 component,
0061
0062 .. math::
0063
0064 a^{\op{CDOM}}_l = c_{\op{CDOM}} e^{\op{CDOM}}_l (\op{CDOM}
0065 + \op{CDOM}_{\op{recalc}})
0066 \;,
0067
0068 if :varlink:`DARWIN_ALLOW_CDOM` is defined, and estimated from that of water
0069 and plankton otherwise,
0070
0071 .. math::
0072
0073 a^{\op{CDOM}}_l = f_{\op{aCDOM}} e^{\op{CDOM}}_l
0074 ( a^{\op{w}}_{l_{\op{aCDOM}}} + a^{\op{plank}\prime}_{l_{\op{aCDOM}}} )
0075 \;.
0076
0077 Here, the primed quantity does not contain contributions from carbon-specific
0078 absorption and :math:`l_{\op{aCDOM}}` is the index of the waveband in which
0079 :math:`\lambda_{\op{aCDOM}}` falls. The spectral dependence in both cases is
0080
0081 .. math::
0082
0083 e^{\op{CDOM}}_l = \mathrm{e}^{-S_{\op{DOM}}(\lambda_l - \lambda_{\op{aCDOM}})}
0084
0085 :numref:`tab_phys_pkgs_darwin_spectral` summarizes the model parameters
0086 relevant to spectral light.
0087
0088
0089 .. csv-table:: Spectral light parameters
0090 :delim: &
0091 :widths: auto
0092 :class: longtable
0093 :header: Param, Symbol, Default, Units, Description
0094 :name: tab_phys_pkgs_darwin_spectral
0095
faa67d1773 Oliv*0096 :varlink:`darwin_bbmin` & :math:`b_{\op{b}}^{\min}` & 0.0002 & 1/m & minimum backscattering ratio
0097 :varlink:`darwin_bbw` & :math:`\tilde b_{\op{b}}^{\op{w}}` & 0.5 & & backscattering ratio of water
0098 :varlink:`darwin_RPOC` & :math:`\op{POC}_{\op{recalc}}` & 0.0 & mmol C/m\ :sup:`3` & recalcitrant POC concentration
0099 :varlink:`darwin_rCDOM` & :math:`\op{CDOM}_{\op{recalc}}` & 0.0 & mmol P/m\ :sup:`3` & recalcitrant CDOM concentration
0100 & & 0.0 & mmol C/m\ :sup:`3` & - if #define DARWIN_CDOM_UNITS_CARBON
0101 :varlink:`CDOMcoeff` & :math:`c_{\op{CDOM}}` & 100.0 & m\ :sup:`2` / mmol P & P-specific absorption coefficient of CDOM at :math:`\lambda_{\op{CDOM}}`
0102 & & 100/120 & m\ :sup:`2` / mmol C & - if #define DARWIN_CDOM_UNITS_CARBON
0103 :varlink:`darwin_lambda_aCDOM` & :math:`\lambda_{\op{aCDOM}}` & 450.0 & nm & reference wavelength for CDOM absorption spectra
0104 :varlink:`darwin_Sdom` & :math:`S_{\op{DOM}}` & 0.014 & 1/nm & coefficient for CDOM absorption spectra
0105 :varlink:`darwin_aCDOM_fac` & :math:`f_{\op{aCDOM}}` & 0.2 & & factor for computing aCDOM from water+Chlorophyll absorption
0106 :varlink:`darwin_part_size_P` & :math:`q^{\op{part}}_{\op{P}}` & 1E-15 & mmol P / particle & conversion factor for particle absorption and scattering spectra
a4f2018aab Oliv*0107
0108 .. csv-table:: Spectral light traits
0109 :delim: &
faa67d1773 Oliv*0110 :widths: 16,16,12,18,38
a4f2018aab Oliv*0111 :class: longtable
faa67d1773 Oliv*0112 :header: Trait, Param, Symbol, Units, Description
a4f2018aab Oliv*0113
faa67d1773 Oliv*0114 :varlink:`aphy_chl` & via :varlink:`grp_aptype` & :math:`a^{\op{chl}}_{\op{phy}j,l}` & m\ :sup:`2` (mg Chl)\ :sup:`--1` & phytoplankton Chl-specific absorption coefficient
0115 :varlink:`aphy_chl_ps` & via :varlink:`grp_aptype` & :math:`a^{\op{chl}}_{\op{ps}j,l}` & m\ :sup:`2` (mg Chl)\ :sup:`--1` & part of :varlink:`aphy_chl` that is used in photosynthesis
0116 :varlink:`aphy_mgC` & via :varlink:`grp_aptype` & :math:`a^{\op{C}}_{\op{phy}j,l}` & m\ :sup:`2` (mg C)\ :sup:`--1` & plankton carbon-specific absorption coefficient
0117 :varlink:`bphy_mgC` & via :varlink:`grp_aptype` & :math:`b^{\op{C}}_{\op{phy}j,l}` & m\ :sup:`2` (mg C)\ :sup:`--1` & carbon-specific total scattering coefficient
0118 :varlink:`bbphy_mgC` & via :varlink:`grp_aptype` & :math:`b^{\op{C}}_{\op{b}\op{phy}j,l}` & m\ :sup:`2` (mg C)\ :sup:`--1` & carbon-specific backscattering coefficient
a4f2018aab Oliv*0119
0120
0121 Format of optical spectra files
0122 '''''''''''''''''''''''''''''''
0123
0124 The spectra files have 6 header lines which will be ignored. The format of the
0125 data lines for each file is given in :numref:`tab_phys_pkg_darwin_spectra`.
0126 The plankton spectra file contains multiple sections for the different optical
0127 types. Each starts with one line with reference sizes (ESD in microns; same
0128 format, first column ignored), followed by a line for each waveband. The
faa67d1773 Oliv*0129 section used for each type is selected by :varlink:`grp_aptype`.
a4f2018aab Oliv*0130
0131 .. csv-table:: Format of data lines in optical spectra files
0132 :delim: &
0133 :widths: auto
0134 :class: longtable
0135 :header: File, Format, variables
0136 :name: tab_phys_pkg_darwin_spectra
0137
0138 :varlink:`darwin_waterAbsorbFile` & (I5,F15,F10) & :math:`\lambda_l`, :math:`a^{\op{w}}_l`, :math:`b^{\op{w}}_l`
faa67d1773 Oliv*0139 :varlink:`darwin_particleAbsorbFile` & (I4,F15,F15,F15) & :math:`\lambda_l`, :math:`a^{\op{part}}_{l}`, :math:`b^{\op{part}}_{l}`, :math:`b^{\op{part}}_{\op{b}l}`
a4f2018aab Oliv*0140 :varlink:`darwin_phytoAbsorbFile` & (I4,F10,F10,F10,F20,F10) & :math:`\lambda_l`, :math:`a^{\op{chl}}_{\op{phy}l}`, :math:`a^{\op{chl}}_{\op{ps}l}`, :math:`b^{\op{C}}_{\op{phy}l}`, :math:`b^{\op{C}}_{\op{b}\op{phy}l}`, :math:`a^{\op{C}}_{\op{phy}l}`
0141 & & first line in sec: \*, :math:`d^{\op{a}}`, \*, :math:`d^{\op{b}}`, \*, :math:`d^{\op{aC}}`
0142
faa67d1773 Oliv*0143 Particle spectra are read in units of m\ :sup:`2`/particle and converted to
0144 m\ :sup:`2`/mmol P using a fixed conversion factor,
0145
0146 .. math::
0147
0148 a^{\op{part}}_{\op{P}l} &= a^{\op{part}}_{l}/q^{\op{part}}_{\op{P}}
0149
0150 b^{\op{part}}_{\op{P}l} &= b^{\op{part}}_{l}/q^{\op{part}}_{\op{P}}
0151
0152 b^{\op{part}}_{\op{b}\op{P}l} &= b^{\op{part}}_{\op{b}l}/q^{\op{part}}_{\op{P}}
0153
a4f2018aab Oliv*0154
0155 .. _allomSpectra:
0156
0157 Allometric scaling of absorption and scattering spectra
0158 '''''''''''''''''''''''''''''''''''''''''''''''''''''''
0159
0160 If :varlink:`darwin_allomSpectra` is set to .TRUE., read-in absorption and
faa67d1773 Oliv*0161 scattering spectra for each optical type :math:`i` (grp_aptype) are
0162 scaled according to size before being assigned to a specific model plankton
0163 type :math:`j` following :cite:`dutkiewicz:2020`. Reference sizes for
0164 absorption and scattering are read in as effective spherical diameters,
0165 :math:`d^{\op{a}}_i`, :math:`d^{\op{aC}}_i`, :math:`d^{\op{b}}_i`, and
0166 converted to volumes, :math:`V^{\op{a}}_i`, :math:`V^{\op{aC}}_i`,
0167 :math:`V^{\op{b}}_i` via :math:`V=\frac{\pi}{6}d^3`.
a4f2018aab Oliv*0168
0169 Absorption
0170 ++++++++++
0171
0172 Read-in absorption spectra, :math:`a^{\op{meas}}_i`, are scaled in terms of volume,
0173
0174 .. math::
0175
faa67d1773 Oliv*0176 a^{\op{chl}}_{\op{phy}j,l} &= a^{\op{meas}}_{i l} \cdot
0177 (V_j/V^{\op{a}}_i)^{s^{\op{a}}}
a4f2018aab Oliv*0178 \;,
0179
faa67d1773 Oliv*0180 a^{\op{chl}}_{\op{ps}j,l} &= a^{\op{ps\ meas}}_{i l} \cdot
0181 (V_j/V^{\op{a}}_i)^{s^{\op{a}}}
a4f2018aab Oliv*0182 \;.
0183
0184 Carbon-specific absorption is scaled similarly but with a different reference size,
0185
0186 .. math::
0187
faa67d1773 Oliv*0188 a^{\op{C}}_{\op{phy}j,l} = a^{\op{C\,meas}}_{i l} \cdot
0189 (V_j/V^{\op{aC}}_i)^{s^{\op{a}}}
a4f2018aab Oliv*0190 \;.
0191
0192 Total scattering
0193 ++++++++++++++++
0194
0195 Total scattering coefficients are converted from carbon to cell-density specific
0196 using the relation between volume and carbon content of :cite:`montagnes:1994`,
0197
0198 .. math::
0199
0200 Q^{\op{C}} = a^{\op{C}}_{\op{cell}} V^{b^{\op{C}}_{\op{cell}}}
0201 \;.
0202
0203 The cell-density-specific coefficients are then scaled in terms of diameter and
0204 converted back to carbon specific,
0205
0206 .. math::
0207
faa67d1773 Oliv*0208 b^{\op{C}}_{\op{phy}j,l} Q^{\op{C}}_j = b^{\op{meas}}_{i l} Q^{\op{C\,b}}_i \cdot
0209 \left( d_j/d^{\op{b}}_i \right)^{s^{\op{b}}_{i l}}
a4f2018aab Oliv*0210 \;.
0211
0212 There are 2 slopes for small and large measured cell sizes:
0213
0214 .. math::
0215
faa67d1773 Oliv*0216 s^{\op{b}}_{i l} = \begin{cases}
0217 s^{\op{bl}}_l
0218 & \text{if } d^{\op{b}}_i \ge 10^{\ell^{\op{b}}_l} \\
0219 s^{\op{bs}}_l
a4f2018aab Oliv*0220 & \text{else.}
0221 \end{cases}
0222
0223 Backscattering
0224 ++++++++++++++
0225
0226 We scale the non-spectral mean backscattering ratio using the reference
0227 diameter for total scattering,
0228
0229 .. math::
0230 \tilde b_{\op{b}j} = \tilde b_{\op{b}i}^{\op{meas}} \cdot
0231 \left( d_j/d^{\op{b}}_i \right)^{s^{\op{bbb}}}
0232 \;,
0233
0234 where
0235
0236 .. math::
0237
0238 \tilde b_{\op{b}i}^{\op{meas}} =
faa67d1773 Oliv*0239 \frac{\sum_l b^{\op{meas}}_{\op{b}i l} \Delta\lambda_l}
0240 {\sum_l b^{\op{meas}}_{i l} \Delta\lambda_l}
a4f2018aab Oliv*0241
0242 and compute spectral backscattering from total scattering,
0243
0244 .. math::
0245
faa67d1773 Oliv*0246 b^{\op{C}}_{\op{b}\op{phy}j,l} = b^{\op{C}}_{\op{phy}j,l} \tilde b_{\op{b}j}
a4f2018aab Oliv*0247 \;.
0248
0249 .. csv-table:: Allometric scaling parameters
0250 :delim: &
0251 :widths: auto
0252 :class: longtable
0253 :header: Param, Symbol, Default, Units, Description
0254
faa67d1773 Oliv*0255 :varlink:`darwin_allomSpectra` & & .FALSE. & & enable/disable allometric scaling of plankton absorption and scattering spectra
0256 :varlink:`darwin_aCarCell` & :math:`a^{\op{C}}_{\op{cell}}` & 0.109E-9 & mg C/cell & coefficient coefficient for scaling plankton spectra
0257 :varlink:`darwin_bCarCell` & :math:`b^{\op{C}}_{\op{cell}}` & 0.991 & & coefficient coefficient for scaling plankton spectra
0258 :varlink:`darwin_absorpSlope` & :math:`s^{\op{a}}` & -0.075 & & slope for scaled absorption spectra
0259 :varlink:`darwin_bbbSlope` & :math:`s^{\op{bbb}}` & -1.458 & & slope for scaled backscattering ratio spectra
** Warning **
Wide character in print at /usr/local/share/lxr/source line 1030, <$git> line 261.
0260 :varlink:`darwin_scatSwitchSizeLog` & :math:`\ell^{\op{b}}_l` & 0 & log(μm) & log of size for switching slopes
0261 :varlink:`darwin_scatSlopeSmall` & :math:`s^{\op{bs}}_l` & 1.5 & & slope for small plankton
0262 :varlink:`darwin_scatSlopeLarge` & :math:`s^{\op{bl}}_l` & 1.5 & & slope for large plankton
a4f2018aab Oliv*0263
0264
0265 Photosynthetically Active Radation
0266 ''''''''''''''''''''''''''''''''''
0267
0268 Radtrans provides spectral radiances in W m\ :sup:`-2` at vertical grid cell
0269 boundaries, :math:`E_0^{\op{F}}`. These are converted to photosynthetically
0270 available radiation,
0271
0272 .. math::
0273
0274 I^{\op{F}}_l = 10^{-3} \frac{\lambda_l}{N_{\op{A}}h c}
0275 E^{\op{F}}_{0\,l}
0276
0277 where :math:`h=6.6256\cdot 10^{-34}`, :math:`c=2.998\cdot 10^8` and
0278 :math:`N_{\op{A}}=6.023\cdot 10^{23}`, and the pre-factor is for converting
0279 :math:`\lambda` from nm to m and the result from Ein to µEin. PAR at the
0280 grid-cell center is computed as a geometric mean,
0281
0282 .. math::
0283
0284 I_l(r^{\op{C}}_k) = \sqrt{
0285 I^{\op{F}}_l(r^{\op{F}}_k)
0286 I^{\op{F}}_l(r^{\op{F}}_{k+1})}
0287 \;.
0288