source: CMIP6/C4MIP/1pctCO2-rad/DRIVER/pisces.driver @ 5993

Last change on this file since 5993 was 5993, checked in by cpipsl, 2 years ago

radiatively-coupled version of 1 percent per year increasing CO2 experiment

File size: 4.6 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   ##-- GHG forcing for the current year
87     IPCC_PIS_CO2=`grep Annee_1850 CO2.txt | awk -F= '{print $2}'`
88     echo '(PISCES) atcco2='${IPCC_PIS_CO2}
89
90    ##-- Update namelist_top_cfg and namelist_pisces_cfg
91    IGCM_comp_modifyNamelist blocker  namelist_top_cfg     ln_rsttr   ${TOP_LN_RSTR}
92    IGCM_comp_modifyNamelist blocker  namelist_top_cfg     nn_rsttr   ${TOP_NN_RSTR}
93    IGCM_comp_modifyNamelist blocker  namelist_pisces_cfg  nn_pisdmp  ${OPA_NPDT_YEAR}
94    IGCM_comp_modifyNamelist blocker  namelist_pisces_cfg  atcco2     ${IPCC_PIS_CO2} 
95 
96    # Update iodef.xml
97
98    IGCM_debug_Print 1 'Informations into iodef.xml : VT1D_ENABLE VT5D_ENABLE VT1M_ENABLE VT1Y_ENABLE '
99    IGCM_debug_Print 1 ${VT1D_ENABLE}  ${VT5D_ENABLE} ${VT1M_ENABLE} ${VT1Y_ENABLE}
100
101    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1d_pis enabled ${VT1D_ENABLE}
102    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 5d_pis enabled ${VT5D_ENABLE}
103    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1m_pis enabled ${VT1M_ENABLE}
104    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1y_pis enabled ${VT1Y_ENABLE}
105
106    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1d_pis output_level ${pisces_UserChoices_OutputLevel}
107    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 5d_pis output_level ${pisces_UserChoices_OutputLevel}
108    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1m_pis output_level ${pisces_UserChoices_OutputLevel}
109    IGCM_comp_modifyXmlFile nonblocker file_def_nemo-pisces.xml 1y_pis output_level ${pisces_UserChoices_OutputLevel}
110
111   
112    IGCM_debug_PopStack "MBG_Update"
113}
114
115#-----------------------------------
116function MBG_Finalize
117{
118    IGCM_debug_PushStack "MBG_Finalize"
119
120    echo FINALIZE MBG !!!
121
122    IGCM_debug_PopStack "MBG_Finalize"
123}
124
Note: See TracBrowser for help on using the repository browser.