| 1 | #!/bin/bash |
|---|
| 2 | |
|---|
| 3 | . env.sh |
|---|
| 4 | |
|---|
| 5 | \rm -f ModelParam.R |
|---|
| 6 | bad=0 |
|---|
| 7 | |
|---|
| 8 | if [ $# != 3 ] ; then |
|---|
| 9 | cat <<eod |
|---|
| 10 | Usage : param2R.sh LHCIZE NLHC parameter_file |
|---|
| 11 | eod |
|---|
| 12 | exit |
|---|
| 13 | fi |
|---|
| 14 | |
|---|
| 15 | LHCSIZE=$1 |
|---|
| 16 | NLHC=$2 |
|---|
| 17 | PARAM_FILE=$3 |
|---|
| 18 | |
|---|
| 19 | if [ ! -f $PARAM_FILE ] ; then echo fichier $PARAM_FILE inexistant ; exit ; fi |
|---|
| 20 | #if [ ! $NLHC -ge 3 ] ; then echo NLHC should be '>=' 3 ; exit ; fi |
|---|
| 21 | |
|---|
| 22 | (( NSCMS = LHCSIZE * NLHC )) |
|---|
| 23 | NPARA=`wc -l $PARAM_FILE |awk ' {print $1 }'` |
|---|
| 24 | |
|---|
| 25 | # A automatiser en regardant combien de LES* sont disponibles |
|---|
| 26 | # sur chaque cas. |
|---|
| 27 | |
|---|
| 28 | echo LHCSIZE=$LHCSIZE >> ModelParam.R |
|---|
| 29 | echo NLHC=$NLHC >> ModelParam.R |
|---|
| 30 | echo NSCMS=$NSCMS >> ModelParam.R |
|---|
| 31 | echo NPARA=$NPARA >> ModelParam.R |
|---|
| 32 | |
|---|
| 33 | names=( names lows highs defaults ) |
|---|
| 34 | |
|---|
| 35 | for col in 1 2 3 4 ; do |
|---|
| 36 | (( ii = $col -1 )) |
|---|
| 37 | liste='param.'${names[$ii]}='c(' |
|---|
| 38 | for val in `awk ' {print $'$col' } ' $PARAM_FILE` ; do |
|---|
| 39 | if [ $col == 1 ] ; then |
|---|
| 40 | liste=$liste'"'$val'",' |
|---|
| 41 | else |
|---|
| 42 | liste="$liste$val," |
|---|
| 43 | fi |
|---|
| 44 | done |
|---|
| 45 | echo $liste | sed -e 's/,$/)/' >> ModelParam.R |
|---|
| 46 | done |
|---|
| 47 | |
|---|
| 48 | |
|---|
| 49 | liste="which.logs<-c(" |
|---|
| 50 | ival=0 |
|---|
| 51 | ilog=0 |
|---|
| 52 | for val in `awk ' { print $5 } ' $PARAM_FILE` ; do |
|---|
| 53 | (( ival = $ival + 1 )) |
|---|
| 54 | if [ "$val" = "log" ] ; then |
|---|
| 55 | liste="$liste$ival," |
|---|
| 56 | ilog=1 |
|---|
| 57 | fi |
|---|
| 58 | done |
|---|
| 59 | if [ $ilog == 0 ]; then |
|---|
| 60 | echo $liste | sed -e 's/($/()/' >> ModelParam.R |
|---|
| 61 | else |
|---|
| 62 | echo $liste | sed -e 's/,$/)/' >> ModelParam.R |
|---|
| 63 | fi |
|---|
| 64 | |
|---|
| 65 | cat <<eod>> ModelParam.R |
|---|
| 66 | param.defaults <- param.defaults[1:NPARA] |
|---|
| 67 | param.highs <- param.highs[1:NPARA] |
|---|
| 68 | param.lows <- param.lows[1:NPARA] |
|---|
| 69 | param.names <- param.names[1:NPARA] |
|---|
| 70 | eod |
|---|
| 71 | |
|---|
| 72 | cat ModelParam.R |
|---|
| 73 | |
|---|
| 74 | echo '==================================================================' |
|---|
| 75 | echo "Generating $NSCMS samples" |
|---|
| 76 | echo '==================================================================' |
|---|
| 77 | Rscript htune_convertDesign.R |
|---|
| 78 | |
|---|
| 79 | #ls -lrt |
|---|
| 80 | |
|---|
| 81 | # On copie les infos de la wave 1 dans le repertoire WAVE1 (1ere vague de l'history matching) |
|---|
| 82 | |
|---|
| 83 | mkdir WAVE1 |
|---|
| 84 | # cf plus haut |
|---|
| 85 | mv ModelParam.R WAVE1/ |
|---|
| 86 | # Fichier ASCII simulation id - valeur des parametres |
|---|
| 87 | mv Par1D_Wave1.asc WAVE1/ |
|---|
| 88 | # Fichier R contenant les mêmes informations |
|---|
| 89 | mv Wave1.RData WAVE1/ |
|---|
| 90 | |
|---|