Last edited [[Timestamp]] [[BR]] [[PageOutline]] = '''Using libIGCM(v1_1) library with ORCA2_LIM''' = [[BR]] == A - Purposes: == [[BR]] * Document the using of libIGCM for NEMO, in configuration ORCA2_LIM [[BR]] [[BR]] == B - Quick start guide: == [[BR]] * Define the following alias to use SVN : [[BR]] {{{ alias svn_ano='svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl' alias svn_libigcm='svn co http://forge.ipsl.jussieu.fr/libigcm/svn/tags/libIGCM_v1_1 libIGCM' alias svn_nemoligcm='svn co http://forge.ipsl.jussieu.fr/nemo/svn/branches/libIGCM/ORCA2_LIM/IGCM00 IGCM00' }}} * Create and go into working directory : [[BR]] {{{ mkdir TRY ; cd TRY }}} * Extract modipsl : [[BR]] {{{ svn_ano }}} * Extract NEMO : [[BR]] {{{ cd modipsl/util ./model NEMO }}} * Extract libigcm : [[BR]] {{{ cd ../ svn_libigcm }}} * Extract card for NEMO for libIGCM : [[BR]] {{{ cd config/ORCA2_LIM svn_nemoligcm }}} * Choosing ORCA2_LIM configuration : [[BR]] {{{ cd ../../modeles/UTIL ./fait_config ORCA2_LIM }}} * Install the makefiles : [[BR]] {{{ cd ../../util ./ins_make }}} * Compile : [[BR]] {{{ cd ../config/ORCA2_LIM gmake }}} * Submit Job : [[BR]] {{{ ( Editing at this point modipsl/config/ORCA2_LIM/IGCM00/config.card ) ../../util/ins_job cd IGCM00 qsub Job_NL1 }}} [[BR]] [[BR]] == C - List of possible errors : == [[BR]] === C.1 Errors in modipsl/config/ORCA2_LIM/IGCM00/Script_Output_''!JobName'' === [[BR]] * '''Error : TERM = (vt100) ${HOME:-.}/.profile: .bashrc: not found''' * '''Error : ksh: D--------------------------------------------------------------------==: not found''' it can depends on your '''.profile''' file. To solve it:: .profile file it can be like: «# .profile (idris) [[BR]] # Fichier d environnement a charger sur la frontale TX7 unix LINUX [[BR]] # Vous pouvez mettre a jour le fichier .profile_tx [[BR]] if [ `hostname` = "brodie" -a -f $HOME/.profile_tx ]; then [[BR]] . $HOME/.profile_tx [[BR]] # Fichier d environnement a charger sur les noeuds SX8 unix SUPER-UX [[BR]] # Vous pouvez mettre a jour le fichier .profile_sx [[BR]] elif [ `hostname` != "brodie" -a -f $HOME/.profile_sx ]; then [[BR]] . $HOME/.profile_sx [[BR]] else [[BR]] echo [[BR]] fi » * '''Error : cat: cannot open ........./modipsl/config/ORCA2_LIM/IGCM00/../.resol ''' : it is due to modipsl/libIGCM/AA_job file. To solve it:: change in this way: #-- Resolution FLAG for oasis input [[BR]] #RESOL=$(cat ${SUBMIT_DIR}/../.resol) [[BR]] RESOL= go in modipsl/config/ORCA2_LIM/IGCM00 directory cancel '''run.card.init''' and '''Job_''Name''' files and then do an '''ins_job''' again. (does not still fixed in libIGCM_v1_1) * '''Error : Input files and BC for NEMO DO NOT EXIST (i.e. sst_data.nc, sss_data.nc, geothermal_heating.nc, bathy_level.nc, etc...)''' IGCM_sys_Get, ERROR : regular file ...../OCE/ORCA2_LIM/bathy_level.nc DOES NOT EXIST . To solve it:: In this moment we've still to download on gaya.idris.fr:~/!reee512/NEMO/ORCA2_LIM_nemo_v3.tar file, and to untar it into the directory: ${R_BC}/OCE/ORCA2_LIM and where ${R_BC} is a variable that can be changed in modipsl/config/ORCA2_LIM/IGCM00/config.card file. * '''Error : IGCM_debug_Exit : IGCM_config_Initialize Error !PeriodState : Fatal ''' To solve it:: change line in modipsl/config/ORCA2_LIM/IGCM00/run.card !PeriodState=Fatal [[BR]] in [[BR]] !PeriodState= or rm modipsl/config/ORCA2_LIM/IGCM00/run.card * '''Error : compiling ''' To solve it:: For compiling problem on mercure and platine use new mod.def, fldread.F90, fait_AA_make, BB_make * '''ls: ERROR: Cannot access stack: No such file or directory''' in Script_Outputxxx: ( '''is it a problem with filemane'''? ) ( '''which is the difference between Out and OCE/Output directories???''' ) IGCM_sys_Put_Out : out_nemo /dmnfs13/cont003/flavoni/IGCM_OUT/ORCA2_LIM/N365d_5d/Out/N365d_5d_20030101_20031231_out_nemo [[BR]] IGCM_sys_MkdirArchive : /dmnfs13/cont003/flavoni/IGCM_OUT/ORCA2_LIM/N365d_5d/Out [[BR]] IGCM_sys_Chmod : 444 out_nemo [[BR]] --Debug1--> OCE [[BR]] --Debug1--> ICE [[BR]] Files that will be deleted before next period-run : [[BR]] ls: ERROR: Cannot access stack: No such file or directory [[BR]] -r--r--r-- 1 flavoni gen0826 89382956 Jan 27 15:03 N365d_5d_00016425_restart.nc [[BR]] -r--r--r-- 1 flavoni gen0826 10199324 Jan 27 15:03 N365d_5d_00016425_restart_ice.nc [[BR]] -r--r--r-- 1 flavoni gen0826 602134924 Jan 27 15:03 N365d_5d_5d_20030101_20031231_grid_T.nc [[BR]] -r--r--r-- 1 flavoni gen0826 499082356 Jan 27 15:03 N365d_5d_5d_20030101_20031231_grid_U.nc [[BR]] -r--r--r-- 1 flavoni gen0826 499082364 Jan 27 15:03 N365d_5d_5d_20030101_20031231_grid_V.nc [[BR]] -r--r--r-- 1 flavoni gen0826 1734363420 Jan 27 15:03 N365d_5d_5d_20030101_20031231_grid_W.nc [[BR]] -r--r--r-- 1 flavoni gen0826 150674996 Jan 27 15:03 N365d_5d_5d_20030101_20031231_icemod.nc [[BR]] -r--r--r-- 1 flavoni gen0826 1377 Jan 27 15:03 STRAIT.dat [[BR]] -r--r--r-- 1 flavoni gen0826 6943608 Jan 27 14:48 damping.coeff.nc [[BR]] -r--r--r-- 1 flavoni gen0826 355088 Jan 27 15:03 ice_evolu [[BR]] [[BR]] [[BR]] == D - List of possible remarks and suggestions == [[BR]] * '''can we leave these files if the don't exist anymore?????''' WARNING : IGCM_sys_Put_Out xxx_trends.nc DOES NOT EXIST [[BR]] WARNING : IGCM_sys_Put_Out xxx_diagap.nc DOES NOT EXIST [[BR]] WARNING : IGCM_sys_Put_Out output.abort.nc DOES NOT EXIST * '''Every time that we change modipsl/config/ORCA2_LIM/IGCM00/config.card''' we have to cancel modipsl/config/ORCA2_LIM/IGCM00/run.card.init cancel modipsl/config/ORCA2_LIM/IGCM00/Job_''Name'' and run ./modipsl/util/ns_job script * '''To perform a second simulation after a run with !PeriodState=Fatal''' cancel modipsl/config/ORCA2_LIM/IGCM00/stack_error, modipsl/config/ORCA2_LIM/IGCM00/Script_Output_''!JobName'' but do not cancel modipsl/config/ORCA2_LIM/IGCM00/run.card.init file, if not run.card file is not re-created. ( File run.card.init is created with ins_job script ) * '''Does it exists a caption file for run.card.init options?''' In to run.card.init file who can we undesrtand syntax of? : !TimeSeriesRunning=n [[BR]] !TimeSeriesCompleted= [[BR]] !SeasonalRunning=n [[BR]] Is there a reference file? * '''test with trunk/libIGCM''' To use libIGCM trunk version it is necessary to add in config.card in POST Session: !RebuildFromArchive=false NOTE: We wait for !http://forge.ipsl.jussieu.fr/libigcm/browser/tags version 2 to do changes in config.card: !http://forge.ipsl.jussieu.fr/nemo/svn/branches/libIGCM/ORCA2_LIM/IGCM00/ * '''Change in nemo.card or in nemo.driver variable: ORCA_NPDT_JOUR and OPA_NPDT_JOURS''' * '''Have informations about mailing system for good jobs, on ccrt and idris''' [[BR]] [[BR]] == E - To do list == [[BR]] * In config.card if !CalendarType=360d ==> Every month has 30 days, so you have to put DateEnd=2005-12-3'''0''' If not, for example DateEnd=2005-12-31, you will have another run, like your !PeriodLenght * run on CCRT machines (errors: config.card, in Job_NL1.e '''libIGCM/libIGCM_debug/libIGCM_debug.ksh: line 59: set: +A: invalid option''' # Declare a stack of functions calls # insert last argument of the Stack set +A IGCM_debug_Stack ${NULL_STR} set +A IGCM_debug_StackArgs ${NULL_STR} IGCM_debug_LenStack=0 ) * solve "test argument expected problem" * test mpi * '''test for Calendar Type, Output frequency and Restarts:'''[[BR]] '''Simulation environment''' #- Repository informations [[BR]] #-[[BR]] #-S- 1 cvs !anonymous@cvs.ipsl.jussieu.fr:/home/ioipsl/CVSROOT[[BR]] #-S- 2 cvs !sechiba@cvs.ipsl.jussieu.fr:/home/ssipsl/CVSREP[[BR]] #-S- 3 cvs !lmdzbrowse@cvs.lmd.jussieu.fr:/home/cvsroot[[BR]] #-S- 4 cvs !opa@cvs.ipsl.jussieu.fr:/home/opalod/CVSROOT[[BR]] #-S- 5 cvs !nemo@cvs.ipsl.jussieu.fr:/home/opalod/NEMOCVSROOT[[BR]] #-S- 6 cvs !inca@cvs.ipsl.jussieu.fr:/home/incaipsl/CVSROOT[[BR]] #-S- 7 svn --username nemo_user !http://forge.ipsl.jussieu.fr/nemo/svn [[BR]] #-S- 8 svn !http://forge.ipsl.jussieu.fr/igcmg/svn [[BR]] #-S- 9 svn !http://forge.ipsl.jussieu.fr/inca/svn [[BR]] #-S- 10 svn !http://forge.ipsl.jussieu.fr/libigcm/svn [[BR]] #-H- NEMO_IGCM NEMO[[BR]] #-H- NEMO_IGCM OPA[[BR]] #-H- NEMO_IGCM LIM[[BR]] #-H- NEMO_IGCM TOP[[BR]] #-H- NEMO_IGCM IOIPSL/src - svn - tag v2_1_4[[BR]] #-H- NEMO_IGCM libIGCM - svn -[[BR]] #-H- NEMO_IGCM NEMO sources and configurations - svn - trunk[[BR]] #-M- NEMO_IGCM !opatlod@locean-ipsl.upmc.fr[[BR]] #-C- NEMO_IGCM IOIPSL/tags/v2_1_4/src HEAD 8 IOIPSL/src modeles [[BR]] #-C- NEMO_IGCM trunk/libIGCM 47 10 libIGCM . [[BR]] #-C- NEMO_IGCM tags/nemo_v3_1_beta/NEMO HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM tags/nemo_v3_1_beta/UTIL HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM tags/nemo_v3_1_beta/CONFIG/GYRE_LOBSTER HEAD 7 GYRE_LOBSTER config [[BR]] #-C- NEMO_IGCM tags/nemo_v3_1_beta/CONFIG/ORCA2_LIM HEAD 7 ORCA2_LIM config [[BR]] #-C- NEMO_IGCM branches/libIGCM/ORCA2_LIM/IGCM00 HEAD 7 IGCM00 config/ORCA2_LIM [[BR]] Simulation duration = '''5 year ''' !PeriodLength = '''1Y''' timestep: rdt = '''5760''' equivalent to ORCA_NPDT_JOUR = '''15''' || || || '''Output Frequency''' || '''Output Frequency''' || '''Output Frequency''' || || || || 5d || 1M || 1Y || || '''Calendar Type '''|| 360d || '''ok?''' || '''ok''' || '''ok''' || || '''Calendar Type '''|| 365d || '''ok''' || '''ok''' || to do || || '''Calendar Type '''|| leap || to do || to do || to do || ok? = OK but there is still something that does not work (for 360d_5d: in Out directory miss the first Script_Output.1) '''NOTE: control in:''' - why in /dmnfs13/cont003/flavoni/IGCM_OUT/ORCA2_LIM/N360d_1m/OCE/Debug/*_ocean.output Namelist namrun job number no = '''0''' is EVER = 0???? * '''N365d_1m_20011231_restart.nc''' Control if file name is correct!!!! (my job is N365d_1m) [[BR]] [[BR]] == F - Remember: files to change for NEMO == [[BR]] * CHANGE nemo.driver for 360d Calendar Type!!!!!!!!! and domain.F90 ( see in !http://forge.ipsl.jussieu.fr/igcmg/browser/CONFIG/IPSLCM/IPSLCM5/trunk/EXP00/COMP and there is not "leap" parameter in all *.driver or *.card???? how does it work for Sébastien and Arnaud????????? ) * '''fait_AA_make''' difference with the old one: in #- Compilation options --- echo '#-Q- sx8mercure F_O = -f2003 nocbind -size_t64 -dw -Wf\"-A dbl4\" -sx'''8''' -C vopt -Wf"-P nh" -Wf',-pvctl noassume loopcnt=10000 -L transform' -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)' ( old version: echo '#-Q- sx8mercure F_O = -f2003 nocbind '''noopt_ieee''' -size_t64 -dw -Wf\"-A dbl4\" -sx6 -C vopt -Wf"-P nh" -Wf',-pvctl noassume loopcnt=10000 -L transform' -I $(MODDIR) -I $(MODDIR)/oce -I $(NCDF_INC)' ) * '''BB_make''' * '''AA_job''' difference with the old one: [[BR]] #RESOL=$(cat ${SUBMIT_DIR}/../.resol) [[BR]] '''RESOL=''' * '''domain.F90''' difference with the old one: in line 171 WRITE(numout,*) ' leap year calendar (0/1/'''30''') nleapy = ', nleapy * '''nemo.driver''' difference with the old one: added nleapy variable that corresponds to nbisex on opa.driver # nleapy leap year calendar (0/1) (30 for 360d) PAT_NLEAPY=$( supergrep nleapy ${SUBMIT_DIR}/PARAM/namelist ) in lines 141-151 case ${config_UserChoices_CalendarType} in [[BR]] leap)[[BR]] ORCA_NLEAPY=1;;[[BR]] noleap)[[BR]] ORCA_NLEAPY=0;;[[BR]] 360d)[[BR]] ORCA_NLEAPY=30;;[[BR]] esac[[BR]] in line 158 -e "s%${PAT_NLEAPY}% nleapy=${ORCA_NLEAPY}%" \ * '''fldread.F90''' difference with the old one: [[BR]] in line 74 INTEGER jf, '''ji, jj''' ! dummy indices[[BR]] in line 94-99: '''DO jj = 1, jpj''' '''DO ji = 1, jpi''' '''sd(jf)%fdta(ji,jj,1) = sd(jf)%fdta(ji,jj,2)''' '''END DO''' '''END DO''' in lines 164-169: '''sd(jf)%fnow(:,:) = ztintb * sd(jf)%fdta(:,:,1) + ztinta * sd(jf)%fdta(:,:,2)''' [[BR]] '''DO jj = 1, jpj''' '''DO ji = 1, jpi''' '''sd(jf)%fnow(ji,jj) = ztintb * sd(jf)%fdta(ji,jj,1) + ztinta * sd(jf)%fdta(ji,jj,2)''' '''END DO'''[[BR]] '''END DO''' in lines 172-181: '''sd(jf)%fnow(:,:) = sd(jf)%fdta(:,:,2) ! piecewise constant field'''[[BR]] '''DO jj = 1, jpj''' '''DO ji = 1, jpi''' '''sd(jf)%fnow(ji,jj) = sd(jf)%fdta(ji,jj,2) ! piecewise constant field''' '''END DO''' '''END DO''' * '''mod.def''' difference with the old one: #-S- 10 svn co -r 47 !http://forge.ipsl.jussieu.fr/libigcm/svn [[BR]] #-H- NEMO_IGCM IOIPSL/src - svn - tag v2_1_'''4''' [[BR]] #-C- NEMO_IGCM IOIPSL/tags/v2_1_'''4'''/src HEAD 8 IOIPSL/src modeles [[BR]] #-C- NEMO_IGCM '''trunk'''/'''libIGCM''' '''47''' 10 libIGCM . [[BR]] #-C- NEMO_IGCM '''tags'''/'''nemo_v3_1_beta'''/NEMO HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM '''tags'''/'''nemo_v3_1_beta'''/UTIL HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM '''tags'''/'''nemo_v3_1_beta'''/CONFIG/GYRE_LOBSTER HEAD 7 GYRE_LOBSTER config [[BR]] #-C- NEMO_IGCM '''tags'''/'''nemo_v3_1_beta'''/CONFIG/ORCA2_LIM HEAD 7 ORCA2_LIM config [[BR]] #-C- NEMO_IGCM '''branches/libIGCM/ORCA2_LIM/IGCM00''' HEAD 7 IGCM00 config/ORCA2_LIM [[BR]] ( '''note: NEMO_IGCM branches/libIGCM/ORCA2_LIM/IGCM00 has to be the last one command, if not it is impossible to download in ORCA2_LIM directory; because it does not exists yet''') ( old version: #-S- 10 svn !http://forge.ipsl.jussieu.fr/libigcm/svn [[BR]] #-H- NEMO_IGCM IOIPSL/src - svn - tag v2_1_6 [[BR]] #-C- NEMO_IGCM IOIPSL/tags/v2_1_6/src HEAD 8 IOIPSL/src modeles [[BR]] #-C- NEMO_IGCM tags/libIGCM_v1_1 HEAD 10 libIGCM . [[BR]] #-C- NEMO_IGCM branches/libIGCM/ORCA2_LIM/IGCM00 HEAD 7 IGCM00 config/ORCA2_LIM [[BR]] #-C- NEMO_IGCM trunk/NEMO HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM trunk/UTIL HEAD 7 . modeles [[BR]] #-C- NEMO_IGCM trunk/NVTK HEAD 7 . config [[BR]] #-C- NEMO_IGCM trunk/CONFIG/GYRE_LOBSTER HEAD 7 GYRE_LOBSTER config [[BR]] #-C- NEMO_IGCM trunk/CONFIG/ORCA2_LIM HEAD 7 ORCA2_LIM config [[BR]] ) [[BR]] [[BR]] Simona Flavoni last update: [[Timestamp]]