Changeset 2343 for CONFIG/UNIFORM/v6/IPSLCM6/GENERAL/DRIVER/orchidee.driver
- Timestamp:
- 09/26/14 11:46:12 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CONFIG/UNIFORM/v6/IPSLCM6/GENERAL/DRIVER/orchidee.driver
r2300 r2343 1 1 #!/bin/ksh 2 3 2 #D- Driver du script pour ORCHIDEE 4 5 function ORCHIDEE_sed6 {7 IGCM_debug_PushStack "ORCHIDEE_sed"8 9 sed -e "s/^${1}\ *=.*/${1}= ${2}/" \10 orchidee.def > orchidee.def.tmp11 RET=$?12 echo "ORCHIDEE_sed : ${1} ${2}"13 \mv orchidee.def.tmp orchidee.def14 15 IGCM_debug_PopStack "ORCHIDEE_sed"16 return $RET17 }18 19 function ORCHIDEE_sed_xml20 {21 # Usage : ORCHIDEE_sed_xml xml_file output_file attribute value22 # In file xml_file modify at the line containing id="output_file" the attribute "attribute=xxx" into "attribute=value"23 24 # Test if the fichier exist25 if [ ! -f ${1} ] ; then26 echo "WARNING : ${1} file does not exist. Following will not be done : ORCHIDEE_sed : ${1} ${2} ${3} ${4}"27 IGCM_debug_PopStack "LMDZ_sed"28 return29 fi30 sed -e "/id=\"${2}\"/s/\(${3}=\"\)[^\"]*\(\"\)/\1${4}\2/" ${1} > ${1}.tmp31 RET=$?32 echo "ORCHIDEE_sed : ${1} ${2} ${3} ${4}"33 \mv ${1}.tmp ${1}34 35 return $RET36 }37 38 3 #----------------------------------------------------------------- 39 4 function SRF_Initialize … … 66 31 IGCM_debug_PushStack "SRF_Update" 67 32 33 # Activate STOMATE if the compontent SBG=stomate is set in config.card 34 if [ X${config_ListOfComponents_SBG} = Xstomate ] ; then 35 IGCM_comp_modifyDefFile blocker orchidee.def STOMATE_OK_STOMATE y 36 else 37 IGCM_comp_modifyDefFile blocker orchidee.def STOMATE_OK_STOMATE n 38 fi 39 68 40 typeset SECHIBA_WRITE_STEP 69 41 70 42 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 71 ORCHIDEE_sed_xml file_def_orchidee.xml sechiba1 enabled .FALSE. 72 ORCHIDEE_sed_xml file_def_orchidee.xml sechiba2 enabled .FALSE. 73 ORCHIDEE_sed XIOS_ORCHIDEE_OK y 43 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .FALSE. 44 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba2 enabled .FALSE. 45 IGCM_comp_modifyDefFile nonblocker orchidee.def XIOS_ORCHIDEE_OK y 46 else 47 IGCM_comp_modifyDefFile nonblocker orchidee.def XIOS_ORCHIDEE_OK n 74 48 fi 75 49 … … 81 55 (( SECHIBA_WRITE_STEP = PeriodLengthInDays * WriteInYears / PeriodLengthInYears * 86400 )) 82 56 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 83 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.84 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq ${WriteInYears}y85 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history57 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 58 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq ${WriteInYears}y 59 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 86 60 fi 87 61 ;; 88 62 1M) 89 63 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 90 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.91 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq 1mo92 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history64 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 65 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq 1mo 66 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 93 67 fi 94 68 case ${config_UserChoices_PeriodLength} in … … 107 81 WriteInMonths=$( echo ${SRF_WriteFrequency} | awk -F '[mM]' '{print $1}' ) 108 82 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 109 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.110 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq ${WriteInMonths}mo111 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history83 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 84 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq ${WriteInMonths}mo 85 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 112 86 fi 113 87 case ${config_UserChoices_PeriodLength} in … … 123 97 (( SECHIBA_WRITE_STEP = $( IGCM_date_DaysInMonth $year $month ) * 86400 )) 124 98 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 125 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.126 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq ${SECHIBA_WRITE_STEP}s127 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history99 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 100 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq ${SECHIBA_WRITE_STEP}s 101 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 128 102 fi 129 103 ;; … … 132 106 5D|5d) 133 107 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 134 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.135 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq 5d136 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history108 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 109 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq 5d 110 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 137 111 fi 138 112 (( SECHIBA_WRITE_STEP = 5 * 86400 )) … … 140 114 1D|1d) 141 115 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 142 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.143 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq 1d144 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history116 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 117 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq 1d 118 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 145 119 fi 146 120 (( SECHIBA_WRITE_STEP = 86400 )) … … 149 123 WriteInSeconds=$( echo ${SRF_WriteFrequency} | awk -F '[s]' '{print $1}' ) 150 124 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 151 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 enabled .TRUE.152 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 output_freq ${WriteInSeconds}s153 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba1 name sechiba_history125 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 enabled .TRUE. 126 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 output_freq ${WriteInSeconds}s 127 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba1 name sechiba_history 154 128 fi 155 129 (( SECHIBA_WRITE_STEP = WriteInSeconds )) ;; … … 164 138 (( SECHIBA_WRITE_STEP = 0 )) 165 139 fi 166 167 ORCHIDEE_sed WRITE_STEP ${SECHIBA_WRITE_STEP} 168 ORCHIDEE_sed SECHIBA_HISTLEVEL ${orchidee_UserChoices_sechiba_LEVEL} 140 IGCM_comp_modifyDefFile nonblocker orchidee.def WRITE_STEP ${SECHIBA_WRITE_STEP} 141 IGCM_comp_modifyDefFile nonblocker orchidee.def SECHIBA_HISTLEVEL ${orchidee_UserChoices_sechiba_LEVEL} 169 142 170 143 # Outputs HF in HISTFILE2 if required 171 144 if [ X${SRF_ok_hf} = Xy ] ; then 172 ORCHIDEE_sedSECHIBA_HISTFILE2 y145 IGCM_comp_modifyDefFile nonblocker orchidee.def SECHIBA_HISTFILE2 y 173 146 if [ X${orchidee_UserChoices_XIOS} = Xy ] ; then 174 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba2 enabled .TRUE.175 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba2 output_freq 10800s176 ORCHIDEE_sed_xmlfile_def_orchidee.xml sechiba2 name sechiba_out_2147 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba2 enabled .TRUE. 148 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba2 output_freq 10800s 149 IGCM_comp_modifyXmlFile force file_def_orchidee.xml sechiba2 name sechiba_out_2 177 150 fi 178 151 else 179 ORCHIDEE_sedSECHIBA_HISTFILE2 n180 fi 181 ORCHIDEE_sedSECHIBA_HISTLEVEL2 1182 ORCHIDEE_sedWRITE_STEP2 10800.0152 IGCM_comp_modifyDefFile nonblocker orchidee.def SECHIBA_HISTFILE2 n 153 fi 154 IGCM_comp_modifyDefFile nonblocker orchidee.def SECHIBA_HISTLEVEL2 1 155 IGCM_comp_modifyDefFile nonblocker orchidee.def WRITE_STEP2 10800.0 183 156 184 157 if ( [ ${CumulPeriod} -ne 1 ] || [ "${config_SRF_Restart}" != "n" ] ) ; then 185 ORCHIDEE_sedSECHIBA_restart_in sechiba_rest_in.nc186 else 187 ORCHIDEE_sedSECHIBA_restart_in NONE158 IGCM_comp_modifyDefFile blocker orchidee.def SECHIBA_restart_in sechiba_rest_in.nc 159 else 160 IGCM_comp_modifyDefFile blocker orchidee.def SECHIBA_restart_in NONE 188 161 fi 189 162 190 163 # Modify in orchidee.def VEGET_UPDATE and LAND_COVER_CHANGE if they are set in orchidee.card section UserChoices 191 164 if [ ! X${orchidee_UserChoices_VEGET_UPDATE} = X ] ; then 192 ORCHIDEE_sedVEGET_UPDATE ${orchidee_UserChoices_VEGET_UPDATE}193 else 194 ORCHIDEE_sedVEGET_UPDATE 0Y165 IGCM_comp_modifyDefFile blocker orchidee.def VEGET_UPDATE ${orchidee_UserChoices_VEGET_UPDATE} 166 else 167 IGCM_comp_modifyDefFile blocker orchidee.def VEGET_UPDATE 0Y 195 168 fi 196 169 if [ ! X${orchidee_UserChoices_LAND_COVER_CHANGE} = X ] ; then 197 ORCHIDEE_sedLAND_COVER_CHANGE ${orchidee_UserChoices_LAND_COVER_CHANGE}198 else 199 ORCHIDEE_sedLAND_COVER_CHANGE n170 IGCM_comp_modifyDefFile blocker orchidee.def LAND_COVER_CHANGE ${orchidee_UserChoices_LAND_COVER_CHANGE} 171 else 172 IGCM_comp_modifyDefFile blocker orchidee.def LAND_COVER_CHANGE n 200 173 fi 201 174
Note: See TracChangeset
for help on using the changeset viewer.