-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Deposition/Fluxes] Adding Dry Deposition Parameterization Using ACCESS #60
Comments
@bbakernoaa Also need to bring in aerosol distribution, probably first. Beiming will work on this using a Big Leaf layer first, and gleam off of Katul's work: Input variables and calculated variables for big-leaf: Wesely Input Variables (Big Leaf) Zhang and Emerson Input Variables (Big Leaf): Beiming's standalone aerosol dry deposition codes: https://github.com/btang1/UFS_dry_deposition |
updated successful off-line multi-layer model. GitHub link: https://github.com/btang1/DryDep_MultiLayer_code/blob/main/DryDep.f90 |
@btang1 Great progress, and discussion today! As discussed, and as you showed, you are close to getting the stand alone dry dep modules into canopy-app to compile, but need to firm up the coding standards required currently in canopy-app DEBUG mode. Next, we need to continue to work on getting other multi-layer calculations in canopy-app needed for dry deposition, which include: Canopy Air Temperature: tk (Example ACCESS IntegrateTempAir) However, caveat is that you need the net photosynthesis assimilation rate calculation to get "anet" for gs_medlyn. It seems you are using the test CANCACC gs_sun and gs_shade as inputs to your gs_medlyn calculation, but these values need to be dynamically calculated in canopy-app. While typically many of these calculations are done by using a Leaf Energy Balance (LEB) equation, in canopy-app, we have already approximated the leaf temperature and PPFD through the canopy using parameterizations, and will not need a LEB initially to get these. So, we should pull out of ACCESS/CANACC physics codes just what we need to calculate tk, qh, pmb, gs_sun, gs_shade, and anet, and use the input GFS surface met/land variables as the upper boundaries to parameterize as similarly in other canopy-app functions. We may need to read more input GFS variables from the input files in canopy-app, and you can see the current list we input in canopy-app README, Table 2. This will be easy as all surface variables are available from the GFS inputs. It would be great if you could help with this to get the dry dep to work in canopy-app, and we can discuss further where to add these new functions/modules (i.e., tk, qh, pmb, gs_sun, gs_shade, and anet) in canopy-app. |
Thanks Patrick!
On Aug 21, 2023, at 3:50 PM, Patrick Campbell ***@***.***> wrote:
@btang1<https://github.com/btang1> Great progress, and discussion today! As discussed, and as you showed, you are close to getting the stand alone dry dep modules into canopy-app to compile, but need to firm up the coding standards required currently in canopy-app DEBUG mode.
Next, we need to continue to work on getting other multi-layer calculations in canopy-app needed for dry deposition, which include:
Canopy Air Temperature: tk (Example ACCESS IntegrateTempAir<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L205>)
Canopy Water Vapor: qh (Example ACCESS IntegrateWaterVapor<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L137>)
Canopy Air Pressure: pmb (This can be based on surface pressure input and barometric formula)
Canopy Sunlit Stomatal Conductance: gs_sun (Example ACCESS gs_medlyn<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
Canopy Shaded Stomatal Conductance: gs_shade (Example ACCESS gs_medlyn<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
However, caveat is that you need the net photosynthesis assimilation rate calculation<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L709> to get anet for gs_medlyn. It seems you are using the test CANCACC gs_sun and gs_shade as inputs <https://github.com/btang1/DryDep_MultiLayer_code/blob/main/DryDep.f90#L63> to your gs_medlyn calculation, but these values need to be dynamically calculated in canopy-app.
While typically many of these calculations are done by using a Leaf Energy Balance (LEB) equation, in canopy-app, we have already approximated the leaf temperature and PPFD through the canopy using parameterizations, and will not need a LEB initially to get these.
So, we should pull out of ACCESS/CANACC physics codes just what we need to calculate tk, qh, pmb, gs_sun, gs_shade, and anet, and use the input GFS surface met/land variables as the upper boundaries to parameterize as similarly in other canopy-app functions. We may need to read more input GFS variables from the input files in canopy-app, and you can see the current list we input in canopy-app README, Table 2<https://github.com/noaa-oar-arl/canopy-app#table-2-canopy-app-required-input-variables>. This will be easy as all surface variables are available from the GFS inputs.
It would be great if you could help with this to get the dry dep to work in canopy-app, and we can discuss further where to add these new functions/modules (i.e., tk, qh, pmb, gs_sun, and gs_shade) in canopy-app.
—
Reply to this email directly, view it on GitHub<#60 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AMGOO65GMO5N25XBR7UYAWDXWO3ZDANCNFSM6AAAAAAXU7PL4M>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Hi Patrick,
Good news. After Zach teach me to replace dp to rk, and i4 to ik.
Now I have compile canopy-app with my drydep code successfully.
Best wishes,
Beiming
On Aug 21, 2023, at 3:50 PM, Patrick Campbell ***@***.***> wrote:
@btang1<https://github.com/btang1> Great progress, and discussion today! As discussed, and as you showed, you are close to getting the stand alone dry dep modules into canopy-app to compile, but need to firm up the coding standards required currently in canopy-app DEBUG mode.
Next, we need to continue to work on getting other multi-layer calculations in canopy-app needed for dry deposition, which include:
Canopy Air Temperature: tk (Example ACCESS IntegrateTempAir<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L205>)
Canopy Water Vapor: qh (Example ACCESS IntegrateWaterVapor<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L137>)
Canopy Air Pressure: pmb (This can be based on surface pressure input and barometric formula)
Canopy Sunlit Stomatal Conductance: gs_sun (Example ACCESS gs_medlyn<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
Canopy Shaded Stomatal Conductance: gs_shade (Example ACCESS gs_medlyn<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
However, caveat is that you need the net photosynthesis assimilation rate calculation<https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L709> to get anet for gs_medlyn. It seems you are using the test CANCACC gs_sun and gs_shade as inputs <https://github.com/btang1/DryDep_MultiLayer_code/blob/main/DryDep.f90#L63> to your gs_medlyn calculation, but these values need to be dynamically calculated in canopy-app.
While typically many of these calculations are done by using a Leaf Energy Balance (LEB) equation, in canopy-app, we have already approximated the leaf temperature and PPFD through the canopy using parameterizations, and will not need a LEB initially to get these.
So, we should pull out of ACCESS/CANACC physics codes just what we need to calculate tk, qh, pmb, gs_sun, gs_shade, and anet, and use the input GFS surface met/land variables as the upper boundaries to parameterize as similarly in other canopy-app functions. We may need to read more input GFS variables from the input files in canopy-app, and you can see the current list we input in canopy-app README, Table 2<https://github.com/noaa-oar-arl/canopy-app#table-2-canopy-app-required-input-variables>. This will be easy as all surface variables are available from the GFS inputs.
It would be great if you could help with this to get the dry dep to work in canopy-app, and we can discuss further where to add these new functions/modules (i.e., tk, qh, pmb, gs_sun, and gs_shade) in canopy-app.
—
Reply to this email directly, view it on GitHub<#60 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AMGOO65GMO5N25XBR7UYAWDXWO3ZDANCNFSM6AAAAAAXU7PL4M>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Great news! Let's move forward integrating and getting it to work in
canopy-app with my suggestions above. Thank you
…On Thu, Aug 24, 2023, 1:08 AM Beiming Tang ***@***.***> wrote:
Hi Patrick,
Good news. After Zach teach me to replace dp to rk, and i4 to ik.
Now I have compile canopy-app with my drydep code successfully.
Best wishes,
Beiming
On Aug 21, 2023, at 3:50 PM, Patrick Campbell ***@***.***> wrote:
@btang1<https://github.com/btang1> Great progress, and discussion today!
As discussed, and as you showed, you are close to getting the stand alone
dry dep modules into canopy-app to compile, but need to firm up the coding
standards required currently in canopy-app DEBUG mode.
Next, we need to continue to work on getting other multi-layer
calculations in canopy-app needed for dry deposition, which include:
Canopy Air Temperature: tk (Example ACCESS IntegrateTempAir<
https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L205>)
Canopy Water Vapor: qh (Example ACCESS IntegrateWaterVapor<
https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L137>)
Canopy Air Pressure: pmb (This can be based on surface pressure input and
barometric formula)
Canopy Sunlit Stomatal Conductance: gs_sun (Example ACCESS gs_medlyn<
https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
Canopy Shaded Stomatal Conductance: gs_shade (Example ACCESS gs_medlyn<
https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L502>)
However, caveat is that you need the net photosynthesis assimilation rate
calculation<
https://github.com/rdsaylor-noaa/ACCESS_FULL/blob/master/src/CanopyPhysics.f90#L709>
to get anet for gs_medlyn. It seems you are using the test CANCACC gs_sun
and gs_shade as inputs <
https://github.com/btang1/DryDep_MultiLayer_code/blob/main/DryDep.f90#L63>
to your gs_medlyn calculation, but these values need to be dynamically
calculated in canopy-app.
While typically many of these calculations are done by using a Leaf Energy
Balance (LEB) equation, in canopy-app, we have already approximated the
leaf temperature and PPFD through the canopy using parameterizations, and
will not need a LEB initially to get these.
So, we should pull out of ACCESS/CANACC physics codes just what we need to
calculate tk, qh, pmb, gs_sun, gs_shade, and anet, and use the input GFS
surface met/land variables as the upper boundaries to parameterize as
similarly in other canopy-app functions. We may need to read more input GFS
variables from the input files in canopy-app, and you can see the current
list we input in canopy-app README, Table 2<
https://github.com/noaa-oar-arl/canopy-app#table-2-canopy-app-required-input-variables>.
This will be easy as all surface variables are available from the GFS
inputs.
It would be great if you could help with this to get the dry dep to work
in canopy-app, and we can discuss further where to add these new
functions/modules (i.e., tk, qh, pmb, gs_sun, and gs_shade) in canopy-app.
—
Reply to this email directly, view it on GitHub<
#60 (comment)>,
or unsubscribe<
https://github.com/notifications/unsubscribe-auth/AMGOO65GMO5N25XBR7UYAWDXWO3ZDANCNFSM6AAAAAAXU7PL4M>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
—
Reply to this email directly, view it on GitHub
<#60 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGLFYNWKUIUJTZ5B7EYMHL3XW3OVBANCNFSM6AAAAAAXU7PL4M>
.
You are receiving this because you were assigned.Message ID:
***@***.***>
|
@zmoon Following discussions at the AMS Fire and Forest conference with Michael Vermeuel (Post-Doc with Dylan Millet at University of Minnesota) on his work on multi-layer canopy model with dry deposition in MLC-Chem and FluCS 2021 dataset (and comparison to GEOS-Chem big-leaf resistance method), we have good ideas to move forward with initial version of an explicit dry-deposition module in canopy-app.
This can be linked with say our BVOC emissions model in canopy-app for BIDI-sensitive species as well. To accomplish this tasks, however, we may need to link surrogate/ML models as in issue #59 to handle driving a stand-alone canopy-app interface with chemical concentrations, compensation points (for BIDI-VOC) etc., and we can use more generalized dry deposition models that depend on chemical properties and diffusivities as inputs.
The question is what is the best method to get stomatal (and included species-dependent mesophyll) resistances:
(1) the default multiplicative method in the Wesely scheme (W89) and Zhang et al. (2003) scheme (Z03), (2) the traditional photosynthesis-based Farquhar–Ball–Berry (FBB) stomatal algorithm, and/or (3) the Medlyn stomatal algorithm (MED) based on optimization theory. We could add options to use each method in the canopy-app NL.
We could just add a deposition velocity functions, which employ option to either input (e.g., bulk RS from the LSM) or calculate the stomatal resistances at leaf level and use data tables that parameterize the mesophyll resistance as a function of solubility following Wesely (1989) or another method above.
Or, maybe if we need to calculate the RS take the approach used in MLC-Chem or even better use the MLC codes for different stomatal resistance options from ACCESS dry deposition as a start. I think using ACCESS is the best initial path forward for adding dry deposition velocity in the canopy.
We could take some insight Clifton et al. 2022 type approach in LES.
Also, after we get something more general, maybe add new approaches such as ecophysiology models.
The text was updated successfully, but these errors were encountered: