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

tracer updates in atmoshpere history files #469

Open
junwang-noaa opened this issue Mar 11, 2021 · 14 comments
Open

tracer updates in atmoshpere history files #469

junwang-noaa opened this issue Mar 11, 2021 · 14 comments
Labels
bug Something isn't working

Comments

@junwang-noaa
Copy link
Collaborator

Description

In the current atmosphere history files in UFS, the tracers are output as the mixing ratio against the total air mass including the cloud hydrometers. While the pressure fields are output with cloud hydrometers removed (moist air mass). To have a consistent output, the tracers in history files will be adjusted to mixing ratio against the moist air mass. Also the long name of the tracer fields will be updated with "mixing ratio against moist air mass".

To Reproduce:

To run any test with ufs-weather-model with FV3, the tracers in history files will be shown as mixing ratio, which is against total air mass.

Additional context

Code changes need to be made in fv3 to add adjustment for output tracers against moist air mass. Issues and PRs will be available later.

  • needs to be fixed also in noaa-emc/nems/issues/<issue_number>
  • needed for noaa-emc/fv3atm/pull/<pr_number>
@junwang-noaa junwang-noaa added the bug Something isn't working label Mar 11, 2021
@arunchawla-NOAA
Copy link

@junwang-noaa is this still an issue ?

@junwang-noaa
Copy link
Collaborator Author

@yangfanglin I think this issue was brought by dynamics group. I want to check, do we still need this change?

@yangfanglin
Copy link
Collaborator

yangfanglin commented Mar 14, 2022 via email

@yangfanglin
Copy link
Collaborator

yangfanglin commented Mar 14, 2022

Pasted below is Cathy's reply

From what I recall, we found that the GSI is not entirely consistent with its treatment of tracers and mixing ratio, though mostly assumed moist air mass. This was not clear to me if this was intentional or from code not updated with more recent hydrometeor inclusion. However, the move to JEDI made the point rather moot (for global at least) and warranted us to just give extra attention to these details during the JEDI transition.

I also know that Ting did additional investigation for regional GSI and was looking to make modifications for regional only but I don't remember the outcome. Ting, could you comment?

Note: I am able to access github when I turn off the VPN.

@yangfanglin
Copy link
Collaborator

Found a lengthy discussions on this topic happened in March 2021.


Fanglin to Daryl, Cathy, Russ, George, and Jun

We are still having conversations with GFDL to clarify how the mixing ratios including cloud species and pressures are defined in the forecast model and forecast output, and the input and output from analyses. The following items have been confirmed.

  1. all fields including tracers (O3, water vapor, and cloud hydrometers) and pressure (delp) written in the "warm" restart files on the tiles by the FMS are total-mass based; that is, cloud hydrometers are included in the calculations of pressures and mixing ratios.

  2. For the GFS forecast history files written out by the Write Grid Component on either tiles or Gaussian grid, tracers are still total-mas based; but delp and surface pressure do not contain cloud hydrometers

  3. Inside the model, there is a conversion from dynamics to physics to remove cloud hydrometers for defining mixing ratio and pressures, and vise versa, from physics to dynamics.

Can you clarify how tracer mixing ratios and delp are defined and used in the GSI and in the output of analysis increment files ?

BTW, George Gayno has confirmed that CHGES does not do any conversion inside to add or remove cloud hydrometers from the calculations of pressure and mixing ratios.


Fanglin to Jun

un,

I think tracers written out in the model history files should be defined related to the moist air mass (dry+vapor) instead of total mass. All downstream applications and product users are accustomed to the traditional definition of mixing ratio, and may have been using the GFS output incorrectly since the GFS.15 implementation. Furthermore, if a different microphysics scheme is used then the definite changes as well. This will cause confusion and make it difficult for users to track the changes.
I included Hui-ya in this email to bring her attention to the derived products in the UPP that use tracers (water vapor and cloud species) as inputs.

We only need to maintain the consistency of tracers between model restart files and the dycore.


Jun to Fanglin

We can make that change. But I am curious if we want to add an option to output pressure as the total mass to make it consistent with model restart and the dycore. This way at least we have a set of consistent fields, I am not sure about the dependency and the benefit of using moist air mass instead of total mass in pressure and tracers except the GSM legacies. As for different microphysics, I see the slow phase of microphysics schemes is called within GFS physics, which means all the tracers are the mixing ratio based on moist air mass. I am not sure if the tracers need to be treated differently for different microphysics schemes.


Fanglin to Jun

Whatever we do inside the model is fine. I am mainly concerned about how the GFS products are interpreted and used by downstream applications and product users including forecasters. In most textbooks mixing ratio is defined related to moist air. I think products from other NWP centers also follow the traditional definition.


Lucas to Jun

Hi, Jun. I am fine with keeping things the way they are as long as variable definitions are clearly delineated. Ideally the best long-term solution would be to have a NetCDF variable attribute for each pressure or tracer variable showing the specific definition ('dry_mass', 'moist_mass', 'total_mass'); then the models and/or tools can read the attribute and know exactly what conversion is needed.

If tracers are written out directly from the physics driver they will be moist mass, but if they are written from FV3 they are total mass unless the adjustment is specifically done.


Jun to Lucas

Thanks, Lucas. We can add the definition information in the long name of the fields in netcdf file. We do not write out tracers directly after physics because the fields are not updated with new tendencies yet. The tracers are all written from FV3 where we add extra adjustment.

I will create an issue on adjusting the tracers to be moist mass based and tracer long name attribute update.


Cathy to Fanglin

Within the DA, the fields that you mention including delp and ps are treated as total mass and there is no conversion to add or remove tracer fields in the pressure. The background and analysis increments are treated consistently throughout.

For #2 2) For the GFS forecast history files written out by the Write Grid Component on either tiles or Gaussian grid, tracers are still total-mas based; but delp and surface pressure do not contain cloud hydrometers

How long have the hydrometeors been removed from the gaussian grid pressures? Is this also true for operations?
Jun: yes, it's been like that since GFSv15.


Fanglin to Cathy
Does the surface pressure and delp written in atmanl in GFS.v15 and GFS.v16 include cloud hydrometers ?


Cathy to Fanglin,

Atmanl is computed differently in v15 and v16 but the impact is the same. The atmanl computations of delp and ps do not perform any conversion with the hydrometeors and are assumed to include them.

An additional step that I don't think has been covered yet: what is the model expecting from the analysis increment? When the delp increment is read, is there a conversion?


Fanglin to George

That is a good question. I think for warm restarts, there is no conversion involved. Therefore, the model expects variables included in analysis increments have cloud hydromenters included.

George, we need to revisit CHGRES or the model how to handle cold start ICs.

  1. If the old GSM analyses are used to make FV3 cold start ICs, conversions need to be made for both pressure and tracers either in CHGRES or the Model.
  2. If GFS.15/GFSv16 analyses are used, no conversion is needed either in the model or CHRES.

END OF THE CONVERSATION. No FOLLOW-UPS AFTER MARCH 21, 2021.

@yangfanglin
Copy link
Collaborator

Another summary found in my emails

03/12/2021

The ECM DA team has confirmed that

  1. for both GFS.v15 and v16, pressures (Psfc and delp) and tracer mixing ratios inside the GSI are total-mass based, and therefore consistent with the fv3 dycore,
  2. Pressures and tracer mixing ratios written in the full analysis fields and analysis increments in both GFS.v15 and v16 are total mass based.

Note that in GFS.v15 and GFS.v16 history files, tracer mixing ratios are total mass based, while surface pressure and delp are moist air based. Since no conversions are applied in CHGRES, the following should be exercised to start FV3, preferably inside the FV3 initialization routines,

  1. for ICs created from the "old" GSM analyses and history files, both pressures and tracers need to be converted from moist air based to total mass based.
  2. for ICs created from GFS.v15/v16 warm restart files (on the tiles) and analyses (on the Gaussian grid), no conversion is needed.
  3. for ICs created from GFS.v15/v16 history files (on the Gaussian grid), pressures need to be converted from moist air based to total mass based.

For the future: Jun has created a ticket to change tracer mixing ratios from total-mass based to moist-air based in model forecast history files. This change is necessary for providing consistent products to downstream applications and forecasters. After this change is implemented (likely in GFS.v17/GEFS.v13 in 2024), conversions need to be applied to both pressures and tracers if history files are used to create FV3 ICs.

@ufs-community ufs-community deleted a comment from tinglei Mar 15, 2022
@yangfanglin
Copy link
Collaborator

@junwang-noaa I'd like to bring this topic back to attention before GFS.v17 and GEFS.v13 are finalized

@junwang-noaa
Copy link
Collaborator Author

@yangfanglin when I think about this, is it make sense we change the pressure to be total mass instead of changing tracers to be mixing ratio against the moist air mass in history file? This way the output tracers are consistent with the input tracers from the ICs or restart files. I think it could avoid confusion if tracers in model input ICs, restart and history files are consistent.

@SMoorthi-emc
Copy link
Contributor

SMoorthi-emc commented Sep 2, 2022 via email

@junwang-noaa
Copy link
Collaborator Author

@SMoorthi-emc Thanks for the note. @yangfanglin Do we have a way to identify gas tracers from other tracers?

@yangfanglin
Copy link
Collaborator

@junwang-noaa The reasons for using moist air mixing ratio were explained in my comments made above on 03/15/2022 in this thread. The issue is whether or not to include cloud hydrometers in the definition. Not all trace gases in the atmosphere are included in our atmosphere model, especially those from gas phase chemistry. Nevertheless, we can follow the traditional definition to include "dry mass" and water vapor. For the "dry mass" only ozone is transported in our model. Other tracers are assumed to be uniformly distributed in the air.

@junwang-noaa
Copy link
Collaborator Author

@yangfanglin So do we only apply dry mass for the ozone mixing ratio? Just let you know that the change will impact AQM app which has chemistry gas tracers and we use the same code to output tracers for both ATM only app (without chemistry) and AQM app (with chemistry).

@yangfanglin
Copy link
Collaborator

yangfanglin commented Sep 2, 2022

@junwang-noaa I think in the model we always use a predefined dry air density. O3 and other gas tracers do not need to be used to explicitly compute dry air mass. Also note that nitrogen and oxygen account for 99 percent of the gases in dry air, with argon, carbon dioxide, helium, neon, and other gases making up minute portions.

pjpegion pushed a commit to NOAA-PSL/ufs-weather-model that referenced this issue Apr 4, 2023
* Implement ESMF-managed-threading for fcstComp and wrtComp's.
@gspetro-NOAA
Copy link
Collaborator

@junwang-noaa Do you know if this issue has been resolved? It looks like there was some discussion of revisiting it after GFS v17, and it was added to an EMC GitHub project. However, there have been no updates for ~2 years, so I'm wondering if it can be closed or if there are plans for further work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: No status
Development

No branches or pull requests

5 participants