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

Planeflight output for FURA has inconsistent units #2322

Open
joepalmo opened this issue Jun 12, 2024 · 6 comments
Open

Planeflight output for FURA has inconsistent units #2322

joepalmo opened this issue Jun 12, 2024 · 6 comments
Assignees
Labels
category: Bug Something isn't working help needed: Request Input From Community We need GC community to provide a fix/update topic: Diagnostics Related to output diagnostic data

Comments

@joepalmo
Copy link

Your name

Joe Palmo

Your affiliation

MIT

What happened? What did you expect to happen?

The planeflight diagnostic output I am getting for furan is confusing. I am seeing significantly different units when I specify the compound name (FURA) vs the compound id (TRA_070) in my diagnostic file. Neither of the numbers that I'm getting seem correct. For the TRA_070 output, documentation says it should be in units of v/v dry air, but the output is about 3 orders of magnitude too low (ppt as opposed to ppb) when I compare to airborne observations of smoke plumes measured in FIREX and WE-CAN -- I wouldn't expect bias on this scale especially considering some previously published results from Tess Carter which I will attach below. I've discussed this with Lixu Jin (U Montana) who brought it up with Bob at the meeting this week, and he can weigh in further below. Thanks!
download-16
download-17
download-14

What are the steps to reproduce the bug?

Run a fullchem simulation with planeflight diagnostic turned on. Log concentrations using both compound name (FURA) and compound id (TRA_070).

Please attach any relevant configuration and log files.

plane.log.20190827.txt
Planeflight.dat.20190827.txt

What GEOS-Chem version were you using?

14.3.1

What environment were you running GEOS-Chem on?

Local cluster

What compiler and version were you using?

ifort

Will you be addressing this bug yourself?

No

In what configuration were you running GEOS-Chem?

GCClassic

What simulation were you running?

Full chemistry

As what resolution were you running GEOS-Chem?

both 2x2.5 and nested (0.5x0.6125) over USA

What meterology fields did you use?

MERRA-2

Additional information

https://acp.copernicus.org/articles/22/12093/2022/

Screen Shot 2024-06-12 at 11 08 58 AM
@joepalmo joepalmo added the category: Bug Something isn't working label Jun 12, 2024
@joepalmo
Copy link
Author

I should also mention that this issue looks very similar to a couple previous ones that were marked as solved, for example: #796

@jinlx
Copy link

jinlx commented Jun 12, 2024

Thanks @joepalmo for opening it! When comparing to fire-targeting WE-CAN and FIREX-AQ data, we did see a significant underestimation of furanoids (using FURA as the header in ND40 input) in the vertical profile using the out-of-box model (see third column of first figure).
MicrosoftTeams-image

However, other species look good and modelling furanoids in ground measurement is also promissing at the Misoula ground measurements (using SpeciesConc collection). The red line represents model and black is observation in the figure below.
MicrosoftTeams-image (2)

This is why Joe and I guessed that there might be some issues in the ND40 source code (likely unit conversion). Since furan is recently implemented and ND40 has not been checked for a long time, Joe and I are wondering if it is possible that the ND40 could misimplement the newly added species. ~Lixu

@yantosca
Copy link
Contributor

Thanks @jinlx and @joepalmo. I will try to reproduce the issue using your Planeflight file, as soon as I can.

@yantosca yantosca self-assigned this Jun 14, 2024
@yantosca yantosca added the topic: Diagnostics Related to output diagnostic data label Jun 14, 2024
@yantosca
Copy link
Contributor

@joepalmo: Thanks for your patience, I am just getting back to work this week after IGC11.

Have you tried printing out State_Chm%Spc_Units in this block of code?

!---------------------------------------------------------------
! GEOS-CHEM advected species [v/v dry]
!---------------------------------------------------------------
CASE( 100000:199999 )
! Remove offset from PVAR
N = PVAR(V) - 100000
! Convert [kg/kg dry] -> [v/v dry]
MW_g = State_Chm%SpcData(N)%Info%MW_g
VARI(V) = Spc(N)%Conc(I,J,L) * ( AIRMW / MW_g )
IF ( VARI(V) < TINY ) VARI(V) = 0.0_fp

That might shed some light on the issue.

In 14.4.0 the species unit conversion has now been updated. You might try a short simulation with 14.4.0 to see if the problem still persists.

@yantosca
Copy link
Contributor

yantosca commented Jul 10, 2024

Hi again @joepalmo and @jinlx. Thanks for your patience, we've been busy after IGC11 here.

I took a look at the unit conversions in both GeosCore/planeflight_mod.F90 and GeosUtil/unitconv_mod.F90. The unit conversions are correct as written. I also compared the output from the Planeflight diagnostic to the SpeciesConc collection in the History diagnostics. The output below. shows that the unit conversions give the same results.

NOTE: I used an out-of-the-box 4x5 fullchem/benchmark simulation (where FURA is species 77 in the list of species and is TRA_077 in the Planeflight.dat file). I used your Planeflight.dat file and changed the dates to 20190701 (the default starting date). I also converted the plane.log output to csv format for easier reading into Python (via pandas.read_csv).

Config and log files:

Output from Python script (fura.py.txt)

----------------------------------------------------------------------
time, lev, lat, lon indices: 1, 15, 32, 18
Planefight TRA_077  :  5.895000e-16 v/v dry
SpeciesConcVV_FURA  :  5.895450e-16 v/v dry
Planeflight FURA    :  11200.000000, molec/cm3
SpeciesConcMND_FURA :  11200.121094 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 1, 19, 32, 18
Planefight TRA_077  :  3.587000e-17 v/v dry
SpeciesConcVV_FURA  :  3.586765e-17 v/v dry
Planeflight FURA    :    601.800000, molec/cm3
SpeciesConcMND_FURA :    601.823730 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 1, 21, 32, 18
Planefight TRA_077  :  6.410000e-18 v/v dry
SpeciesConcVV_FURA  :  6.410483e-18 v/v dry
Planeflight FURA    :     97.450000, molec/cm3
SpeciesConcMND_FURA :     97.445015 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 1, 24, 32, 18
Planefight TRA_077  :  2.180000e-17 v/v dry
SpeciesConcVV_FURA  :  2.179574e-17 v/v dry
Planeflight FURA    :    278.600000, molec/cm3
SpeciesConcMND_FURA :    278.585907 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 32, 18
Planefight TRA_077  :  2.609000e-17 v/v dry
SpeciesConcVV_FURA  :  2.608745e-17 v/v dry
Planeflight FURA    :    312.200000, molec/cm3
SpeciesConcMND_FURA :    312.236664 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 32, 18
Planefight TRA_077  :  2.609000e-17 v/v dry
SpeciesConcVV_FURA  :  2.608745e-17 v/v dry
Planeflight FURA    :    312.200000, molec/cm3
SpeciesConcMND_FURA :    312.236664 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 32, 18
Planefight TRA_077  :  2.609000e-17 v/v dry
SpeciesConcVV_FURA  :  2.608745e-17 v/v dry
Planeflight FURA    :    312.200000, molec/cm3
SpeciesConcMND_FURA :    312.236664 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 32, 18
Planefight TRA_077  :  2.609000e-17 v/v dry
SpeciesConcVV_FURA  :  2.608745e-17 v/v dry
Planeflight FURA    :    312.200000, molec/cm3
SpeciesConcMND_FURA :    312.236664 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 32, 18
Planefight TRA_077  :  2.609000e-17 v/v dry
SpeciesConcVV_FURA  :  2.608745e-17 v/v dry
Planeflight FURA    :    312.200000, molec/cm3
SpeciesConcMND_FURA :    312.236664 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 33, 18
Planefight TRA_077  :  7.159000e-18 v/v dry
SpeciesConcVV_FURA  :  7.159276e-18 v/v dry
Planeflight FURA    :     85.310000, molec/cm3
SpeciesConcMND_FURA :     85.313103 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 33, 18
Planefight TRA_077  :  7.159000e-18 v/v dry
SpeciesConcVV_FURA  :  7.159276e-18 v/v dry
Planeflight FURA    :     85.310000, molec/cm3
SpeciesConcMND_FURA :     85.313103 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 33, 18
Planefight TRA_077  :  7.159000e-18 v/v dry
SpeciesConcVV_FURA  :  7.159276e-18 v/v dry
Planeflight FURA    :     85.310000, molec/cm3
SpeciesConcMND_FURA :     85.313103 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 3, 25, 33, 18
Planefight TRA_077  :  7.159000e-18 v/v dry
SpeciesConcVV_FURA  :  7.159276e-18 v/v dry
Planeflight FURA    :     85.310000, molec/cm3
SpeciesConcMND_FURA :     85.313103 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 25, 33, 18
Planefight TRA_077  :  1.217000e-17 v/v dry
SpeciesConcVV_FURA  :  1.216740e-17 v/v dry
Planeflight FURA    :    145.000000, molec/cm3
SpeciesConcMND_FURA :    144.971283 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 23, 33, 18
Planefight TRA_077  :  3.870000e-18 v/v dry
SpeciesConcVV_FURA  :  3.869927e-18 v/v dry
Planeflight FURA    :     52.320000, molec/cm3
SpeciesConcMND_FURA :     52.315235 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 22, 33, 18
Planefight TRA_077  :  2.464000e-18 v/v dry
SpeciesConcVV_FURA  :  2.464481e-18 v/v dry
Planeflight FURA    :     35.240000, molec/cm3
SpeciesConcMND_FURA :     35.235569 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 20, 33, 18
Planefight TRA_077  :  8.672000e-18 v/v dry
SpeciesConcVV_FURA  :  8.671520e-18 v/v dry
Planeflight FURA    :    137.100000, molec/cm3
SpeciesConcMND_FURA :    137.124130 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 18, 33, 18
Planefight TRA_077  :  1.913000e-17 v/v dry
SpeciesConcVV_FURA  :  1.913438e-17 v/v dry
Planeflight FURA    :    329.400000, molec/cm3
SpeciesConcMND_FURA :    329.357208 molec/cm3
----------------------------------------------------------------------
time, lev, lat, lon indices: 5, 15, 33, 18
Planefight TRA_077  :  1.213000e-16 v/v dry
SpeciesConcVV_FURA  :  1.213053e-16 v/v dry
Planeflight FURA    :   2268.000000, molec/cm3
SpeciesConcMND_FURA :   2268.291992 molec/cm3

The differences in precision are caused by the plane.log file using a fixed number of decimal places in each column.

So I've convinced myself that this is not a bug. It may be a chemistry or emissions issue. You may want to touch base with the Chemistry Working Group and/or the Emissions Working Group to see if they have any ideas.

Tagging @barronh @luhu0 @jingqiumao @jaegle @emarais

@yantosca
Copy link
Contributor

@joepalmo @jinlx: I forgot to mention that I used the out-of-the-box 14.4.1 version.

@yantosca yantosca added the help needed: Request Input From Community We need GC community to provide a fix/update label Jul 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category: Bug Something isn't working help needed: Request Input From Community We need GC community to provide a fix/update topic: Diagnostics Related to output diagnostic data
Projects
None yet
Development

No branches or pull requests

3 participants