source: trunk/MagicSoft/Mars/datacenter/scripts/makecallistolinks@ 8798

Last change on this file since 8798 was 8482, checked in by Daniela Dorner, 18 years ago
*** empty log message ***
  • Property svn:executable set to *
File size: 4.0 KB
Line 
1#!/bin/sh
2#
3# ========================================================================
4#
5# *
6# * This file is part of MARS, the MAGIC Analysis and Reconstruction
7# * Software. It is distributed to you in the hope that it can be a useful
8# * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
9# * It is distributed WITHOUT ANY WARRANTY.
10# *
11# * Permission to use, copy, modify and distribute this software and its
12# * documentation for any purpose is hereby granted without fee,
13# * provided that the above copyright notice appear in all copies and
14# * that both that copyright notice and this permission notice appear
15# * in supporting documentation. It is provided "as is" without express
16# * or implied warranty.
17# *
18#
19#
20# Author(s): Daniela Dorner 08/2004 <mailto:dorner@astro.uni-wuerzburg.de>
21#
22# Copyright: MAGIC Software Development, 2000-2007
23#
24#
25# ========================================================================
26#
27# This script links a special callisto.rc for data, for which the
28# calibration with the standard callisto.rc failes.
29#
30# The sequences with failing calibration are searched by searching for the
31# reason of failure in the callisto.log Then the special callisto.rc is
32# linked to the directory of the sequence.
33#
34
35source `dirname $0`/sourcefile
36printprocesslog "INFO starting $0"
37program=makecallistolinks
38column=fCallisto
39table=SequenceProcessStatus
40
41set -C
42
43scriptlog=$runlogpath/$program`date +%F`.log
44date >> $scriptlog 2>&1
45
46# check if script is already running
47lockfile=$lockpath/lock-$program.txt
48checklock >> $scriptlog 2>&1
49
50callistorcseq=callisto.rc
51callistorcnew=callisto_Dec04Jan05.rc
52# reason why calibration with standard callisto.rc fails
53#reason1="Pulse is too much to the right, cannot go beyond logain limits!"
54#.* == hi or lo
55reason1="Pulse is too much to the right, out of .*-gain range"
56#reason2="No entry for resource id '2[45]' found in"
57echo "reason1: "$reason1 >> $scriptlog 2>&1
58#echo "reason2: "$reason2 >> $scriptlog 2>&1
59
60# find files containing reason
61files=`find $datapath/callisto/ -name callisto*.log`
62if [ "$files" = "" ]
63then
64 echo "nothing to do -> exit" >> $scriptlog 2>&1
65 finish >> $scriptlog 2>&1
66fi
67
68cd $mars
69
70# make links for callisto.rc for which the callisto.log contains reason
71printprocesslog "INFO linking callisto.rc files"
72for file in $files
73do
74# pulse=`cat $file | grep "$reason1\|$reason2"`
75 pulse=`cat $file | grep "$reason1"`
76 sequ=`echo $file | cut -d/ -f6`
77 path=`dirname $file`
78 callistorc=$path/$callistorcseq
79
80 if [ ! "$pulse" = "" ]
81 then
82 if ! ls -l $callistorc | grep $callistorcnew >> $scriptlog 2>&1
83 then
84 printprocesslog "INFO linking $callistorcnew to $callistorc for sequ $sequ"
85 # resetting the calibration
86 echo "resetting the callisto for sequence $sequ" >> $scriptlog 2>&1
87 echo " reason: $pulse" >> $scriptlog 2>&1
88 resetlogpath=$logpath/resetcallisto
89 makedir $resetlogpath >> $scriptlog 2>&1
90 resetlog=$resetlogpath/reset-callisto-$sequ.log
91
92 check1=`root -q -b $macrospath/resetcolumn.C+\("\"$column\""\,"\"$table\""\,"\"$sequ\""\,"\"$sequ\""\,kFALSE\) | tee $resetlog | intgrep`
93 case $check1 in
94 1) echo " check1=$check1 -> everything ok, callisto has been reset " >> $scriptlog 2>&1
95 printprocesslog "INFO resetted calibration successfully for sequence $sequ"
96 ;;
97 0) echo " check1=$check1 -> no connection to db -> continue..." >> $scriptlog 2>&1
98 printprocesslog "WARN connection to DB failed"
99 check="no"
100 ;;
101 *) echo " check1=$check1 -> ERROR -> step could not be resetted -> continue " >> $scriptlog 2>&1
102 printprocesslog "ERROR resetcolumn.C failed for fCallisto for sequ $sequ"
103 continue
104 ;;
105 esac
106 #linking callisto.rc
107 ln -vfs $setuppath/callisto/$callistorcnew $callistorc >> $scriptlog 2>&1
108 fi
109 fi
110done
111
112finish >> $scriptlog 2>&1
113
Note: See TracBrowser for help on using the repository browser.