source: trunk/MagicSoft/Mars/datacenter/scripts/runstar@ 9082

Last change on this file since 9082 was 9054, checked in by Daniela Dorner, 16 years ago
*** empty log message ***
  • Property svn:executable set to *
File size: 3.8 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# Author(s): Stefan Ruegamer 08/2007 <mailto:snruegam@astro.uni-wuerzburg.de>
22#
23# Copyright: MAGIC Software Development, 2000-2007
24#
25#
26# ========================================================================
27#
28# This script is launching star for sequences.
29#
30# As star takes some time, only one sequence is processed at once.
31# First the script gets a sequence number from the database for which
32# star has to be done (function gettodo). After setting the status in the
33# database (set fStartTime; to know that the sequence is already being
34# processed), the image parameters are calculated for the sequence.
35# Afterwards the status in the database is updated according to the return
36# value of star.
37# The important INFOs, WARNings and ERRORs are written not only to the
38# scriptlog but also to the processlog.
39#
40# The star.rc files are taken from the datacenter/setup/star directory
41#
42
43source `dirname $0`/sourcefile
44printprocesslog "INFO starting $0"
45program=star
46column=fStar
47
48set -C
49
50scriptlog=$runlogpath/run$program-$datetime.log
51date >> $scriptlog 2>&1
52
53# get sequence #
54gettodo "1" >> $scriptlog 2>&1
55sequence=${primaries[0]}
56telnum=${primaries[1]}
57
58# lock sequ
59lockfile=$lockpath/lock-$table-$column-$sequence.txt
60checklock >> $scriptlog 2>&1
61
62cd $mars
63
64echo "run $program for sequence $sequence..." >> $scriptlog 2>&1
65printprocesslog "INFO starting $program for sequence $sequence"
66no=`printf %08d $sequence | cut -c 0-4`
67no2=`printf %08d $sequence`
68outpath="$datapath/$program/$no/$no2"
69inpath=`echo $outpath | sed -e 's/star/callisto/'`
70makedir $outpath >> $scriptlog 2>&1
71
72sequfile="$sequpath/$no/sequence$no2.txt"
73
74setstatus "start" >> $scriptlog 2>&1
75
76echo "staging files..." >> $scriptlog 2>&1
77ssh -nx phoenix /opt/SUNWsamfs/bin/stage -V $inpath/20*_0*${run}_Y_*_E.root >> $scriptlog 2>&1
78
79
80# define star.rc files
81starrcnew=$setuppath/$program/star.rc
82starrcmux=$setuppath/$program/star_mux.rc
83# link star.rc file
84echo "linking the star.rc file to $outpath" >> $scriptlog 2>&1
85if [ $sequence -gt 200000 ]
86then
87 ln -vsf $starrcmux $outpath/star.rc >> $scriptlog 2>&1
88else
89 ln -vsf $starrcnew $outpath/star.rc >> $scriptlog 2>&1
90fi
91starrcseq=$outpath/star.rc
92
93echo "./star -b -q -v4 -f --log=$outpath/$program$no2.log --html=$outpath/$program$no2.html --ind=$inpath --out=$outpath $sequfile --config=$starrcseq 2>> $scriptlog> /dev/null" >> $scriptlog 2>&1
94./star -b -q -v4 -f --log=$outpath/$program$no2.log --html=$outpath/$program$no2.html --ind=$inpath --out=$outpath $sequfile --config=$starrcseq 2>> $scriptlog> /dev/null
95check1=$?
96
97case $check1 in
98 0) echo " check1=$check1 -> everything ok " >> $scriptlog 2>&1
99 printprocesslog "INFO $program finished successfully for sequence $sequence"
100 ;;
101 *) echo " check1=$check1 -> ERROR -> step has to be repeated" >> $scriptlog 2>&1
102 printprocesslog "ERROR $program failed for sequence $sequence"
103 com=$Fstar
104 check=$check1
105 ;;
106esac
107
108setstatus "stop" >> $scriptlog 2>&1
109
110finish >> $scriptlog 2>&1
111
Note: See TracBrowser for help on using the repository browser.