Difference between revisions of "GEOS-Chem Newsletter Spring 2013"

From Geos-chem
Jump to: navigation, search
(Flexible precision in GEOS-Chem)
(Flexible precision in GEOS-Chem)
Line 202: Line 202:
 
We are considering introducing a flexible precision into GEOS-Chem.  Currently, most GEOS-Chem variables (except variables that hold data arrays read in from disk) are defined as <tt>REAL*8</tt>, also known as <tt>DOUBLE PRECISION</tt>.  This uses 8 bytes (64 bits) per number, which was at one time necessary to ensure [[Floating point math issues|numerical stability]].
 
We are considering introducing a flexible precision into GEOS-Chem.  Currently, most GEOS-Chem variables (except variables that hold data arrays read in from disk) are defined as <tt>REAL*8</tt>, also known as <tt>DOUBLE PRECISION</tt>.  This uses 8 bytes (64 bits) per number, which was at one time necessary to ensure [[Floating point math issues|numerical stability]].
  
But as geospatial grids have gotten dramatically smaller (we are now on the threshold of 1/4 degree resolution!), having large 3-D arrays with <tt>REAL*8</tt> values takes up a lot of memory in GEOS-Chem.  We are therefore considering introducing a flexible precision definition, where you would be able to select a lower precision (i.e. <tt>REAL*4</tt>, or 32 bits per number) at compile time.  This would immediately halve the amount of memory needed for fine-resolution simulations, such as the nested-grid simulations.
+
But as geospatial grids have gotten dramatically smaller (we are now on the threshold of [[GEOS-5.7.2|1/4 degree resolution]]!), having large 3-D arrays with <tt>REAL*8</tt> values takes up a lot of memory in GEOS-Chem.  We are therefore considering introducing a flexible precision definition, where you would be able to select a lower precision (i.e. <tt>REAL*4</tt>, or 32 bits per number) at compile time.  This would immediately halve the amount of memory needed for fine-resolution simulations, such as the nested-grid simulations.
  
 
Right now this is on the drawing board, but we hope to introduce it into a future version of GEOS-Chem soon.
 
Right now this is on the drawing board, but we hope to introduce it into a future version of GEOS-Chem soon.

Revision as of 20:34, 8 April 2013

Dear GEOS-Chem users,

We are happy to bring you the Spring 2013 edition of the GEOS-Chem Newsletter! Please read below to find out the latest GEOS-Chem happenings.

Sincerely,

The GEOS-Chem Support Team
geos-chem-support@as.harvard.edu

The 6th International GEOS-Chem Meeting!

The 6th International GEOS-Chem Meeting (aka IGC6) will take place at Harvard University from May 6-9, 2013. We look forward to seeing many of you there!

Registration for IGC6 is now closed. If you cannot attend the meeting, you may view IGC6 talks via streaming internet video. We will post more information about this as we draw closer to the meeting date.

We invite you to read the preliminary IGC6 meeting agenda to get a better feel for the structure of the meeting. In particular, the meeting will have these segments:

  • Sunday, May 5th:
    • Young Scientists' Social (evening)
    • Reception for GEOS-Chem Steering Committee (evening)
  • Monday, May 6th:
    • Short Science Talks (morning, afternoon)
    • Model Clinics (evening)
    • Poster Session & Reception (evening)
  • Tuesday, May 7th:
    • Short Science Talks (morning, afternoon)
    • Working Group Breakout Meetings (afternoon)
    • Poster Session & Reception (evening)
  • Wednesday, May 8th:
    • Short Science Talks (morning, afternoon)
    • Working Group Breakout Meetings (afternoon)
  • Thursday, May 9th:
    • Short Science Talks (morning)
    • Adjournment (afternoon)
    • GEOS-Chem Steering Committee Meeting (afternoon)

GEOS-Chem Steering Committee

Next GCSC meeting

The next GEOS-Chem Steering Committee GEOS-Chem Steering Committee Telecon will take place on Friday, April 12, 2013 at 10AM ET (1400 GMT). If you would like to bring any items to the attention of the Steering Committee, please contact your GEOS-Chem Working Group co-chairpersons.

Previous GCSC meeting

The previous GCSC telecon was held on Tuesday January 8th, 2013. We invite you to read the meeting minutes.

GEOS-Chem Working Groups

We would like to remind all GEOS-Chem users and developers to join one or more of the GEOS-Chem Working Groups. If you are a new user of GEOS-Chem, please take a moment to write to the co-chairs of the Working Group that is aligned with your research interests and let them know about the type of research that you are doing.

GEOS-Chem v9-02 news

We are happy to report that as of this writing (08 Apr 2013), we have made significant progress towards the release of GEOS-Chem v9-02:

Already completed

The following features have been added into GEOS-Chem and validated with a 1-month benchmark simulation. In some cases, a 1-year benchmark was also performed:

  1. v9-02a: Correction for PBL heights
  2. v9-02b: New soil NOx emissions module + minor bug fixes
  3. v9-02c: Updates for the Hg simulaton: emissions + kinetics
  4. v9-02d: Structural updates for the Grid-Independent GEOS-Chem
  5. v9-02e: Bug fix for regridding of anthro emissions (Streets, NEI2005)
  6. v9-02f: Chemistry Updates #1:
    • Inorganic chemistry updates
    • Methyl peroxy nitrate (MPN) chemistry
    • NOTE: We tested v9-02f with both 1-month and 1-year benchmarks.
  7. v9-02g: Chemistry Updates #2:
    • Adopt Paulot isoprene scheme as standard
    • Fix RO2+HO2 rate constant
    • NOTE: We tested v9-02g with both 1-month and 1-year benchmarks.

Bugs and fixes

GEOS-Chem v9-02 shall contain fixes for the following bugs and/or technical issues:

  1. Correction for GEOS-5 PBL heights
  2. Bug fixes for tagged CO simulation
  3. Regridding error in NEI2005 emissions
  4. Bug fix for updated CAC emissions
  5. Fixed incorrect loop limits in Br2 emissions code
  6. Bugs in diurnal NOx scaling and biofuel double-counting
  7. Bug fix for MEGAN emissions when using MERRA or GEOS-5.7.2 met
  8. Additional bug fixes for MAP_A2A regridding algorithm
  9. Bug fix for declaration of GEOS-5.7.2 PFICU, PFLCU, PFILSAN, PFLLSAN fields
  10. Bug in EMIS_STREETS_ANTHRO_05x0666
  11. Bug fixes for nested Hg simulation
  12. Prevent bad drydep flux values from being passed to the soil NOx emissions module
  13. Bug fix for anthropogenic scaling factors for years 2006 and later

Still to be done

We are still working on the following benchmarks:

  1. v9-02h: Chemistry Updates #3:
    • Improved HO2 uptake by aerosol
    • Removal of NOx-Ox partitioning
    • Inhibition of N2O5 uptake by nitrate aerosol
    • NOTE: We shall test v9-02h with both 1-month and 1-year benchmarks.
  2. v9-02i: Synchronize additional Grid-Independent GEOS-Chem modifications (i.e. to facilitate connecting to the GEOS-5 GCM) into the standard GEOS-Chem repository

Also, the Nested Model Working Group is performing a 1-yr full-chemistry simulation for the North American Nested Grid with GEOS-5 met (0.5° x 0.666°). They have completed 6 months of the benchmark.

Please see this table for the complete list of updates that shall be added to GEOS-Chem v9-02. We also invite you to view the list of GEOS-Chem model development priorities, as determined by Steering Committee, with input from the Working Groups.

NOTE: We may release GEOS-Chem v9-02 before all of the items listed under [GEOS-Chem v9-02#What's new in this version|"What's new in this version"]] are completed. The remaining items will be held over for the next version, GEOS-Chem v9-03.

Grid-Independent GEOS-Chem news

Much of the recent Grid-independent GEOS-Chem (aka GIGC) work has involved restructuring how data flows between routines in the standard GEOS-Chem code. In general, we now make use of derived-type objects to carry data fields instead of referencing arrays from other modules with USE statements. We have been making these types of structural updates concurrently with scientific development in GEOS-Chem in order to avoid the GIGC code from lagging behind the standard GEOS-Chem code.

We’ve also streamlined the Earth System Model Framework (ESMF) interface that connects GEOS-Chem to the GEOS-5 GCM. The ESMF interface can now deliver the following information from the GCM to GEOS-Chem:

  1. Size of data arrays on each CPU: (IIPAR, JJPAR, LLPAR)
  2. Size of the entire global grid: (IM_WORLD, JM_WORLD, LM_WORLD)
  3. Corner grid box indices on each CPU (I_LO, I_HI, J_LO, J_HI)
  4. Date and time from the GCM
  5. Level edge pressures from the GCM

We also made sure to bring the ESMF interface up-to-date with the tracers and species introduced by the latest bromine chemistry mechanism.

All of these updates are now reflected on the GIGC wiki pages. Please see:

  1. Grid-Independent GEOS-Chem
  2. Grid-Independent GEOS-Chem: Chemistry Component
  3. Grid-Independent GEOS-Chem: Emissions Component
  4. Derived type objects used by the Grid-Independent GEOS-Chem
  5. Programming techniques used for the Grid-Independent GEOS-Chem

We recently performed a test simulation of GEOS-Chem in our ESMF “Sandbox” environment, which replicates the connection to the GEOS-5 GCM without having to run the full GCM. We demonstrated that GEOS-Chem could be successfully run within the ESMF environment using MPI parallelization.

Christoph Keller is working on the GIGC Emissions Component, which will run independently of the chemistry. The Emissions Component will combine emissions from several inventories, apply the relevant scale factors, regrid the emissions, and pass them to the GIGC Chemistry Component via the ESMF interface. Christoph has been making use of a new data structure to store emissions. He is also handling disk I/O operations separately from the data structure, which is a requirement of the ESMF environment. Please see this presentation for further details.

Still to do:

  1. Modify the GIGC code to read data from ASCII input files (i.e. input.geos, globchem.dat, ratj.d, etc.) on the root CPU, and to broadcast the data to other CPUs. This is necessary in order to prevent all CPUs on the system from performing disk I/O operations simultaneously.
  2. Bring dry deposition into the ESMF interface. Mike Long has been working on this.
  3. Port the updated GEOS-Chem source code back to NASA/GSFC to allow testing of the GEOS-5/GEOS-Chem combined model on NASA machines.

We anticipate to be able to run a GEOS-5 GCM/GEOS-Chem simulation before the IGC6 meeting in May. Stay tuned for results!

GEOS-Chem Adjoint News

Yanko Davila wrote:

GEOS-Chem Adjoint v34f and v34g are now available for download!
The GEOS-Chem Adjoint Group is pleased to announce the release of gcadj_std version 34f and 34g . This releases includes new features such as:
  1. Added support for off-diagonal covariance error matrices (v34f)
  2. Nested Transport Bug Fix (v34g)
For a complete list of all features and bug fixes, please refer to the wiki page).
Please remember that starting with version 34 we changed our version control to GIT. Users using CVS can still access the server for versions up to v33i-patch2, but we no longer offer support for those versions.
You can find the instructions on how to get the new code in this Quick Start Guide.
Please feel free to provide your feedback to our Support Team. We thank our community for your support.
Sincerely,
GEOS-Chem Adjoint Group.

In other news

Here are some other happeninings of note in the GEOS-Chem community:

Symposium in honor of Jennifer Logan

You are cordially invited to attend a special symposium in celebration of Jennifer Logan, who will be retiring this spring from her long and fruitful research career at Harvard University. The event will feature a series of stimulating scientific talks on general topics in atmospheric chemistry, as well as a panel discussion on women in science and engineering.

DINNER
Thursday, May 9
6:30 p.m.
Charles Hotel, Kennedy Room
1 Bennett Street, Cambridge, MA

SYMPOSIUM
Friday, May 10
9:00 a.m. - 5:00 p.m.
Maxwell Dworkin G115
33 Oxford Street, Cambridge, MA
Continental breakfast available beginning at 8:30 a.m.

Please RSVP here by Friday, April 26th.

KPP / Flexchem

Mat Evans and Mike Long have just kick-started an effort to replace the existing SMVGEAR chemistry solver with a more flexible implementation of KPP (called "FlexChem"). When this is fully implemented, you will be able to build KPP with your own customized chemistry mechanism every time you compile GEOS-Chem. This will have the following advantages:

  1. Removing SMVGEAR will also help to speed up GEOS-Chem. The SMVGEAR solver involves a sequence of copying 3-dimensional arrays to 1-dimensional vectors. Once upon a time, this was an optimal coding strategy for the vectorized Cray computers on which SMVGEAR was originally developed. But on more modern computers, SMVGEAR's code structure turns out to be a performance bottleneck.
  2. Removing the SMVGEAR legacy code will allow us to implement code that utilizes modern programming techniques. This will benefit our Grid-Independent GEOS-Chem effort, which seeks to embed GEOS-Chem into the NASA GEOS-5 GCM.
  3. KPP allows you to select different types of numerical solvers: Rosenbrock, Runge-Kutta, Backwards Euler, etc.
  4. KPP solvers can take advantage of fast math libraries for optimal performance

Mat and Mike have a development version of GEOS-Chem with "FlexChem" installed. They are currently testing and refining the code. We hope to be able to introduce this into a GEOS-Chem standard version shortly.

Flexible precision in GEOS-Chem

We are considering introducing a flexible precision into GEOS-Chem. Currently, most GEOS-Chem variables (except variables that hold data arrays read in from disk) are defined as REAL*8, also known as DOUBLE PRECISION. This uses 8 bytes (64 bits) per number, which was at one time necessary to ensure numerical stability.

But as geospatial grids have gotten dramatically smaller (we are now on the threshold of 1/4 degree resolution!), having large 3-D arrays with REAL*8 values takes up a lot of memory in GEOS-Chem. We are therefore considering introducing a flexible precision definition, where you would be able to select a lower precision (i.e. REAL*4, or 32 bits per number) at compile time. This would immediately halve the amount of memory needed for fine-resolution simulations, such as the nested-grid simulations.

Right now this is on the drawing board, but we hope to introduce it into a future version of GEOS-Chem soon.