New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
user/flavoni/libIGCM/iom_put – NEMO
wiki:user/flavoni/libIGCM/iom_put

Version 33 (modified by mafoipsl, 14 years ago) (diff)

--

Integrating IOM_PUT


Integrating IOM_PUT


Working tests:

  1. test with iom_put (compiled with key_iomput):

work/cont003/flavoni/LIBIGCM_NEMO/LIKE-COUPLED/test_iom_lib14_rev1661_WR/modipsl/config/ORCA2_LIM/IGCM_lim14_io

KO: plantage au tout début : **** 90 Fatal exception PROG=mod_event_client.event__set_time ELN=164(4002dc900)

  1. same test but without iom_put (in opa9.card io_xml=n):

work/cont003/flavoni/LIBIGCM_NEMO/LIKE-COUPLED/test_lib14_rev1661_WR/modipsl/config/ORCA2_LIM/IGCM_lim14

OK. Voir atlas et monitoring là : http://dods.extra.cea.fr/data/flavoni/ORCA2_LIM2/lib14if



today 30/10/2009 if you download ./model NEMO_IGCM you can't use iom_put.

If you want activate iom_put

If you want to activate iom_put you have to:

  • download model NEMO_IGCM:
    cd modipsl/util 
    ./model NEMO_IGCM 
    
  • comment lines in dommsk:
           ij0 = 115   ;   ij1 = 115 
            ii0 = 145   ;   ii1 = 146   ;   fmask( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 4.0e0 
            ij0 = 116   ;   ij1 = 116 
            ii0 = 145   ;   ii1 = 146   ;   fmask( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 1:jpk ) = 4.0e0 
    
  • put in namelist
     rn_bfri1    =    0.e-4 
    
  • Add key in modipsl/config/ORCA2_LIM/scripts/BB_make.ldef
    key_iomput
    
  • Do an ins_make :
    ./modipsl/util/ins_make
    

  • Go in ORCA2_LIM directory :
    cd modipsl/config/ORCA2_LIM
    
  • Compile :
    gmake
    
  • you can copy modified files (opa9.driver, opa9.card, lim2.card, POST directory) that you find in:
    brodie: /workdir/rech/eee/reee605/LIBIGCM_NEMO/LIKE-COUPLED/test_claire/  
    mercure: /work/cont003/flavoni/LIBIGCM_NEMO/LIKE-COUPLED/test_iom_lib14_rev1661_WR/modipsl/config/ORCA2_LIM/IGCM_lim14_io/COMP  
    
  • Change in opa9.card:
    io_xml='''y'''  
    


My job: modifications done till 30/10/2009 to prepare files for using iom_put:

Modifications done till now were necessary if not it was not possible to have good file for iodef.xml

  1. Changed revision for nemo in modispl/util/mod.def in NEMO_IGCM:

#-H- NEMO_IGCM NEMO trunk revision 1661
(revision without bottom friction bug)

in lim2.card

  1. changed PREFIX name for output .nc file
    [OutputFiles?]
    List= (${PREFIX_NEMO}_icemod.nc, ${R_OUT_ICE_NWRITE}/${PREFIX}_${WF1}_icemod.nc, Post_1M_icemod)

  1. removed deptht (for monitoring, no good to do ncrcat in 3 dimensions for ice)
    [Post_1M_icemod]
    GatherWithInternal? = (nav_lon, nav_lat, time_counter)
  1. removed ileadfra for the moment
    TimeSeriesVars? = (iicethic, isnowthi, iicevelu, iicevelv)

NOTE: for this moment ileadfra removed because in iomdef.xml there are new variables' names (like IPPC requested) and ileadfra there is no more in output from nemo's code, waiting for that nemo put in output 1-soicecov (=ileadfra)

in opa9.card

  1. changed PREFIX name for output .nc file
    [OutputFiles?]
    List= (${PREFIX_NEMO}'_grid_T.nc, ${R_OUT_OCE_NWRITE}/${PREFIX}_${WF1}_grid_T.nc, Post_1M_grid_T),\
    (${PREFIX_NEMO}_grid_U.nc, ${R_OUT_OCE_NWRITE}/${PREFIX}_${WF1}_grid_U.nc, Post_1M_grid_U),\ [BR]] (${PREFIX_NEMO}_grid_V.nc, ${R_OUT_OCE_NWRITE}/${PREFIX}_${WF1}_grid_V.nc, Post_1M_grid_V),\
    (${PREFIX_NEMO}_grid_W.nc, ${R_OUT_OCE_NWRITE}/${PREFIX}_${WF1}_grid_W.nc, Post_1M_grid_W),\

(in opa9.driver ${PREFIX_NEMO} is:
${PREFIX_NEMO}=${PREFIX}_{WF1} if we use iomput
${PREFIX_NEMO}=${PREFIX_NWRITE}_${DATE_OPA} if not )

in opa9.driver

  1. possibility to use io_server (but not testing now)
    ##--Variables used for XMLIO_SERVER configuration file
    # using_server: .TRUE.(.FALSE.) to use(bypass) the io_server
    PAT_SERVER=$( supergrep using_server ${SUBMIT_DIR}/PARAM/xmlio_server.def )
  1. Added output_frequency in days, if not xml file is not correct
    (( output_frequency_oce = $WriteFrequencyInDays? * 86400 ))
    (( output_frequency_ice = $WriteFrequencyInDays? * 86400 ))
  1. replaced output filenames in xml file
    sed -e "s/<file_name_grid_T>/ \"${PREFIX_NEMO}_grid_T.nc\"/" \
    -e "s/<file_name_grid_U>/ \"${PREFIX_NEMO}_grid_U.nc\"/" \
    -e "s/<file_name_grid_V>/ \"${PREFIX_NEMO}_grid_V.nc\"/" \
    -e "s/<file_name_grid_W>/ \"${PREFIX_NEMO}_grid_W.nc\"/" \
    -e "s/<file_name_icemod>/ \"${PREFIX_NEMO}_icemod.nc\"/" \
    -e "s/<output_frequency_oce>/ \"${output_frequency_oce}\"/g" \
    -e "s/<output_frequency_ice>/ \"${output_frequency_ice}\"/g" \
    iodef.xml > iodef.xml.tmp

IGCM_sys_Mv iodef.xml.tmp iodef.xml

  1. determine number of day(s) in WriteFrequency? :
    case ${config_UserChoices_OCE_WriteFrquency} in

1Y|1y)

(( WriteFrequencyInDays? = $( IGCM_date_DaysInYear $year ) )) ;;

1M|1m)

(( WriteFrequencyInDays? = $( IGCM_date_DaysInMonth $year $month ) )) ;;

5D|5d)

(( WriteFrequencyInDays?=5 )) ;;

1D|1d)

(( WriteFrequencyInDays?=1 )) ;;

*)

IGCM_debug_Exit "IGCM_config_OCE_WriteFrquency " ${config_UserChoices_OCE_WriteFrquency} " invalid write frquency length : choose in 1Y, 1M, 5D, 1D." IGCM_debug_Verif_Exit ;;

esac

  1. Created POST directory under $SUBMIT_DIR:
    In POST directrory there are:
    monitoring01_lim2_ORCA2.cfg
    monitoring01_opa9_ORCA2.cfg

In monitoring01_lim2_ORCA2.cfg I removed ileadfra because now this variable does not exists, and if I don't use "dynamic monitoring" I can't have ICE monitoring (monitoring don't create monitoring images if there is one or more variables that does not exist).

see https://forge.ipsl.jussieu.fr/nemo/wiki/private/libIGCM/postprocessingpage

At this point: open problems:

  1. Don't have ATLAS for "ice cover": because new variable is named soicecov and in atlas is written ileadfra
  2. to do: calcul for 2 frequencies (waiting for a new iodef.xml)

Tests on vargas

  • Directory :

/workgpfs/rech/psl/rpsl003/VARGAS/NEMO/CLIM_IOM/modipsl/config/ORCA2_LIM

  • Main idea :
    • use xml.def to list fields and file for differents types of output (1M, 1D, 1Y, ...)
      • Usefull for grid_[TUVW] and icemod files
      • old fashion for diaptr
    • use -1 for 1Y length simulation to have monthly (variable length) outputs
      • OK for xml files
      • nead adjustment for old fashion (diaptr) files
  • Modifications :
    • COMP directory :
      • opa9.driver :
        • use Vxx_enable variable to set information in xml.def file (1M enable for example)
      • opa9.card :
        • add a list of possible files : ORCA2_1m_grid_T.nc ...
        • add a Patch for time counter (to rename the first time axis time_counter, t_ave_01month allowable, works when no tule_counter rename is required)
          • See : /workgpfs/rech/psl/rpsl003/VARGAS/NEMO/CLIM_IOM/modipsl/libIGCM/libIGCM_post/IGCM_Patch_20091030_histcom_time_axis.ksh
        • delete sophtldf variable in monitoring list
      • lim2.card :
        • add a list of possible files : ORCA2_1m_icemod.nc ...
        • add a Patch for time counter (to rename the first time axis time_counter, t_ave_01month allowable, works when no tule_counter rename is required)
        • delete deptht variable in gather list
    • PARAM directory :
      • add iodef.xml
      • xmlio_server.def
    • POST directory :
      • add monitoring01_lim2.cfg file :
        • a copy (take care : without _ORCA2) of /home/rech/psl/rpsl035/atlas/monitoring01_lim2_ORCA2.cfg
        • without ileadfra_south and ileadfra_north lines
  • 4 tests :

All tests have been done with 1Y atlas/monitoring :

  • Modifications in config.card for all tests :
    JobNumProcTot=16
    RebuildFrequency=1Y
    DateEnd=2002-12-31
    TimeSeriesFrequency=1Y
    SeasonalFrequency=1Y
    WriteFrequency="1M 1D"
    WriteFrequency="1M 1D"
    
PeriodLength? 1M 1Y
360d NLIO5 / IGCM360MO NLIO7 / IGCM360
leap NLIO20 /IGCM365MO6 NLIO15 / IGCM3656

NLIO5

NLIO7

NLIO15

  • Status : KO
  • Modifications in IGCM3656/config.card
    JobName=NLIO15
    CalendarType=leap
    
  • Issues :
    • diaptr not saved name : NLIO15_CU*_20010101_20011231_diaptr_0000.nc
      • ZNL atlas empty
      • Monitoring : only ICE variables, only 1 year,
      • will work better when diaptr files will exist
  • Issues already known :
    • No mask in atlas for continents
    • ileadfra maps empty
  • See : http://dodsp.idris.fr/rpsl003/ORCA2_LIM2/NLIO15

NLIO20

Open questions

  • waiting for same test on brodie in mono (Claire?)

Proposition

Add a directory IGCM01 with this COMP, PARAM, POST files here : https://forge.ipsl.jussieu.fr/nemo/browser/branches/libIGCM/ORCA2_LIM