Changeset 1413 for trunk/libIGCM


Ignore:
Timestamp:
10/09/17 17:24:51 (7 years ago)
Author:
sdipsl
Message:
  • being able to manage dr2xml_${compname}.xml files for IPSLCM6.0.13 and CMIP6
Location:
trunk/libIGCM
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/libIGCM_comp/libIGCM_comp.ksh

    r1411 r1413  
    7979    eval IGCM_sys_MkdirArchive \${R_OUT_${comp}_O} 
    8080 
     81    eval R_OUT_${comp}_A=\${R_OUT_${comp}}/Analyse 
     82    eval IGCM_sys_MkdirArchive \${R_OUT_${comp}_A} 
     83 
    8184    eval R_OUT_${comp}_R=\${R_OUT_${comp}}/Restart 
    8285    [ ${config_Post_PackFrequency} = NONE ] && eval IGCM_sys_MkdirArchive \${R_OUT_${comp}_R} 
     
    8588    [ ${config_Post_PackFrequency} = NONE ] && eval IGCM_sys_MkdirArchive \${R_OUT_${comp}_D} 
    8689 
    87     eval R_OUT_${comp}_O_I=\${R_OUT_${comp}_O}/INS 
    8890    eval R_OUT_${comp}_O_H=\${R_OUT_${comp}_O}/HF 
    8991    eval R_OUT_${comp}_O_D=\${R_OUT_${comp}_O}/DA 
     
    9193    eval R_OUT_${comp}_O_Y=\${R_OUT_${comp}_O}/YE 
    9294 
     95    eval R_OUT_${comp}_A_H=\${R_OUT_${comp}_A}/TS_HF 
     96    eval R_OUT_${comp}_A_D=\${R_OUT_${comp}_A}/TS_DA 
     97    eval R_OUT_${comp}_A_M=\${R_OUT_${comp}_A}/TS_MO 
     98    eval R_OUT_${comp}_A_Y=\${R_OUT_${comp}_A}/TS_YE 
     99 
    93100    # Define BUFFERED Dirs 
    94101    if ( [ ! ${config_Post_PackFrequency} = NONE ] || [ X${config_UserChoices_SpaceName} = XTEST ] ) ; then 
     
    99106      eval IGCM_sys_Mkdir \${R_BUF_${comp}_O} 
    100107 
     108      eval R_BUF_${comp}_A=\${R_BUF_${comp}}/Analyse 
     109      eval IGCM_sys_Mkdir \${R_BUF_${comp}_A} 
     110 
    101111      eval R_BUF_${comp}_R=\${R_BUF_${comp}}/Restart 
    102112      eval IGCM_sys_Mkdir \${R_BUF_${comp}_R} 
     
    105115      eval IGCM_sys_Mkdir \${R_BUF_${comp}_D} 
    106116 
    107       eval R_BUF_${comp}_O_I=\${R_BUF_${comp}_O}/INS 
    108117      eval R_BUF_${comp}_O_H=\${R_BUF_${comp}_O}/HF 
    109118      eval R_BUF_${comp}_O_D=\${R_BUF_${comp}_O}/DA 
    110119      eval R_BUF_${comp}_O_M=\${R_BUF_${comp}_O}/MO 
    111120      eval R_BUF_${comp}_O_Y=\${R_BUF_${comp}_O}/YE 
     121 
     122      eval R_BUF_${comp}_A_H=\${R_BUF_${comp}_A}/TS_HF 
     123      eval R_BUF_${comp}_A_D=\${R_BUF_${comp}_A}/TS_DA 
     124      eval R_BUF_${comp}_A_M=\${R_BUF_${comp}_A}/TS_MO 
     125      eval R_BUF_${comp}_A_Y=\${R_BUF_${comp}_A}/TS_YE 
     126 
     127      # Define CMIP6 Dirs 
     128      eval CMIP6_BUF_${comp}=${R_BUFR}/CMIP6/${comp} 
    112129    fi 
    113130 
     
    267284  fi 
    268285  if [ $( echo ${file} | grep "^file_def_" | wc -l ) = 1 ] ; then 
     286    eval FileDef[${#FileDef[@]}]=${file} > /dev/null 2>&1 
     287  fi 
     288  if [ $( echo ${file} | grep "^timeseries_def_" | wc -l ) = 1 ] ; then 
    269289    eval FileDef[${#FileDef[@]}]=${file} > /dev/null 2>&1 
    270290  fi 
     
    10021022      [ X${compilerFull} = X ] && byPass=true 
    10031023      IGCM_debug_Print 1 "${RUN_DIR}/${ExeNameOut} has been compiled with ${compilerFull}" 
     1024      IGCM_debug_Print 1 "Compiler is ${compilerVersion}" 
    10041025    fi 
    10051026  done 
     
    15041525    # UPDATE component 
    15051526    ${comp}_Update 
     1527 
     1528    set -vx 
     1529 
     1530    # Read TimeSeries information from XML files, prepare TS directories and do modifications in timeseries_def_${compname}.xml 
     1531    if [ -f timeseries_def_${compname}.xml ]; then 
     1532      ${libIGCM}/libIGCM_post/xios_parser.py tsquery --file timeseries_def_${compname}.xml > ts.temp.${compname}.txt 
     1533      for line in $( cat ts.temp.${compname}.txt ); do 
     1534        output_freq=$( echo ${line} | awk -F "," '{print $1}' | awk -F "=" '{print $2}' ) 
     1535        id=$(          echo ${line} | awk -F "," '{print $2}' | awk -F "=" '{print $2}' ) 
     1536        case ${output_freq} in 
     1537        *Y|*y) 
     1538          eval IGCM_sys_Mkdir \${R_BUF_${comp}_A_Y} 
     1539          eval IGCM_comp_modifyXmlFile nonblocker timeseries_def_${compname}.xml ${id} ts_prefix \${R_BUF_${comp}_A_Y}/${config_UserChoices_JobName} 
     1540          ;; 
     1541        *MO|*mo) 
     1542          eval IGCM_sys_Mkdir \${R_BUF_${comp}_A_M} 
     1543          eval IGCM_comp_modifyXmlFile nonblocker timeseries_def_${compname}.xml ${id} ts_prefix \${R_BUF_${comp}_A_M}/${config_UserChoices_JobName} 
     1544          ;; 
     1545        *D|*d) 
     1546          eval IGCM_sys_Mkdir \${R_BUF_${comp}_A_D} 
     1547          eval IGCM_comp_modifyXmlFile nonblocker timeseries_def_${compname}.xml ${id} ts_prefix \${R_BUF_${comp}_A_D}/${config_UserChoices_JobName} 
     1548          ;; 
     1549        *S|*s) 
     1550          eval IGCM_sys_Mkdir \${R_BUF_${comp}_A_H} 
     1551          eval IGCM_comp_modifyXmlFile nonblocker timeseries_def_${compname}.xml ${id} ts_prefix \${R_BUF_${comp}_A_H}/${config_UserChoices_JobName} 
     1552          ;; 
     1553        esac 
     1554      done 
     1555    fi 
     1556 
     1557    # Read TimeSeries information from XML files, prepare CMIP6 TS directories and do modifications in dr2xml_${compname}.xml 
     1558    if [ -f dr2xml_${compname}.xml ]; then 
     1559      eval IGCM_sys_Mkdir \${CMIP6_BUF_${comp}} 
     1560      eval CMIP6_DIR=\${CMIP6_BUF_${comp}} 
     1561 
     1562      ${libIGCM}/libIGCM_post/xios_parser.py tsquery --file dr2xml_${compname}.xml > dr2xml.temp.${compname}.txt 
     1563      for line in $( cat ts.temp.${compname}.txt ); do 
     1564        output_freq=$( echo ${line} | awk -F "," '{print $1}' | awk -F "=" '{print $2}' ) 
     1565        name=$(        echo ${line} | awk -F "," '{print $2}' | awk -F "=" '{print $2}' ) 
     1566 
     1567        IGCM_debug_Print 1 "Changing in dr2xml_${compname}.xml this string : ${name} by this one ${CMIP6_DIR}/${name}" 
     1568        sed -i -e 's:${name}:${CMIP6_DIR}/$name:g' dr2xml_${compname}.xml 
     1569 
     1570      done 
     1571    fi 
     1572 
     1573    set +vx 
    15061574 
    15071575  done 
  • trunk/libIGCM/libIGCM_post/xios_parser.py

    r1352 r1413  
    7272    if root.tag == 'file' and root.attrib.get('timeseries'): 
    7373        if root.attrib.get('enabled') == '.TRUE.': 
    74             print 'id=%s,output_freq=%s' % (root.attrib.get('id'), root.attrib.get('output_freq')) 
     74            print 'output_freq=%-5s,id=%s' % (root.attrib.get('output_freq'), root.attrib.get('id')) 
     75    elif root.tag == 'file' and root.attrib.get('uuid_name'): 
     76        print 'output_freq=%-5s,name=%85s' % (root.attrib.get('output_freq'), root.attrib.get('name')) 
    7577    else: 
    7678        for elem in list(root): 
  • trunk/libIGCM/libIGCM_sys/libIGCM_sys_curie.ksh

    r1412 r1413  
    9595  IGCM_debug_Print 1 "Module will be loaded once we know the compiler version" 
    9696else 
     97  module purge > /dev/null 2>&1 
    9798  . /ccc/cont003/home/dsm/p86ipsl/.env_intel17.0.2_curie   > /dev/null 2>&1 
    9899  . /ccc/cont003/home/dsm/p86ipsl/.env_netcdf4.3.3.1_curie > /dev/null 2>&1 
     
    10541055#D- MODULE specifications 
    10551056# -------------------------------------------------------------------- 
    1056  
     1057  module purge > /dev/null 2>&1  
    10571058  if [ X${compilerVersion} = XV17 ] ; then 
    10581059      . /ccc/cont003/home/dsm/p86ipsl/.env_intel17.0.2_curie   > /dev/null 2>&1 
Note: See TracChangeset for help on using the changeset viewer.