source: CONFIG/LMDZOR/branches/LMDZ4OR_v3/LMDZOR/COMP/orchidee.driver @ 885

Last change on this file since 885 was 882, checked in by aclsce, 14 years ago

Modified LMDZ4OR_v3 configuration to fit with IPSLCM5_v2 coupled
configuration.
Now, LMDZ4OR_work is the working configuration using trunk of LMDZ and
LMDZ4OR_v2 fits with IPSLCM4_v2 coupled configuration.
Modifications :

  • compilation of LMD9695-L39 resolution by default
  • modified *.card, *.driver and *.def to fit with IPSLCM5_v2
  • added SBG component (like IPSLCM5_v2)
  • added POST directory
File size: 3.0 KB
Line 
1# $Id$
2#
3#!/bin/ksh
4
5#D- Driver du script pour ORCHIDEE
6
7function ORCHIDEE_sed
8{
9    IGCM_debug_PushStack "ORCHIDEE_sed"
10   
11    sed -e "s/^${1}\ *=.*/${1}= ${2}/" \
12        orchidee.def > orchidee.def.tmp
13    RET=$?
14    echo "ORCHIDEE_sed : ${1} ${2}"
15    \mv orchidee.def.tmp orchidee.def
16   
17    IGCM_debug_PopStack "ORCHIDEE_sed"
18    return $RET
19}
20
21#-----------------------------------------------------------------
22function SRF_Initialize
23{
24    IGCM_debug_PushStack "SRF_Initialize"
25
26    RESOL_SRF=ALL
27
28    IGCM_debug_PopStack "SRF_Initialize"
29}
30
31#-----------------------------------------------------------------
32function SRF_Update
33{
34    IGCM_debug_PushStack "SRF_Update"
35
36    typeset SECHIBA_WRITE_STEP
37
38    case ${config_SRF_WriteFrequency} in
39        *Y|*y) 
40            WriteInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_SRF_WriteFrequency}}" )
41            PeriodLengthInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_UserChoices_PeriodLength}}" )
42            (( SECHIBA_WRITE_STEP = PeriodLengthInDays * WriteInYears / PeriodLengthInYears * 86400 )) ;;
43        *M|*m) 
44            WriteInMonths=$( echo ${1} | awk -F '[mM]' "{print ${config_SRF_WriteFrequency}}" )
45            case ${config_UserChoices_PeriodLength} in
46            *Y|*y)
47                PeriodLengthInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_UserChoices_PeriodLength}}" )
48                (( SECHIBA_WRITE_STEP = PeriodLengthInDays * 86400 / PeriodLengthInYears / 12  ))
49                ;;
50            *M|*m)
51                PeriodLengthInMonths=$( echo ${1} | awk -F '[mM]' "{print ${config_UserChoices_PeriodLength}}" )
52                (( SECHIBA_WRITE_STEP = PeriodLengthInDays * WriteInMonths  * 86400 / PeriodLengthInMonths  ))
53                ;;
54            *)
55                (( SECHIBA_WRITE_STEP = $( IGCM_date_DaysInMonth $year $month ) * 86400 ))
56                ;;
57            esac
58            ;;
59        5D|5d) 
60            (( SECHIBA_WRITE_STEP = 5 * 86400 )) ;;
61        1D|1d) 
62            (( SECHIBA_WRITE_STEP = 86400 )) ;;
63        *s)
64            WriteInSeconds=$( echo ${1} | awk -F '[s]' "{print ${config_SRF_WriteFrequency}}" )
65            (( SECHIBA_WRITE_STEP = WriteInSeconds )) ;;
66        *) 
67            IGCM_debug_Exit "SRF_Update " ${config_SRF_WriteFrequency} " invalid WriteFrequency : choose in 1Y, 1M, 5D, 1D." 
68            IGCM_debug_Verif_Exit ;;
69    esac
70
71    ORCHIDEE_sed HYDROL_CWRR ${orchidee_UserChoices_NEWHYDROL}
72
73    ORCHIDEE_sed WRITE_STEP ${SECHIBA_WRITE_STEP}
74    ORCHIDEE_sed SECHIBA_HISTLEVEL ${orchidee_UserChoices_sechiba_LEVEL}
75
76##    if [ ${year} -eq 1950 ] ; then
77#       ORCHIDEE_sed SECHIBA_HISTFILE2 y
78#       ORCHIDEE_sed SECHIBA_HISTLEVEL2 10
79#       ORCHIDEE_sed WRITE_STEP2 86400.0
80##    fi
81
82    if ( [ ${CumulPeriod} -ne 1 ] || [ "${config_SRF_Restart}" != "n" ] ) ; then
83        ORCHIDEE_sed SECHIBA_restart_in sechiba_rest_in.nc
84    fi
85
86    #IGCM_sys_Cp ${RUN_DIR}/orchidee.def ${RUN_DIR}/run.def
87    #IGCM_sys_Put_Out ${RUN_DIR}/run.def ${R_SAVE}/${PREFIX}_run.def
88
89    IGCM_debug_PopStack "SRF_Update"
90}
91
92#-----------------------------------------------------------------
93function SRF_Finalize
94{
95    IGCM_debug_PushStack "SRF_Finalize"
96
97    #IGCM_sys_Put_Out ${RUN_DIR}/used_run.def ${R_SAVE}/${PREFIX}_used_run.def
98
99    echo FINALIZE SRF !!!
100
101    IGCM_debug_PopStack "SRF_Finalize"
102}
Note: See TracBrowser for help on using the repository browser.