GEOS-Chem Adjoint v33: Difference between revisions

From Geos-chem
Jump to navigation Jump to search
Line 14: Line 14:
!Type
!Type
!Submitted by
!Submitted by
!Committed by
!Version
!Version
!Status
!Status
Line 19: Line 20:
|[[#Add_TES_O3_IRK_.28v33a.29|Add TES O3 IRK observation operator]]
|[[#Add_TES_O3_IRK_.28v33a.29|Add TES O3 IRK observation operator]]
|Adjoint Update
|Adjoint Update
|Daven Henze (CU Boulder), Kevin Bowman (JPL)
|Daven Henze (CU Boulder)
|Daven Henze (CU Boulder)
|v33a
|v33a
Line 26: Line 28:
|[[#Fix_wet_deposition_adjoint_.28v33b.29|Fix wetdep adjoint]]
|[[#Fix_wet_deposition_adjoint_.28v33b.29|Fix wetdep adjoint]]
|Adjoint bug fix
|Adjoint bug fix
|Fabien Paulot (Harvard University), Daven Henze (CU Boulder)
|Daven Henze (CU Boulder)
|Daven Henze (CU Boulder)
|v33b
|v33b
Line 33: Line 36:
|[[#Fix_checkpointing_of_aircraft_SO2_emissions_.28v33c.29|Fix checkpointing of aircraft SO2 emissions]]
|[[#Fix_checkpointing_of_aircraft_SO2_emissions_.28v33c.29|Fix checkpointing of aircraft SO2 emissions]]
|Adjoint bug fix
|Adjoint bug fix
|Daven Henze, Kateryna Lapina (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|v33c
|v33c
Line 40: Line 44:
|[[#Fix_linoz_adjoint_.28v33d.29|Fix linoz adjoint]]
|[[#Fix_linoz_adjoint_.28v33d.29|Fix linoz adjoint]]
|Adjoint bug fix
|Adjoint bug fix
|Hyungmin Lee (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|v33d
|v33d
Line 47: Line 52:
|[[#Adjoint_stability_update_.28v33e.29| Adjoint stability update]]
|[[#Adjoint_stability_update_.28v33e.29| Adjoint stability update]]
|Adjoint bug fix
|Adjoint bug fix
|Jamin Koo (MIT), Daven Henze (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|v33e
|v33e
Line 54: Line 60:
|[[#Fix_SE_Asia_NH3_seasonality_.28v33e.29| Fix SE Asia NH3 seasonality]]
|[[#Fix_SE_Asia_NH3_seasonality_.28v33e.29| Fix SE Asia NH3 seasonality]]
|Forward bug fix
|Forward bug fix
|Shailesh Kharol (Dalhousie), Steven Vogel (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|Nicolas Bousserez (CU Boulder)
|v33e
|v33e

Revision as of 16:40, 18 May 2012

Overview

BETA RELEASE

What's new in this version

GEOS-Chem Adjoint v33 contains the following major updates and improvements.

Feature Type Submitted by Committed by Version Status
Add TES O3 IRK observation operator Adjoint Update Daven Henze (CU Boulder), Kevin Bowman (JPL) Daven Henze (CU Boulder) v33a Approved 13 Apr 2012
Fix wetdep adjoint Adjoint bug fix Fabien Paulot (Harvard University), Daven Henze (CU Boulder) Daven Henze (CU Boulder) v33b Approved 20 Apr 2012
Fix checkpointing of aircraft SO2 emissions Adjoint bug fix Daven Henze, Kateryna Lapina (CU Boulder) Nicolas Bousserez (CU Boulder) v33c Approved 20 Apr 2012
Fix linoz adjoint Adjoint bug fix Hyungmin Lee (CU Boulder) Nicolas Bousserez (CU Boulder) v33d Approved 07 May 2012
Adjoint stability update Adjoint bug fix Jamin Koo (MIT), Daven Henze (CU Boulder) Nicolas Bousserez (CU Boulder) v33e Approved 09 May 2012
Fix SE Asia NH3 seasonality Forward bug fix Shailesh Kharol (Dalhousie), Steven Vogel (CU Boulder) Nicolas Bousserez (CU Boulder) v33e Approved 09 May 2012

Updates to forward model

Bug fixes in forward model

Fix SE Asia NH3 seasonality (v33e)

The bug fix from the forward model fixing the seasonality of the NH3 emissions over SE Asia has also been applied.

1 week benchmark is approved 33e_003


--Daven 02:40, 10 May 2012 (EDT)

Updates to adjoint model

Add TES O3 IRK (v33a)

Implemented observation operator for assimilation of TES O3 IRKs.

See benchmark results 33a_001

--Daven 19:03, 13 April 2012 (EDT)

Bug fixes in adjoint model

Fix wet deposition adjoint (v33b)

The adjoint was not properly handling evaporation. This fix helps make the adjoint of species such as NH3 better in a few locations where adjoints were diverging from forward model sensitivities by up to 50%.


See benchmark results 33a_002 vs 33b_002

--Daven 12:51, 20 April 2012 (EDT)

Fix checkpointing of aircraft SO2 emissions (v33c)

The SO2 aircraft emissions are distributed in the model based on a mapping from the 20 level inventory to the GEOS-Chem levels. This mapping depends upon the air masses in the models. The emissions are read in during the first hour of the month in the forward model, but on the last hour of the month in the adjoint. Thus they were being calculated inconsistently in the adjoint compared to the forward model. We now checkpoint these emissions rather than recalculate them

See benchmark results 33c_001 - 33c_004

--Daven 23:08, 7 May 2012 (EDT)

Fix linoz adjoint (v33d)

While the linoz routine is linear, and should be self-adjoint, it isn't exactly self-adjoint. For example, given initial forcings of STT_ADJ = 0d0 in every grid cell, it can generate non-zero values of STT_ADJ as output, which is incorrect.

In this update we use the discrete adjoint based upon reformulating the code to be consistent with the strat chem routine for the non-Ox species.

See benchmark results 33d_001 - 33c_007

--Daven 23:14, 7 May 2012 (EDT)

Adjoint stability update (v33e)

Several fixes were made to increase the numerical stability of the code

  • Change the filter to 1d-10 in partition_adj.f
  • Better error trapping in gckpp_adj_Integrator.f90 to prevent NaNs following a failed integration step during the adjoint


A few other small changes to improve performance were included in this update. Overall, the benchmark performance is not impacted by these update, see 33e_001


--Daven 02:26, 10 May 2012 (EDT)

Outstanding issues not yet resolved in v33

TBD