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.
Changeset 1953 for branches/DEV_r1784_mid_year_merge_2010/CONFIG/ORCA2_LIM/IGCM00/COMP/opa9.driver – NEMO

Ignore:
Timestamp:
2010-06-24T17:27:10+02:00 (14 years ago)
Author:
acc
Message:

ticket #684 step 3: Add in changes from the trunk between revisions 1784 and 1821. No conflicts so far

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DEV_r1784_mid_year_merge_2010/CONFIG/ORCA2_LIM/IGCM00/COMP/opa9.driver

    r1764 r1953  
    4949    (( DaysSinceJC = $( IGCM_date_DaysSinceJC ${DateBegin} ) + 1 )) 
    5050 
    51     # Definition from opa9.card of List_jobsbc and List_runsbc used to do to interannual and climatological runs  
     51    # Definition from opa9.card of List_jobsbc used to do to interannual and climatological runs  
    5252   IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/COMP/opa9.card Interannual List_jobsbc 
    53    IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/COMP/opa9.card Interannual List_runsbc 
    5453        set -A ListFormulationJobsbc -- \${opa9_Interannual_Listjobsc${opa9_Interannual_List_jobsbc}[*]} 
    55         set -A ListFormulationRunsbc -- \${opa9_Interannual_Listrunsbc${opa9_Interannual_List_runsbc}[*]} 
    5654 
    5755    ##--Variables used for XMLIO_SERVER configuration file 
     
    7169    if [ X${opa9_UserChoices_Interannual_Run} = Xy ] ; then 
    7270 
    73    typeset file fileo 
    74  
    75         eval NbFileInter=${#opa9_Interannual_List_jobsbc[*]} 
     71   typeset file  
     72 
     73   (( final_year =${InitYear} + ${PeriodLengthInYears} - 1 )) 
     74        NbFileInter=${#opa9_Interannual_List_jobsbc[*]} 
     75 
     76        (( NbFileInter_tot=${#opa9_Interannual_List_jobsbc[*]} * ${PeriodLengthInYears} )) 
    7677 
    7778   (( i = 0 )) 
    78    while [ $i -lt ${NbFileInter} ] ; do 
    79        eval file=${opa9_Interannual_List_jobsbc[$i]} 
    80        eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year - 1 )).nc 
    81        eval jobsbc_file_y=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_${year}.nc 
    82        eval jobsbc_file_yp1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year + 1 )).nc 
    83      # Copy of List_jobsbc in List_runsbc if this last one is empty  
    84             if [ X${opa9_Interannual_List_runsbc[0]} = X${NULL_STR} ] ; then 
    85          eval fileo=${opa9_Interannual_List_jobsbc[$i]} 
    86                eval runsbc_file_ym1=${file}_y$(( year - 1 )).nc 
    87                eval runsbc_file_y=${file}_y${year}.nc 
    88                eval runsbc_file_yp1=${file}_y$(( year + 1 )).nc 
    89        else 
    90          eval fileo=${opa9_Interannual_List_runsbc[$i]} 
    91                eval runsbc_file_ym1=${fileo}_y$(( year - 1 )).nc 
    92                eval runsbc_file_y=${fileo}_y${year}.nc 
    93                eval runsbc_file_yp1=${fileo}_y$(( year + 1 )).nc 
    94       fi 
    95  
    96        if [ X${Period} = X1 ] ; then 
    97       if [ ${month} -eq 01 ] ; then 
    98           IGCM_sys_Get ${jobsbc_file_ym1} ${runsbc_file_ym1} 
     79 
     80   while [ ${year} -le ${final_year} ] ; do #copy in ONCE of ALL necessary files for all PeriodLength 
     81        
     82       while [ $i -lt ${NbFileInter} ] ; do 
     83       
     84      eval file=${opa9_Interannual_List_jobsbc[$i]} 
     85      # download (year-1) if it is first year and first month of run 
     86      if [ X${year} = X${InitYear} ] ; then   
     87            if [ X${Period} = X1 ] ; then 
     88                           if [ ${month} -eq 01 ] ; then 
     89                  # if year-1 does not exist create a dummy file (NEMO will use same year) 
     90                  eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year - 1 )).nc 
     91                  if  [ ! -f ${jobsbc_file_ym1} ] ; then 
     92                     eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_${year}.nc 
     93                     eval runsbc_file_ym1=${file}_noy.nc 
     94                  else 
     95                      eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year - 1 )).nc 
     96                      eval runsbc_file_ym1=${file}_y$(( year - 1 )).nc 
     97                  fi 
     98 
     99                              IGCM_sys_Get ${jobsbc_file_ym1} ${runsbc_file_ym1} 
     100                           fi 
     101                    fi 
    99102      fi 
     103       
     104            # download year  
     105      eval jobsbc_file_y=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_${year}.nc 
     106      eval runsbc_file_y=${file}_y${year}.nc 
     107       
    100108      if [ ! -f ${runsbc_file_y} ] ; then 
    101109          IGCM_sys_Get ${jobsbc_file_y} ${runsbc_file_y} 
    102110      fi 
    103       if [ ! -f ${runsbc_file_yp1} ] ; then 
    104           IGCM_sys_Get ${jobsbc_file_yp1} ${runsbc_file_yp1} 
     111       
     112      # download (year+1) if it is last year of run 
     113      if [ X${year} = X${final_year} ] ; then    
     114    
     115          eval jobsbc_file_yp1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year + 1 )).nc 
     116          eval runsbc_file_yp1=${file}_y$(( year + 1 )).nc 
     117           
     118          if  [ ! -f ${runsbc_file_yp1} ] ; then 
     119          
     120              # if year+1 does not exist create a dummy file (NEMO will use same year) 
     121         if  [ ! -f ${jobsbc_file_yp1} ] ; then 
     122             eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_${year}.nc 
     123                eval runsbc_file_ym1=${file}_noy.nc 
     124         else 
     125             eval jobsbc_file_ym1=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}_$(( year + 1 )).nc 
     126             eval runsbc_file_ym1=${file}_y$(( year + 1 )).nc 
     127         fi 
     128         IGCM_sys_Get ${jobsbc_file_yp1} ${runsbc_file_yp1} 
     129          fi 
     130           
    105131      fi 
    106        else  
    107       if [ ! -f ${runsbc_file_yp1} ] ; then 
    108           IGCM_sys_Get ${jobsbc_file_yp1} ${runsbc_file_yp1} 
    109       fi 
    110        fi  
    111  
    112        (( i = i + 1 )) 
     132      (( i = i + 1 )) 
     133    
     134       done 
     135    
     136       (( year = year + 1 )) 
     137     
     138       (( i = 0 )) 
    113139   done 
    114140    # End interannual 
    115141    elif [ X${opa9_UserChoices_Interannual_Run} = Xn ] ; then 
    116142    # Climatological run 
    117        typeset file fileo 
     143       typeset file  
    118144 
    119145       eval NbFileInter=${#opa9_Interannual_List_jobsbc[*]} 
     
    123149            eval file=${opa9_Interannual_List_jobsbc[$i]} 
    124150            eval jobsbc_file=${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_OPA_version}/${file}.nc 
    125             if [ X${opa9_Interannual_List_runsbc[0]} = X${NULL_STR} ] ; then 
    126          eval fileo=${opa9_Interannual_List_jobsbc[$i]} 
    127                eval runsbc_file=${fileo}.nc 
    128        else 
    129          eval fileo=${opa9_Interannual_List_runsbc[$i]} 
    130                eval runsbc_file=${fileo}.nc 
    131       fi 
     151            eval runsbc_file=${file}.nc 
    132152 
    133153            IGCM_sys_Get ${jobsbc_file} ${runsbc_file} 
     
    224244   NEMO_END=$( echo $( awk "BEGIN { printf \"%0${PRECIS}d\",${OPA_NITEND} }" ) )  
    225245 
    226     sed -e "s%${PAT_CEXPER}%       cn_exp=\"${config_UserChoices_JobName}\"%" \ 
     246    sed -e "s%${PAT_CEXPER}%       cn_exp=\"${config_UserChoices_JobName}\"%"  \ 
    227247   -e "s%${PAT_NIT000}%       nn_it000=${OPA_NIT000}%"                    \ 
    228248   -e "s%${PAT_NITEND}%       nn_itend=${OPA_NITEND}%"                    \ 
    229    -e "s%${PAT_RESTAR}%       ln_rstart=${OPA_LRSTAR}%"                 \ 
     249   -e "s%${PAT_RESTAR}%       ln_rstart=${OPA_LRSTAR}%"                   \ 
    230250   -e "s%${PAT_NSTOCK}%       nn_stock=${OPA_NSTOCK}%"                    \ 
    231    -e "s%${PAT_NRSTAR}%       nn_rstctl=${OPA_NRSTDT}%"                    \ 
    232    -e "s%${PAT_NDATE0}%       nn_date0=${PeriodDateBegin}%"                \ 
     251   -e "s%${PAT_NRSTAR}%       nn_rstctl=${OPA_NRSTDT}%"                   \ 
     252   -e "s%${PAT_NDATE0}%       nn_date0=${PeriodDateBegin}%"               \ 
    233253   -e "s%${PAT_NMSH}%         nn_msh=${OPA_NMSH}%"                        \ 
    234    -e "s%${PAT_NLEAPY}%       nn_leapy=${OPA_NLEAPY}%"                 \ 
     254   -e "s%${PAT_NLEAPY}%       nn_leapy=${OPA_NLEAPY}%"                  \ 
    235255   namelist > namelist.tmp 
    236256 
    237257    IGCM_sys_Mv namelist.tmp namelist 
     258 
    238259 
    239260    # update xmlio_server.def 
Note: See TracChangeset for help on using the changeset viewer.