source: CMIP6/ScenarioMIP/CM61-LR-scen-ssp585-r4/DRIVER/pisces.driver @ 4809

Last change on this file since 4809 was 4809, checked in by edupont, 4 years ago

Commit de CM61-LR-scen-ssp585-r4 par Eliott, le 15/11/2019.

File size: 4.4 KB
Line 
1#!/bin/ksh
2
3#-----------------------------------
4function MBG_Initialize
5{ 
6    IGCM_debug_PushStack "MBG_Initialize"
7
8    # Local function to find parameters in LMDZ .def files
9
10lmdzgrep2 () {
11     grep -w ${1} ${2} | grep -v "#"  | sed -e 's/=//g' -e 's/://g' -e 's/_AUTO_//' -e 's/DEFAULT//' | sed -e "s/${1}//" 
12}
13
14    ##--Variables used by MBG --
15
16    # ln_rsttr  boolean term for tracer model restart (true or false)
17    # nrsttr    control of the time step (0, 1 or 2)
18   
19    IGCM_debug_PopStack "MBG_Initialize"
20}
21
22#-----------------------------------
23function MBG_Update
24{
25    IGCM_debug_PushStack "MBG_Update"
26
27    ##--Write Frequency for iomput
28    ## Differents frequencies are allowed for MBG files
29
30    VT1D_ENABLE=".FALSE."
31    VT5D_ENABLE=".FALSE."
32    VT1M_ENABLE=".FALSE."
33    VT1Y_ENABLE=".FALSE."
34
35    for frequency in ${config_MBG_WriteFrequency} ; do
36        case ${frequency} in
37            ( 1D|1d ) VT1D_ENABLE=".TRUE." ;;
38            ( 5D|5d ) VT5D_ENABLE=".TRUE." ;;
39            ( 1M|1m ) VT1M_ENABLE=".TRUE." ;;
40            ( *[yY] ) VT1Y_ENABLE=".TRUE." ;;
41        esac
42    done
43
44    ##-- Restart configuration
45    ##-- Restart configuration
46    if ( [ "${opa9_UserChoices_Reproducibility_after_restart}" = "y" ] ) ; then
47        TOP_LN_RSTR=.TRUE.
48        TOP_NN_RSTR=2
49        IGCM_debug_Print 1 'WARNING : dangerous option for NEMO pisces too'
50        IGCM_debug_Print 1 'Reproducibility_after_Restart forced : ' ${opa9_UserChoices_Reproducibility_after_restart}
51
52    elif ( [ "${CumulPeriod}" -eq 1 ] && [ "${config_MBG_Restart}" = "n" ] ) ; then
53
54        #echo "NO RESTART FOR TOP"
55        TOP_LN_RSTR=.FALSE.
56        TOP_NN_RSTR=0
57
58    elif ( [ "${CumulPeriod}" -eq 1 ] && [ "${config_MBG_Restart}" = "y" ] ) ; then
59
60        #echo "RESTART TOP"
61        TOP_LN_RSTR=.TRUE.
62        TOP_NN_RSTR=0
63
64        # If we start from IPSLCM5* restart files.
65            for file in restart_trc*.nc ; do
66            IGCM_debug_Print 1 "cmd done to modify IPSLCM5* NEMO pisces restartfile: " ncrename -v TRBDSi,TRBGSi -v TRNDSi,TRNGSi -v TRNBSi,TRNDSi -v TRBBSi,TRBDSi ${file} > /dev/null 2>&1
67            ncrename -v TRBDSi,TRBGSi -v TRNDSi,TRNGSi -v TRNBSi,TRNDSi -v TRBBSi,TRBDSi ${file} > /dev/null 2>&1
68            done
69
70    else
71
72        #echo "RESTART TOP"
73        TOP_LN_RSTR=.TRUE.
74        TOP_NN_RSTR=2
75
76    fi
77
78
79    ##-- CO2 forcing : update atcco2 value in namelist_pisces_cfg with the same one used in LMDZ
80    IGCM_debug_Print 1 "Take same CO2 as for LMDZ, in parameter file config.def."
81    # ATM_Update is done before MBG_Update and therefore config.def file contains the correct value for CO2.
82    IGCM_debug_Print 1 'Update atcco2 in namelist_pisces_cfg with same value as for LMDZ'
83    LMDZ_CO2=$( lmdzgrep2 co2_ppm config.def )
84    IGCM_debug_Print 1 "LMDZ_CO2 : ${LMDZ_CO2} "
85    IGCM_comp_modifyNamelist force  namelist_pisces_cfg atcco2 ${LMDZ_CO2}
86
87    ##-- Update namelist_top_cfg and namelist_pisces_cfg
88    IGCM_comp_modifyNamelist blocker  namelist_top_cfg     ln_rsttr   ${TOP_LN_RSTR}
89    IGCM_comp_modifyNamelist blocker  namelist_top_cfg     nn_rsttr   ${TOP_NN_RSTR}
90    IGCM_comp_modifyNamelist blocker  namelist_pisces_cfg  nn_pisdmp  ${OPA_NPDT_YEAR}
91 
92    # Update iodef.xml
93
94    IGCM_debug_Print 1 'Informations into iodef.xml : VT1D_ENABLE VT5D_ENABLE VT1M_ENABLE VT1Y_ENABLE '
95    IGCM_debug_Print 1 ${VT1D_ENABLE}  ${VT5D_ENABLE} ${VT1M_ENABLE} ${VT1Y_ENABLE}
96
97    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1d_pis enabled ${VT1D_ENABLE}
98    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 5d_pis enabled ${VT5D_ENABLE}
99    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1m_pis enabled ${VT1M_ENABLE}
100    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1y_pis enabled ${VT1Y_ENABLE}
101
102    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1d_pis output_level ${pisces_UserChoices_OutputLevel}
103    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 5d_pis output_level ${pisces_UserChoices_OutputLevel}
104    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1m_pis output_level ${pisces_UserChoices_OutputLevel}
105    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1y_pis output_level ${pisces_UserChoices_OutputLevel}
106
107   
108    IGCM_debug_PopStack "MBG_Update"
109}
110
111#-----------------------------------
112function MBG_Finalize
113{
114    IGCM_debug_PushStack "MBG_Finalize"
115
116    echo FINALIZE MBG !!!
117
118    IGCM_debug_PopStack "MBG_Finalize"
119}
120
Note: See TracBrowser for help on using the repository browser.