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

Changes in phytoplankton dynamics from v3.1.0a1 to v3.1.1? #34

Open
robertladwig opened this issue Apr 30, 2021 · 4 comments
Open

Changes in phytoplankton dynamics from v3.1.0a1 to v3.1.1? #34

robertladwig opened this issue Apr 30, 2021 · 4 comments

Comments

@robertladwig
Copy link

I updated my lake models of Lake Mendota to the most recent GLM-AED GitHub versions, but I am getting now different results for water quality variables while running it on the exact same model setup.

I did compile all models using gfortran and Homebrew under macOS Catalna/Big Sur. For the recent versions, GLM was coupled with libaed-water.git instead of libaed2.git.

I extracted all results directly from the NCDF and averaged them over the first 10 m from the water surface (using the z variable and finding the closest value to 10 m).

I expected results to differ a bit (like for temperature), but especially cyanobacteria biomass is completely off between the versions. Were there some significant source code changes for aed_phytoplankton.F90, or changes in parameterizations?

cyanobiomass_differences
oxygen_differences
wtr_differences

@matthipsey
Copy link
Contributor

Hi Robert
The changes listed are here:

https://github.com/AquaticEcoDynamics/libaed2/commits/master/src/aed2_phytoplankton.F90

There is no change to the equations. Perhaps an issue may be vvel, which was changed to m/day to be consistent across the modules. But that wouldn't explain why it came back in 3.2

We always test against our Lake Kinneret reference case and never see changes of this magnitude. When I see this it makes me worry that something is not being read in properly. Also, are zoop configured?

As there are many feedbacks, (eg biomass impact clarity and mixing), I think the only way to get to the bottom of this is to cut it back step by step with three versions and see where the main divergence creeps in. ie GLM only. Then GLM+OXY. Then GLM+OXY+PHY ...

@robertladwig
Copy link
Author

Thanks! For these tests now, I did disable zooplankton.

(1) First, running only GLM w/o AED:

  • gives the same WTR for 3.1.1 and 3.1.0a1, but slight differences during peak stratification to 3.2.0a4
    glm_differences_wtr

(2) Now running GLM + aed_oxygen:

  • WTR differences are the same as in (1), DO is slightly different but behaves similarly
    glmDO_differences_DO

(3) GLM + aed_oxygen + aed_carbon + aed_silica' + aed_nitrogen + aed_phosphorus:

  • WTR differences the same as in (1) and (2), oxygen dynamics are more similar across versions than in (2)
    glmDOCNPOM_differences_do

(4) GLM + aed_oxygen + aed_carbon + aed_silica' + aed_nitrogen + aed_phosphorus + aed_organic_matter:

  • Different DO dynamics than in (3), now also different WTR dynamics across versions
    glmDOCNPOM_differences_wtr
    glmDOCNPOM_differences_do

(5) GLM + aed_oxygen + aed_carbon + aed_silica' + aed_nitrogen + aed_phosphorus + aed_organic_matter + aed_tracer + aed_noncohesive + aed_phytoplankton (2 functional groups):

  • WTR dynamics differ by multiple degree C across versions
  • DO dynamics differ a lot (due to active phytoplankton groups now)
  • phytoplankton biomass for cyanobacteria differ a lot across versions; diatom dynamics are less different
    glmDOCNPOMPhyto_differences_wtr
    glmDOCNPOMPhyto_differences_do
    glmDOCNPOMPhyto_differences_cyano
    glmDOCNPOMPhyto_differences_diatom

@matthipsey
Copy link
Contributor

Hi Robert
There is a lot going on here, and keen to try to pin this down. There is no change to the mixing or heating that I can recall or see in the commits between the 3 versions, so lets look at the GLM only issue. I think the comparison needs to be done first just at a specific reference depth, rather than integrating over layers. Also when you integrate to 10m, do you truncate the layer that sits at the 10m mark in the averaging?
I'm wondering what the temperature of the surface (top and say 5m) is like, and the number of layers (NS) of the three sims?
Cheers
Matt

@robertladwig
Copy link
Author

Thanks for the feedback, Matt. I ran GLM-only again and the differences in water temp. over all versions are very, very small. 3.1.1 and 3.1.0a1 have the same amounts of layers, where's 3.2.0a4 has slightly more layers over that summer period. Regarding the 10 m averaging before, I took the average from the surface to the depth which was closest to 10 m -- so it could have included 10 m or not (close to the metalimnion, which I see now is a problem).

onlyGLM_wtr5m
onlyGLM_wtr0m
onlyGLM_ns_differences

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants