Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

Integrating Fang’s Ozone Damage Modifications into CLM5 Offline (CTSM PR #2302)

pengzhou

peng zhou
New Member
Dear CESM Scientists,
I am currently simulating ozone damage to vegetation in CLM5 offline mode. In Pull Request #2302 (Add new scheme Li2024 of ozone plant damage by lifang0209 · Pull Request #2302 · ESCOMP/CTSM), Fang et al. contributed a series of code changes—primarily within CTSM—to enable ozone damage parameterizations. After merging these modifications into my local CLM5 build and running the model, I unfortunately still do not see any ozone damage effects. However, I have successfully run the Lombardozzi ozone damage scheme, so I am confident that the issue lies with my modified files rather than a broader model error.
The five files I have modified and uploaded are:
  • CanopyFluxesMod.F90 (Participation in Fang's modifications)
  • OzoneBaseMod.F90 (I modified it myself, maybe too many mistakes)
  • OzoneMod.F90 (I modified it myself, maybe too many mistakes)
  • OzoneOffMod.F90 (I modified it myself, maybe too many mistakes)
  • PhotosynthesisMod.F90 (Participation in Fang's modifications)
  • atm2lndType.F90 (Additions compared to the source file: (real(r8), pointer :: forc_o3_col (:) => null() ! downscaled ozone (mol/mol), allocate(this%forc_o3_grc (begg:endg)) ; this%forc_o3_grc (:) = ival, allocate(this%forc_o3_col (begc:endc)) ; this%forc_o3_col (:) = ival, allocate(this%forc_o3_col (begc:endc)) ; this%forc_o3_col (:) = ival))

I would be extremely grateful if you could kindly review these files and, if necessary, provide corrected versions. Additionally, could you please advise whether there are any other files or sections that I need to modify to fully enable Fang’s ozone damage implementation?
Thank you very much for your time, advice, and guidance.
Best regards,
Peng Zhou
 

erik

Erik Kluzek
CSEG and Liaisons
Staff member
Just to be clear, you are starting from the PR #2302, and you've added changes on top of it? I think in order to turn on the changes in the PR, you have to turn some namelist items on. I'd have to look at the code a bit to understand what that is though.

And in general, I recommend that people work from success. So you start with the base code and turn on the Lomberdozzi scheme (which it sounds like you've done). Then you work with Fang's modification and turn it on and run some successful cases there. Lastly, you bring in your changes in, but in smaller steps. So that you can see how they change things step by step and make sure you see them working the way you want them to. It's too difficult to have a large set of changes and figure out what's working and what's not. It's important to break it up into smaller segments. This is the approach that I would take in trying to solve a problem like this.

We don't have the support level to provide individual feedback on people's particular projects. We do want to know when a supported version of the model breaks though, so we can work on a fix for it. But, code changes that someone has developed isn't an area that we can support.
 
Vote Upvote 0 Downvote
Top