Conservation and rates of change of temperature and salinity in HADCM3


This page describes

If you contemplate introducing or modifying the formulation of any of the schemes in the ocean model, please remember to amend or add diagnostics for rates of change. These diagnostics have scientific interest, because they reveal the relative importance of different processes, as well as allowing an analysis of the conservation properties of the model. In fact, it would seem an obvious kind of check on a new or modified scheme that it should conserve, and such diagnostics are a straightforward way to make this check.

Diagnostics

The rates of change of temperature and salinity are expressed in kelvin per gigasecond (1e-9 K s-1) and ocean salinity units per gigasecond (1e3 PSU * 1e-9 s-1) respectively. To convert a dtheta/dt diagnostic into J m-3, multiply by !um_values.rhocp/1e9 in PV-WAVE (you will need @um_values to make this system variable available). To convert it to W m-2, multiply by the thickness of the layer (use pp_level). Note that this will be per unit area of the layer in question, not of the ocean surface.

It is not so obvious how to interpret a dsalinity/dt diagnostic as a flux. One possibility is to multiply by 1e3*50*86400*360/1e9/0.035 and the layer thickness. This converts it to a freshwater flux in mm y-1 into a layer of water 50 m thick at 35 PSU, a negative flux corresponding to a positive dsalinity/dt.

How to set up a 4.3 job

To set up the diagnostics for rates of change of temperature and salinity in a HADCM3 run at 4.3,

How to set up a 4.4 job

If you have copied a properly set-up HADCM3 job at 4.4, no changes should be needed. Such a job is aaxzn of Tim Johns (hadba). The job should use the version ~t20ba/mods/vn4.4/hadom3/fom1f404 of the Griffies mod, which produces correct rate diagnostics, and should include the fix ~t20ba/mods/vn4.4/hadom3/fjg1f404. The user ocean stashmaster file ~hadba/umui_jobs/prestash/griff_4.4 is needed.

The same list of diagnostics is proposed as at 4.3, with the same time profiles. The time profile TDAYMNEV can be set up without hand-edits at 4.4. It should have a "sampling offset" of 1, while TDAYMNOD will be identical except that it will have the usual "sampling offset" of 0.

How to check conservation

To check the conservation of the model and each of the processes, carry out a UM run with the above diagnostics for a reasonable period e.g. a season or a year. You need means over this period, and also instantaneous temperature and salinity fields from the beginning and end of the period. In a standard HADCM3 run,
  0 101 POTENTIAL TEMPERATURE (OCEAN)  DEG. TYEAR    DO20     UPOYR    Y Y SYS
  0 102 SALINITY (OCEAN)       (PSU-35)/100 TYEAR    DO20     UPOYR    Y Y SYS
should do the trick. Make sure these are output without PP packing for maximum accuracy, by using packing profile 0 on the appropriate ordinary PP output stream (this is the case in standard HADCM3 runs).

The wave procedure check_hadcm3_rates will check the conservation properties of the model, given the above data. For each level of the model, it compares the change in temperature and salinity over the period with the sum of all the physical processes. It also calculates the time-average of each of the processes separately. I have done this calculation for a year of the HADCM3 control run.

Appendix

The ocean model has a leapfrog timestep scheme, except for the first hour of the day, which is an explicit step from 0Z to 1Z. The second timestep is 0Z to 2Z, the third 1Z to 3Z, ..., and the 24th is 22Z to 0Z. Therefore, when comparing the difference in two instantaneous 0Z dumps with rates of change from TRACER, we want time-means over the even timesteps only. This is not possible in the UMUI at 4.3 - hence the hand-edit.

The exception is the Robert filter. This acts to prevent the two time levels from diverging, by nudging the central time-level T towards the mean of the values at T+1 and T-1. For instance, after the 3rd TRACER timestep it modifies the 2Z values (the starting-point of the 4th timestep) towards the mean of the 1Z and 3Z values. Hence the Robert filter on odd timesteps affects the even-hour values, and should be included in the calculation.


Jonathan Gregory / hadsa@hc0400 / jmgregory@meto.gov.uk