UM User Group |
Main /
Hosing ExperimentFreshwater forcing (“water hosing”) can be added to the ocean in Had CM 3 or similar models by using the flux adjustment machinery of the UM. The standard Had CM 3 uses a freshwater flux adjustment field, which is constant in time, to represent the freshwater added to the ocean by melting of icebergs from Greenland and Antarctica, and to close the water budget for inland drainage basins. To impose an extra freshwater flux can be done by making a new ancillary file with the required flux added to the usual flux adjustment. The usual flux adjustment can be obtained by diagnosing it (ocean stash code 186) from a Had CM 3 run or from the standard flux adjustment ancillary file waterfix.ancil. The file is named in ocean GCM → input files → climatologies and potential climatologies → flux correction fields in the UMUI. If this is available as PP field it can be manipulated in IDL for instance. Here is the code to add 0.1 Sv in the Atlantic between 50–70N (the standard for the CMIP coordinated THC experiment). The flux adjustment is in kg m-2 s-1. ; read in field atl=ppa(‘o_atl_basin_ts_288_143.pp’) ; Atlantic mask atl.data(where(atl.data ne atl.bmdi))=0 lat=pp_coords(atl,/ygen,/field) lon=pp_ff(‘wraplongitude(a,−180)’,pp_coords(atl,/field)) atl.data(where(atl.data ne atl.bmdi $ and lat.data ge 50.0 and lat.data le 70 $ and lon.data ge −81 and lon.data lt 22))=1 area=pp_area_total(atl,/box) atl.data(where(atl.data eq 1))=1e8/area ; 1e8 kg s-1 = 0.1 Sv atl.data(where(atl.data eq atl.bmdi))=0 field=pp_ff(‘a+b’,field,atl,/quiet) field.lbuser(3)=186 field.lbfc=672 ; then write out new field The new field has to be converted into an ancillary file using pptoanc. Here is an example namelist for this: &SIZES field_types=1,n_times=1,nlevels=1,n_pp_files=1, n_freq_waves=1,n_dir_waves=1, stash_code=186, field_code=672, nlevs_code=1, unit_no=20, len_intc=15, len_realc=6, len1_levdepc=1, len2_levdepc=1, len1_rowdepc=1, len2_rowdepc=1, len1_coldepc=1, len2_coldepc=1, len1_flddepc=1, len2_flddepc=1, len_extcnst=1, rmdi_input=−1e30 / &LOGICALS add_wrap_pts=.true., periodic=.false., single_time=.true., ibm_to_cray=.false., compress=.false., wave=.false., levdepc=.false.,rowdepc=.false.,coldepc=.false.,flddepc=.false., extcnst=.false., pack32=.false.,pphead=.true., grid_of_tracer=.true., field_order=.false. / &FIRST_VT fvhh=0,fvdd=0,fvmm=0,fvyy=0 / &INTERVAL year360=.true.,ivhh=0,ivdd=0,ivmm=0,ivyy=0 / &LAST_VT lvhh=0,lvdd=0,lvmm=0,lvyy=0 / &HEADER_DATA fixhd(2)=2, fixhd(3)=4, fixhd(4)=0, fixhd(5)=4, fixhd(8)=2, fixhd(9)=2, fixhd(10)=0 / The UMUI panel mentioned above should be modified to use this new file, and set to be updated every 999 years. (It would be sufficient just to configure it, but the UM doesn’t support that.) To check the right field is being used, it is sensible to diagnose 186 and have a look at it. |