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

Deposition for new species (wet and dry) #2706

Open
IshirDutta opened this issue Feb 2, 2025 · 6 comments
Open

Deposition for new species (wet and dry) #2706

IshirDutta opened this issue Feb 2, 2025 · 6 comments
Assignees
Labels
category: Debug Help Request for assistance debugging GEOS-Chem topic: Chemical Mechanisms Related to KPP and/or GEOS-Chem chemistry mechanisms topic: Deposition Related to dry deposition or wet depostion proceses

Comments

@IshirDutta
Copy link

Your name

Ishir Dutta

Your affiliation

MIT

What happened? What did you expect to happen?

I added a couple of new species to the model in order to better account for reactive nitrogen mass conservation. However, when I run the model, they display a banded WetLossConv output, and are not included in the dry deposition diagnostic.

I would expect the dry deposition to looks something like this (but there is no output for my added species)
Image

And I would expect the wet deposition to look something like this (IONITA wet loss at 810 hPa in Apr 2016):
Image

But the output looks like this!
Image

What are the steps to reproduce the bug?

Here's one example of what I did for ALKONITA:

  1. Added ALKONITA to custom.eqn in KPP (modeled after IONITA formation and hydrolysis):
    ALKONITA = IGNORE; {Aerosol-phase organic nitrate from R4N2 uptake; >=C4 alkylnitrates}

R4N2 = ALKONITA : VOCuptk1stOrd( SR_MW(ind_R4N2), 5.0E-3_dp, State_Het );
ALKONITA = INDIOL + HNO3 : 2.78d-04;

  1. Add ALKONITA to species_database (given the same properties as IONITA):
ALKONITA:
  DD_DvzAerSnow: 0.03
  DD_F0: 0.0
  DD_Hstar: 0.0
  FullName: Aer-phase ALK4 organic nitrate from R4N2 uptake
  Is_Advected: true
  Is_Aerosol: true
  Is_DryDep: true
  Is_WetDep: true
  MW_g: 119.10
  WD_AerScavEff: 0.8
  WD_KcScaleFac: [1.0, 0.5, 1.0]
  WD_RainoutEff: [0.8, 0.0, 0.8]
  WD_RainoutEff_Luo: [0.4, 0.0, 0.8]

I also had to increase a the default KPP EQN_LENGTH to 350 to accommodate all the (mostly non-advected) tracers I've added to my simulation, but I doubt that this is the source of the issue.

Please attach any relevant configuration and log files.

I'm attaching what I think are the most relevant files, but let me know if I'm missing anything. Thanks!

custom_eqn.txt
geoschem_config_yml.txt
HISTORY_rc.txt
species_database_yml.txt

What GEOS-Chem version were you using?

14.3.0

What environment were you running GEOS-Chem on?

Local cluster

What compiler and version were you using?

gcc 6.3.1

Will you be addressing this bug yourself?

Yes, but I will need some help

In what configuration were you running GEOS-Chem?

GCClassic

What simulation were you running?

Full chemistry

As what resolution were you running GEOS-Chem?

2x2.5

What meterology fields did you use?

MERRA-2

Additional information

No response

@IshirDutta IshirDutta added the category: Bug Something isn't working label Feb 2, 2025
@yantosca yantosca added topic: Chemical Mechanisms Related to KPP and/or GEOS-Chem chemistry mechanisms topic: Deposition Related to dry deposition or wet depostion proceses labels Feb 6, 2025
@yantosca
Copy link
Contributor

yantosca commented Feb 6, 2025

Thanks for writing @IshirDutta. I noticed you are using a GNU compiler that is pretty old. We would recommend using version 10 or later if possible as we have sometimes seen some weird behavior with the older compilers.

Have you looked at the ALKONITA concentration field (in SpeciesConc)? I wonder if the convective loss plot is a side-effect of weird concentration values.

It could also be possible that you have an out-of-bounds or other error happening. I would recommend trying a short simulation (1 hour) with -DCMAKE_RELEASE_TYPE=Debug just to rule out this possibility.

@yantosca yantosca added category: Debug Help Request for assistance debugging GEOS-Chem and removed category: Bug Something isn't working labels Feb 6, 2025
@IshirDutta
Copy link
Author

Both great questions! I figured you'd note that the compiler was ancient as I was typing out the issue, so I'm already working on upgrading it! I'll run a short simulation too and report back.

I did look at the SpeciesConc fields and they appear to be pretty normal (ALKONITA and IONITA for reference attached below):

Image

Image

@IshirDutta
Copy link
Author

IshirDutta commented Feb 6, 2025

Here's the output of the 1-hour simulation @yantosca . I scanned through the log file but didn't see anything particularly out of the ordinary. I did notice that the number of dry dep species cuts off at 160. Is this a hard coded limit somewhere? That would at least explain half the problem!

log-336268-out.txt

@yantosca
Copy link
Contributor

yantosca commented Feb 7, 2025

@IshirDutta: I believe there shouldn't be a hard-coded limit on drydep species. But I believe the model computes nDryDep by checking the defined species that have Is_DryDep = true in the species_database.yml file at the start of the run.

In the 1-hour log file I noticed this:

ModelId         :      421
Name            : ALKONITA
FullName        : Aer-phase ALK4 organic nitrate from R4N2 uptake
Formula         : UNKNOWN
MW_g            :   119.10
Gas or aerosol  : AEROSOL
Is_Kpp          : T
KppSpcId        :      216
Is_ActiveChem   : T
KppVarId        :      216
Is_WetDep       : T
WetDepID        :      147
WD_AerScavEff   :  8.000000E-01
WD_KcScaleFac   :     1.00     0.50     1.00
WD_RainoutEff   :     0.80     0.00     0.80
BackgroundVV    :  1.000000E-20

It doesn't say that ALKONITA is a drydep species although it is listed in the species_database.yml:

ALKONITA:
  DD_DvzAerSnow: 0.03
  DD_F0: 0.0
  DD_Hstar: 0.0
  FullName: Aer-phase ALK4 organic nitrate from R4N2 uptake
  Is_Advected: true
  Is_Aerosol: true
  Is_DryDep: true
  Is_WetDep: true
  MW_g: 119.10
  WD_AerScavEff: 0.8
  WD_KcScaleFac: [1.0, 0.5, 1.0]
  WD_RainoutEff: [0.8, 0.0, 0.8]
  WD_RainoutEff_Luo: [0.4, 0.0, 0.8]

but ALKONITA also doesn't seem to have a drydep index given to it:

===============================================================================
SPECIES NAMES AND INDICES

Name               ModelId  DryDepId  WetDepId  PhotolId HygGrthId  KppSpcId
-------------------------------------------------------------------------------

ALKONITA               421         -       147         -         -       216

I think this is because ALKONITA hasn't been added to the list of advected species in geoschem_config.yml. Only the advected species can be dry or wet deposited.

@yantosca yantosca self-assigned this Feb 7, 2025
@IshirDutta
Copy link
Author

IshirDutta commented Feb 7, 2025

@yantosca adding ALKONITA to the advected species list in geoschem_config.yml fixed the missing dry dep diagnostic issue!
Image

We're still looking at some banding for the wet depositon (convective) after updating gcc to 11.3.0 (although mercifully a much smaller magnitude, but this is just from a 1-hour run)
Image

WetLossLS has been fine this whole time, though...
Image

I would expect WetLossConv to be very close to zero, so I've submitted a 1 month run to see if it's still blowing up over time.

@yantosca
Copy link
Contributor

yantosca commented Feb 7, 2025

Thanks @IshirDutta. Feel free to close out this issue once your 1-month run checks out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Debug Help Request for assistance debugging GEOS-Chem topic: Chemical Mechanisms Related to KPP and/or GEOS-Chem chemistry mechanisms topic: Deposition Related to dry deposition or wet depostion proceses
Projects
None yet
Development

No branches or pull requests

2 participants