Developing Releases Bugfixes

From UKCA
Revision as of 12:08, 30 January 2014 by Mdalvi (talk | contribs) (→‎Fixes for issues found at vn8.4/5)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page contains a listing of all the bugfixes required for the Developing releases.

Fast-JX dm_3d bug

The calculation of mass in ukca_fastjx.F90 is incorrect. This will affect low-top models more, but will also affect high-top models.

The line

     dm_3d(:,:,(model_levels+1))     = pz_3d(:,:,model_levels+1)/g 

should be replaced with

     dm_3d(:,:,(model_levels+1))     = pz_3d(:,:,model_levels)/g 

Please include the following branch in the PUMA UMUI

fcm:um_br/dev/luke/vn8.4_FJX_dm_3d_bugfix/src

at revision 13624.

OH+MGLY reaction rate co-efficient bug

1. StratTrop (CheST chemistry) - Met Office

At UMvn8.2, existing branch vn8.2_ukca_update_rate_coeffs now includes bugfix - Revision 41942 without bugfix; Revision 61297 with bugfix

At UMvn8.4, updated rates (without bugfix) are on the trunk. Therefore, the bugfix is in a new branch called vn8.4_ukca_bugfix_strattrop_OHMGLY_rxnrate, revision no 61296.

2. StratTrop (CheST chemistry) - PUMA

At UMvn8.2, existing branch vn8.2_ukca_update_rate_coeffs now includes bugfix - Revision 9984 without bugfix; Revision 13625 with bugfix

At UMvn8.4, updated rates (without bugfix) lodged to the trunk. Therefore, the bugfix is in a new branch called vn8.4_ukca_bugfix_strattrop_OHMGLY_rxnrate, revision no 13627.

3. TropIsop (CheT) - Met Office

At UMvn8.4, existing branch vn8.4_ukca_update_tropisop_rate_coeffs now includes bugfix - Revision 58058 without bugfix; Revision 61298 with bugfix

4. TropIsop (CheT) - PUMA

At UMvn8.4, existing branch vn8.4_ukca_update_tropisop_rate_coeffs now includes bugfix - Revision 13358 without bugfix; Revision 13628 with bugfix

Lightning NOx improvements/fixes

This branch includes improvements to the Lightning emissions calculation (e.g. removing model resolution-dependance) as well as fixing minor a bug found in the flash calculation. The changes were lodged at vn8.3 and hence automatically available in the trunk for UM8.4 configurations.

The branch on PUMA at vn8.2 is : fcm:um_br/dev/foconnor/vn8.2_L-NOx_for_UKCA at revision 11908

The equivalent branch on Met Office FCM is: fcm:um_br/dev/hadfo/vn8.2_L-NOx_for_UKCA at revision 56098

Note: This branch is now found to be incompatible with the vn8.2_ukca_combined_scav branch. This may require the user to create a working copy that merges in both the branches.

Fixes for issues found at vn8.2

The various issues found soon after a major upgrade of UKCA at vn8.2 are part of a combined branch that was lodged subsequently at vn8.3. The bugs/fixes include:

1. Improper construction of filename for Background Aerosol data used for Fast-JX/ HetPSC

2. SO3 missing from UKCA_CSPECIES

3. MODE diagnostics indexing issue

4. Correct the methane initialisation when l_prescribe_ch4 option is selected

5. Logic for Heterogenous reactions under TropIsop Chemistry

6. String length differences in Strat+Trop reaction rate definition array

7. Incorrect Loop control for a Fast-JX routine

8. Remove N2O from lumped N species for Stratospheric Chemistry

9. Fix an initialisation issue that caused consecutive runs to give different results

10. Incorrect read-size for a Fast-JX lookup table

11. Minor write statement formatting issues

12. Minor variable/ array initialisation issues.

The branch on PUMA at vn8.2 is:

fcm:um_br/dev/nhsavage/vn8.2_pkg_ukca_bugfixes at revision 9882

The branch on the Met Office FCM is:

fcm:um_br/pkg/Share/vn8.2_pkg_ukca_bugfixes at revision 44169

Fixes for issues found at vn8.4/5

1. Gravitational settling : A multiplication factor used for sensitivity tests was lodged in error as part of the merge at vn8.2. This only affects GLOMAP. In the routine: src/atmosphere/UKCA/ukca_vgrav_av_k.F90, at the line:

   vgrav_av(:)=0.5*pref(:)*(term3+term4*kng(:))      ! reduced by 50 %

remove the 0.5 (and comment). See also: PUMA - fcm:um_br/dev/dan2012/vn8.4_Sedimentation_Fix

2. ACTIVATE- saturation mixing ratio: A bug in the Abdul-Razzak & Ghan droplet activation scheme whereby the saturation mixing ratio is passed through instead of the saturation vapour pressure. This will only affect GLOMAP simulations with Indirect effects ON.

See: PUMA- fcm:um_br/dev/dan2012/vn8.4_Nenes_Activate - revisions 13540 and 13574

3. Bug in TropIsop/ CheT -- Q: Sp. humidity or Q is assumed to be Volume mixing ratio in the chemistry, but is available as a Mass mixing ratio from the UM. In the code sections related to TropIsop/ CheT configurations, the conversion from MMR to VMR is missing. In the routine, src/atmosphere/UKCA/ukca_chemistry_ctl.F90 the line:

   zq(:) = RESHAPE(q(:,:,k),(/theta_field_size/)) 

should be changed to

  zq(:) = RESHAPE(q(:,:,k)/c_h2o,(/theta_field_size/))

This conversion takes place implicitly for StratTrop/ CheST configurations during conversion of all tracers (Q is handled as a tracer by UKCA in Stratospheric configurations).

4. Indexing bug for all_tracers array : This may be present in Colin's _combined_scav branches pre-vn8.6 and only affects ENDGAME configurations. In the routine src/atmosphere/UKCA/ukca_main-ukca_main1.F90 at the call to UKCA_EMISSION_CTL, the 2nd all_tracer() argument:

   all_tracers(1:row_length,1:rows,:,n_chem_tracers+           &   
               n_aero_tracers+1:n_chem_tracers+n_aero_tracers+ &   
               n_mode_tracers),                                &

should be changed to

   all_tracers(1:row_length,1:rows,1:model_levels,             & 
               n_chem_tracers+n_aero_tracers+1:n_chem_tracers+ & 
               n_aero_tracers+n_mode_tracers),                 &

i.e add 1:model_levels to the array index.

5. Indexing bug for sin_v_latitude : This affects ENDGAME configurations at vn8.5 only. In the routine src/atmosphere/UKCA/ukca_main-ukca_main1.F90, there are two places which use:

  ASIN(sin_v_latitude(:,1:n_rows)) these should be changed to: ASIN(sin_v_latitude(:,0:n_rows-1)).

This fix was lodged at UM8.5.

6. Indexing bug for f3_at_u : This affects ENDGAME configurations at vn8.5/8.6 only. In the routine src/atmosphere/UKCA/ukca_main-ukca_main1.F90, all references to f3_at_u should be changed to

  f3_at_u(udims%i_start:udims%i_end,udims%j_start:udims%j_end)

In src/atmosphere/UKCA/ukca_fastjx.F90 this change is required at one location, but will also require an additional line in the USE statements list

  USE atm_fields_bounds_mod,   ONLY:udims


All the above fixes (except 5, already lodged) are available in the branch:

Met Office- fcm:um_br/dev/hadzm/vn8.6_ukca_chem_mode_fixes