Skip to content
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

[PULL REQUEST] Ecophysiology module that simulates stomatal resistance, plant productivity and isoprene emission #629

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

joeylamcy
Copy link
Contributor

@joeylamcy joeylamcy commented Feb 22, 2021

Hi support team,

This PR is about incorporating the ecophysiology module into the GEOS-Chem. Details are described below. Please feel free to let me know if any additional information is required. Thank you!

Summary

Ground-level ozone (O3) is a major air pollutant that adversely affects human health and agricultural productivity. Removal of air pollutants including tropospheric O3 from the atmosphere by vegetation is controlled mostly by the process of dry deposition in the form of plant stomatal uptake, which in turn causes damage to plant tissues with ramifications for ecosystem and crop health. The openness of plant stomata is generally represented by a bulk stomatal conductance, which is often semi-empirically parameterized in many atmospheric and land surface models, and highly fitted to historical observations. A lack of mechanistic linkage to ecophysiological processes such as photosynthesis may render models insufficient to represent plant-mediated responses of atmospheric chemistry to long-term changes in CO2, climate and short-lived air pollutant concentrations. A new ecophysiology module is developed to mechanistically simulate land−atmosphere exchange of important gas species in GEOS-Chem, a chemical transport model widely used in atmospheric chemistry studies. We adopted the formulations from the Joint UK Land Environmental Simulator (JULES) to couple photosynthesis rate, bulk stomatal conductance and isoprene emission rate dynamically.

Key results

  1. Our estimated dry deposition velocity of O3 is close to SynFlux dry deposition velocity with root-mean-squared errors (RMSE) ranging from 0.1 to 0.2 cm s–1 across different plant functional types (PFTs), despite an overall positive bias in surface O3 concentration (by up to 16 ppbv).
  2. Estimated global O3 deposition flux is 864 Tg O3 yr–1 with GEOS-Chem v12.2.0, and the new module decreases this estimate by 92 Tg O3 yr–1.
  3. Estimated global gross primary product (GPP) is 119 Pg C yr–1, with an O3-induced damage of 4.2 Pg C yr–1 (3.5%). An elevated CO2 scenario (580 ppm) yields higher global GPP (+16.8%) and lower global O3 depositional sink (–3.3%).
  4. Global isoprene emission total simulated with a photosynthesis-based scheme is 317.9 Tg C yr–1, which is 31.2 Tg C yr−1 (−8.9%) less than the values calculated using the MEGAN emission inventory.

Code updates

The ecophysiology-related formulation is inside GeosCore/ecophy_mod.F90. Changes in drydep_mod.F, state_diag_mod.F90 and diagnostics_mod.F90 mainly deal with diagnostics. Updates in other files are mostly about enabling my module to work in GEOS-Chem. When the module is turned on, the dry deposition over vegetated land is generally lower and the resulting ozone concentration over land becomes higher.

Updating dc49990..488ef74
Fast-forward
 GeosCore/CMakeLists.txt                            |    1 +
 GeosCore/diagnostics_mod.F90                       |   45 +
 GeosCore/drydep_mod.F90                            | 1577 ++++++++++--------
 GeosCore/ecophy_mod.F90                            | 1748 ++++++++++++++++++++
 GeosCore/flexgrid_read_mod.F90                     |   31 +-
 GeosCore/gc_environment_mod.F90                    |   17 +
 GeosCore/hco_utilities_gc_mod.F90                  |   13 +
 GeosCore/input_mod.F90                             |   50 +
 Headers/input_opt_mod.F90                          |    9 +-
 Headers/state_chm_mod.F90                          |   42 +
 Headers/state_diag_mod.F90                         |  952 ++++++++++-
 Headers/state_met_mod.F90                          |  138 ++
 Interfaces/GCClassic/main.F90                      |    4 +-
 .../HEMCO_Config.rc.fullchem                       |   11 +
 .../HISTORY.rc.templates/HISTORY.rc.fullchem       |   65 +
 .../input.geos.templates/input.geos.fullchem       |    4 +
 16 files changed, 4038 insertions(+), 669 deletions(-)

Model structure

Currently, my module is called inside the drydep_mod.F when the bulk canopy stomatal resistance is calculated. If ecophysiology is turned on, it replaces the default parameterization of the stomatal resistance in Wesely scheme.

Clarifications on my changes in drydep_mod.F90

Most of those changes are involved to interchange the order of calculation of aerodynamic resistance RA and surface conductance RSURFC (which involves removing a DO loop) and include an IF-statement to call the ecophysiology module.

Data file update

To enable the parameterizations in the ecophysiology module, I included a map of some soil parameters. It is read by HEMCO.

References:

  1. Lam, J. C. Y. and Tai, A. P. K., Development of an ecophysiology module in the GEOS-Chem chemical transport model to represent biosphere−atmosphere fluxes, In prep, 2021
  2. Clark, D., Mercado, L., Sitch, S., Jones, C., Gedney, N., Best, M., Pryor, M., Rooney, G., Essery, R., Blyth, E., Boucher, O., Harding, R., Huntingford, C. and Cox, P., The Joint UK Land Environment Simulator (JULES), model description - Part 2: Carbon fluxes and vegetation dynamics, Geosci. Model Dev., 4, 701, doi:10.5194/gmd-4-701-2011, 2011.
  3. Best, M., Pryor, M., Clark, D., Rooney, G., Essery, R., Ménard, C., Edwards, J., Hendry, M., Porson, A., Gedney, N., Mercado, L., Sitch, S., Blyth, E., Boucher, O., Cox, P., Grimmond, C. and Harding, R., The Joint UK Land Environment Simulator (JULES), model description - Part 1: Energy and water fluxes, Geosci. Model Dev., 4, 677, doi:10.5194/gmd-4-677-2011, 2011.
  4. Cox, P. M., Huntingford, C. and Harding, R. J., A canopy conductance and photosynthesis model for use in a GCM land surface scheme, J. Hydrol., 212, 79–94, doi:10.1016/S0022-1694(98)00203-0, 1998.
  5. Raoult, N. M., Jupp, T. E., Cox, P. M. and Luke, C. M., Land-surface parameter optimisation using data assimilation techniques: the adJULES system V1.0, Geosci. Model Dev., 9, 2833, doi:10.5194/gmd-9-2833-2016, 2016.

joeylamcy and others added 9 commits February 1, 2021 21:58
…ty diagnostics

Fixes for using State_Grid object

Fix for removal of NC_DIAG preprocessor flag

Fixes for replacing am_I_Root with Input_Opt in state_met_mod.F90 and state_chm_mod.F90
Add PFT-specific isoprene emission output

Formulae changed: base IEFs are scaled to canopy level by multiplying canopy GPP and dividing by leaf-level GPP

Zero EcophyISOP_EMIS at the start of emission timestep.

Set minimum of ISOP_EMIS to 0.

Implement online isoprene emission flux in vdiff_mod instead of mixing_mod; Define a new diagnostic to extract HEMCO isoprene emission values

Fixes including removal of am_I_Root and excessive codes etc.

Remove underscore in ecophysiology variable names in StateDiag
…e/ecophys_module in the new science codebase.
Rename "Ecophys_const" collection to "Ecophy_const" collection
@joeylamcy
Copy link
Contributor Author

New data files can be found and downloaded from here: https://gocuhk-my.sharepoint.com/:f:/g/personal/amostai_cuhk_edu_hk/EklgfmIdw8VJrX5p2Avs5IEBVKqpeqOsBicLUP2UILxyKA?e=0c9gFn

The HadGEM2ES_Soil_Ancil_05x05.nc is a file containing soil parameters (2D non-time-varying field).

The Olson_2001_Drydep_Inputs_edited_20191104.nc is modified from the original drydep input file. A new mapping index IPFT (1-dimensional array) is added to map the Olson land types into 5 plant functional types (PFTs). The values are from 0 to 5:

0 | not vegetated
1 | Broadleaf tree
2 | Needleleaf tree
3 | C3 grass
4 | C4 grass 
5 | Shrub

@joeylamcy joeylamcy marked this pull request as draft February 22, 2021 10:17
@joeylamcy joeylamcy marked this pull request as ready for review February 26, 2021 05:05
@yantosca yantosca added the never stale Never label this issue as stale label Mar 2, 2021
@msulprizio msulprizio added category: Feature Request New feature or request and removed never stale Never label this issue as stale labels Mar 3, 2021
@yantosca yantosca added this to the 13.4.0 milestone Oct 1, 2021
@yantosca yantosca modified the milestones: 13.4.0, 14.0.0 Jan 3, 2022
@msulprizio msulprizio removed this from the 14.0.0 milestone May 26, 2022
@msulprizio
Copy link
Contributor

We will not have time to include this in 14.0.0, so I have removed that milestone. It will be added in a later version that will be determined post-IGC10.

@yantosca yantosca added the deferred Issues/PRs that we cannot work on right away label May 9, 2023
Copy link

stale bot commented Apr 22, 2024

This issue has been automatically marked as stale because it has not had recent activity. If there are no updates within 7 days it will be closed. You can add the "never stale" tag to prevent the Stale bot from closing this issue.

@stale stale bot added the stale No recent activity on this issue label Apr 22, 2024
@msulprizio msulprizio added never stale Never label this issue as stale and removed stale No recent activity on this issue labels Apr 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Feature Request New feature or request deferred Issues/PRs that we cannot work on right away never stale Never label this issue as stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants