source: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_WORK/EXP00/COMP/oasis.driver @ 654

Last change on this file since 654 was 653, checked in by sdipsl, 15 years ago
  • Some cleanup (mainly tabulation in driver)
  • Updated list of LMDZ variables to get closer to CMIP5 list
File size: 2.1 KB
Line 
1#!/bin/ksh
2#-----------------------------------
3CPL_Initialize ()
4{
5    IGCM_debug_PushStack "CPL_Initialize"
6 
7    echo INITIALIZE CPL !!!
8
9    #D- MPI context used to launch the coupled model
10    LIBMPI=$(cat ${SUBMIT_DIR}/../.libmpi)
11    echo LIBMPI=${LIBMPI}
12
13    #D- MPISUSPEND=ON required for MPMD mode used by oasis
14    export MPISUSPEND=ON
15
16    IGCM_sys_build_run_file ${LIBMPI}
17
18    IGCM_debug_PopStack "CPL_Initialize"
19}
20
21#-----------------------------------
22CPL_Update ()
23{
24    IGCM_debug_PushStack "CPL_Update"
25
26    ############ Update Time and Counters ##############
27    ##-- Calcul de la duree du job (en secondes)
28    (( D_JOB_SEC = 3600 * 24 * PeriodLengthInDays ))
29
30    ############ Update Other Parameters  ##############
31    ## Read Output_mode option in ${compname}.card --> Put "y" to have coupling variables in ouptut files
32    IGCM_card_DefineVariableFromOption ${SUBMIT_DIR}/COMP/${compname}.card UserChoices Output_mode
33    eval Output_mode=\${${compname}_UserChoices_Output_mode} > /dev/null 2>&1
34    echo ${Output_mode}
35    Output_var='EXPORTED'
36    if [ ${Output_mode} = y ] ; then
37        Output_var='EXPOUT'
38    fi
39
40    ############ Update Parameter Files   ##############
41    sed -e "s/<initial_date>/${PeriodDateBegin}/" \
42        -e "s/<total_time>/${D_JOB_SEC}/" \
43        -e "s/<lib_mpi>/${LIBMPI}/" \
44        -e "s/<nproc_atm>/${NUM_PROC_ATM}/g" \
45        -e "s/<nproc_oce>/${NUM_PROC_OCE}/g" \
46        -e "s/<output_mode>/${Output_var}/g" \
47        namcouple > namcouple.tmp
48
49    IGCM_sys_Mv namcouple.tmp namcouple
50    # Unused files we want to remove
51    eval FileToBeDeleted[${#FileToBeDeleted[@]}]=trace
52    eval FileToBeDeleted[${#FileToBeDeleted[@]}]=gweights
53    eval FileToBeDeleted[${#FileToBeDeleted[@]}]=mweights
54    eval FileToBeDeleted[${#FileToBeDeleted[@]}]=anaisout
55
56    IGCM_debug_PopStack "CPL_Update"
57}
58
59#-----------------------------------
60CPL_Finalize ()
61{
62    IGCM_debug_PushStack "CPL_Finalize"
63
64    DATE_OASIS=$(echo ${PeriodDateBegin} | sed -e "{ s/^\(.\{4\}\)/\1-/;s/\(-.\{2\}\)/\1-/; }");
65    DATE_OASIS=${DATE_OASIS}"T00:00:00"
66
67    echo FINALIZE CPL !!!
68
69    IGCM_debug_PopStack "CPL_Finalize"
70}
Note: See TracBrowser for help on using the repository browser.