Report on POP & CICE of RACM components

Download Report

Transcript Report on POP & CICE of RACM components

Report on POP & CICE of
RACM components
Jaromir Jakacki, IO PAS
Main problems during period
• Extended domain in POP
• Netcdf of the ocean component does not work
correctly (fixed temporary - need to be fixed
using other make file)
• Kinetic energy problem was resolved after when
wind are dumped – successful integration of 6
years for the ocn/ice/datm/slnd components
• Also negative area problem was fixed when
coupling time step was set to 1800 s
Extended domain
• Monthly climatology data was interpolated for
extended domain (temperature and salinity from
PHC 3.0)
• Some code was added to read those data and
mask (ocn_init_mct routine)
• Some code was added to interpolate and merge
data with ocean domain at coupling time step
(ocn_setdef_mct routine)
• All was tested and seems to be working fine,
only mask will require a little work
Extended domain – interpolation
data (at coupling time step)
1) Read in data (monthly SST, SSS (PHC 3.0) and
mask)
2) Interpolation data in occ_comp_mct.F90 at each
coupling time step
simple method – linear interpolation
Y = AX+B
For two months
Y1=AX1+B and Y2=AX2+B
A=(Y2-Y1)/(X2-X1) and B=y2-AX2
3) Merge interpolated data with ocean sea surface
temperature
Extended domain (24 pointscurrent version has 48)
SST_OUT=SST_CLIM*mask+SST_POP*(1-mask)
Interpolated and merged extended domain (2nd
result) – sst POP and climatology sst (PHC)
Interpolated extended domain (1st
result)
Interpolated and merged extended domain
(2nd result) – sss POP and climatology sss
Examples of results from ocn and
ice components
Examples of results from ocn and
ice components
Future plans
• We are going to switch to other grid (will not
exactly match with current)
• Mask for merging sst and sss requires some
work. But only mask. It is ready for running,
mask can be replaced at any time
• After switching to new grid we are able to begin
integration
- I am planning to begin to work with
ocn/ice/wrf/slnd model using converted old
ocean restart file
New grid
Important things
• Net cdf in ocean model – optional compilation of the
io_netcdf.F90, io.F90, io_types.F90 and io_binary.F90
• Diagnostic output in all models (performance) there is
debbuging level from 0 to 4? (not sure), but there is a lot
of write statements from all cores
• Sometimes model hangs when after saving ocean restart
file (I have no idea – there is no output – jobs are killed
because of wall time) – about 20% of jobs
• Computer resources – waiting time for one 256
processors job is about 2 days!!!!
Average time [sec]
Performance chart for all models
Number of cores
Code for linear interpolation
(just for checking – maybe somebody will
see mistake – not for presentation)
data data_days /-14.5,15.5,45,74.5,105,135.5,166,196.5, &
227.5,258,288.5,319,349.5,380.5/
call mct_aVect_copy(avSST12,av_xp1,temp_flds(xp1),'fld')
call mct_aVect_copy(avSST12,av_xp2,temp_flds(xp2),'fld')
av_A%rAttr(1,:)=(av_xp2%rAttr(1,:)-av_xp1%rAttr(1,:))/(data_days(xp2)-data_days(xp1))
av_B%rAttr(1,:)=av_xp2%rAttr(1,:)-av_A%rAttr(1,:)*data_days(xp2)
av_l_temp%rAttr(1,:)=av_A%rAttr(1,:)*rday+av_B%rAttr(1,:)
!interpolation of salinity
call mct_aVect_copy(avSSS12,av_xp1,salt_flds(xp1),'fld')
call mct_aVect_copy(avSSS12,av_xp2,salt_flds(xp2),'fld')
av_A%rAttr(1,:)=(av_xp2%rAttr(1,:)-av_xp1%rAttr(1,:))/(data_days(xp2)-data_days(xp1))
av_B%rAttr(1,:)=av_xp2%rAttr(1,:)-av_A%rAttr(1,:)*data_days(xp2)
av_l_salt%rAttr(1,:)=av_A%rAttr(1,:)*rday+av_B%rAttr(1,:)