-
Notifications
You must be signed in to change notification settings - Fork 27
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
[WIP] Add capability to run IMI at 0.125x0.15625 resolution #305
Draft
msulprizio
wants to merge
32
commits into
main
Choose a base branch
from
feature/0.125x0.15625_resolution
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…n Wang The grid resolution option is expanded to include 0.125x0.15625. These modifications were obtained from Xiaolin Wang. These simulations require using the feature/0.125x0.15625_resolution in the GCClassic/src/GEOS-Chem repository (see also geoschem/geos-chem#1980). Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
Resolved conflicts in: src/components/setup_component/setup.sh src/components/template_component/template.sh src/utilities/make_state_vector_file.py src/utilities/utils.py Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
vectorizes inversion hyperparameters (PriorError, PriorErrorBCs, PriorErrorBufferElements, PriorErrorOH, ObsError, and Gamma), such that multiple can be input in config.yml and outputted as additional dimensions in inversion_result_ensemble.nc and gridded_posterior_ensemble.nc. Additionally, includes visualizations for the ensemble in the visualization notebook. See PR #297 for additional implementation notes.
…resolution Resolved conflicts in: src/components/statevector_component/statevector.sh Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
Note that BCs are still generated using an older condition and hence the dev branch of the IMI has not been updated to 14.5.1 yet. Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
Co-authored-by: Stefanos Chatzimichelakis <s.chatzimichelakis@iccs.gr>
Co-authored-by: Stefanos Chatzimichelakis <s.chatzimichelakis@iccs.gr>
…ements (#304) * Add fixes to *invert.py scripts to properly determine number of OH elements In lognormal_inverty.py it was automatically assumed that the number of OH elements is 1 when setting OptimizeOH: true. This is only the case for regional simulations. For global simulations, OH_element_num should be 2. In invert.py, a fix was needed to select the right element in K when using OH optimization in regional vs global simulations. In addition, the logicals for BC and OH optimization have been renamed in this script for consistency with lognormal_invert.py. Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu> * Add missing colon in invert.py Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu> --------- Signed-off-by: Melissa Sulprizio <mpayer@seas.harvard.edu>
Co-authored-by: Stefanos Chatzimichelakis <s.chatzimichelakis@iccs.gr>
* added functionality to download sectoral totals from prior emissions in the preview, also downloads a csv of emissions to be used in IE * quick name change on sector plot for clarity * revert ds_prior variable creation
5a6de0e
to
4622863
Compare
…to 1 instead of 0. BC elements are still 0 since they are in concentration space (#312) This is a bugfix to the lognormal inversion. We initialize the normal elements (buffer elements, BC elements, OH elements) in xn to be ones instead of 0 to start except for the BC elements because those are relative to concentration space rather than scale factors. This is different than in the normal inversion where xa is initialized to 0 to represent the prior. To understand why, it is important to understand how we are calculating the observation model difference in these inversions. For both lognormal and normal inversions we calculate the observation - model difference. However, this difference can be calculated in two ways: Using just the prior simulation: y_y_prior_diff - K@xa, where y_y_prior_diff is the difference between y (tropomi) and the prior simulation. In this scenario, xa is initialized as 0's because the prior is already accounted for in y_y_prior_diff. This is how we do the normal inversion Using a background simulation: y_ybkg_diff-(K@xn), where y_ybkg_diff is the difference between y (tropomi) and the background simulation. Here, the prior simulation is represented when xn is a vector of all 1's because y_ybkg_diff does not take into account the impact of emissions. This is what we do in the lognormal inversion. We use option 2 for the lognormal scenario because we approach the answer iteratively, in each iteration we get a new xn, which means a new modeled xch4 (ppb). One way to get a new modeled xch4 simulation is to put the new xn through geos-chem and get F(xn), which is painful and takes time. But if we can get y_bkg beforehand, and simply do ybkg+ K@xn, we dont have to wait for geos-chem running in the middle of iterations, since ybkg+ K@xn = F(xn). The bugfix: Previously, we erroneously had the buffer elements and OH elements in the initial xn set to 0. This bugfix, initialized them as 1. Notably the BC elements are left to be 0 because they are calculating the delta in concentration instead of scalefactors, so 0 represents sticking to the prior.
a707c49
to
f8418b6
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Name and Institution (Required)
Name: Melissa Sulprizio
Institution: Harvard
Describe the update
NASA GMAO has provided 1-hourly mass flux fields for GEOS-FP meteorology at c720 resolution to drive GCHP. The mass flux fields have been converted to derived winds fields and further regridded from c720 to 0.125x0.15625 lat-lon resolution. The new files include the following collections and met fields:
GEOS.fp.asm.I1dyn
: PS, SPHUGEOS.fp.asm.A1dyn
: U, VTo utilize this resolution in the IMI, users will also need to update the GEOS-Chem and HEMCO submodules in GCClassic using the pull requests linked below.
The use of this resolution and these meteorology fields is still being evaluated for it's impact on model output and performance and will be documented in a paper by @xlwangg (in prep).
In addition, currently only 0.125x0.1525 meteorology fields for North America, Asia, and Europe are available in the GEOS-Chem meteorology archive (https://geos-chem.s3.amazonaws.com/index.html). Extending the capability to other regions is now in progress, starting with South America and Africa. Those met fields will be available for 2023-present.
Related Github Issue(s)