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
[BUG/ISSUE] Planeflight concentration output has weird/inconsistent units #796
Comments
Thanks for writing @tscarter. You can attach a log file by dragging & dropping, but you have to make sure it's renamed to e.g. plane.log.txt. Then Github will understand it. |
Got it. Thanks! Here it is. |
Hi @tscarter, I so I made a simple Planeflight.dat for testing with the same location that you used. I used a different date (since that is what my restart file was for), as the date might not matter if there is a units issue.
So I specified ISOP by name and by TRA_121, and MTPA by name and by TRA_146. My plane.log file looked like this:
The species by name are in molec/cm3: !-------------------------
! GEOS-Chem Chemical species [molec/cm3]
!-------------------------
CASE ( 1:996)
! Only archive where chemistry is done
IF ( State_Met%InChemGrid(I,J,L) ) THEN
! Species concentration [v/v] -> [molec/cm3]
VARI(V) = Spc(I,J,L,PVAR(V)) * State_Met%AIRNUMDEN(I,J,L)
ENDIF and the species by TRA_ are in mixing ratio (actually mol/mol dry): !--------------------------
! GEOS-CHEM advected species [v/v]
!--------------------------
CASE( 100000:199999 )
! Remove offset from PVAR
N = PVAR(V) - 100000
! Species concentration [v/v]
VARI(V) = Spc(I,J,L,N)
IF ( VARI(V) < TINY ) VARI(V) = 0.e+0_fp I think the difference between the 2 was back when we had SMVGEAR, and we kept track of non-advected species separately than advected species. In any case, my simulation was a short run so I'm not sure if those values are correct. 1e-16 seems very small for ISOP. P.S. I ran into the other bug described at #800, but I'll push a fix for that separately. |
Also I think there have been some recent updates to the planeflight diagnostic but at this point we have been relying on the community to submit scientific updates, as we aren't using it ourselves. See commits: 6e14981, 0727622, a615790, and 7b1c618. Also, you can tell what the species units are by printing out |
A couple more things:
So the species units are now mass mixing ratio rather than molar mixing ratio. That may explain the weird results you are seeing. |
This commit should fix issue geoschem/geos-chem #796. Apparently, the planeflight diagnostic outputs in v/v were never updated to account for the fact that State_Chm%Species is in units of kg/kg dry at the point when the PLANEFLIGHT routine is called. The code had assumed that the species units were v/v. We have corrected the unit conversions for the following outputs: (1) Chemical species (#1 -996) (2) RO2 (#997) (3) AN (#998) (4) NOy (#999) (5) TRA_xxx (#100000-199999) Also updated some comment lines. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
This issue should now be fixed with commit 2e58896. This will ship as version 13.2.1 (but you can grab this right now from the With the unit conversions to v/v dry corrected, we now get:
RO2, AN, and NOy concentrations look pretty good. The ISOP and MTPA are low (~4000 molec/cm3) but this might be true if the station is a remote site or near the ocean. @tscarter, can you doublecheck on your end? |
Thanks for all this follow up, Bob! The site is a tower in the Amazon, so I would not really expect biogenics to be low...
|
@tscarter, thanks for following up. My run was only for 1 hour so this could be an initialization issue. Have you tried again with the unit conversion fixes? |
That would make sense. I haven't yet tried with the unit conversion fixes but will get back to you when I have.
|
Thanks @tscarter. Have a hunch that if you use a well-spun up restart file then it should be OK. But let us know when you get to it. |
Yes, can confirm that this looks fine on my end. Thanks for your help!
|
Thank you Tess! Will close out this issue. |
This commit should fix issue geoschem/geos-chem #796. Apparently, the planeflight diagnostic outputs in v/v were never updated to account for the fact that State_Chm%Species is in units of kg/kg dry at the point when the PLANEFLIGHT routine is called. The code had assumed that the species units were v/v. We have corrected the unit conversions for the following outputs: (1) Chemical species (#1 -996) (2) RO2 (#997) (3) AN (#998) (4) NOy (#999) (5) TRA_xxx (#100000-199999) Also updated some comment lines. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
GeosCore/planeflight_mod.F90 - Remove calls to Convert_Spc_Units. It turns out that we were doing the unit conversion from kg/kg dry -> v/v twice (once in routine Convert_Spc_Units, and once directly by code introduced in geoschem/geos-chem #796) This now fixes the issue noted by @RuijunDang in geoschem/geos-chem #959. Signed-off-by: Bob Yantosca <yantosca@seas.harvard.edu>
Description of the problem/Description of troubleshooting performed
In looking at planeflight diagnostic output, the concentration output seems to be in different units (e.g., ppm, ppb, ppt) for different species, and I cannot tell a pattern for those differences. For example, in these files, ISOP appears a factor of 1E6 too small and MTPA a factor of 1E3 too small. The runs are fully spun up, so I don't think that's the problem.
Other people in our lab group are seeing something similar. This can be roughly corrected for by referencing the monthly output files and using intuition to figure out what units the species should be in. However, I am wondering if any changes to this diagnostic were pushed in a recent version that would have led to this and if there is any fix that you are aware of.
GEOS-Chem version
13.0.0
Description of modifications
Describe your modifications here.
Log files
planeflightOuput.pdf
If it's helpful, I also have the netcdf monthly species file and input.geos and can send over email since github won't let me attach them.
Software versions
The text was updated successfully, but these errors were encountered: