79     JParser<> zap(
"Example program to plot orientation data.");
 
   81     zap[
'f'] = 
make_field(inputFile,    
"output of JBallarat[.sh]");
 
   82     zap[
'n'] = 
make_field(numberOfEvents)                                    = JLimit::max();
 
   90   catch(
const exception &error) {
 
   91     FATAL(error.what() << endl);
 
  107     FATAL(
"No detector address map for detector identier " << 
detector.getID() << endl);
 
  115   STATUS(
"loading input from file(s) " << inputFile << 
"... " << flush);
 
  117   dynamics.load(inputFile);
 
  126     if (router.getModule(module->first).getFloor() != 0) {
 
  128       STATUS(
"Creating graphics for input data " << setw(10) << module->first << 
"... " << flush);
 
  143         z0.
put(i->getX(), (q.twist.getD() > 0.0 ? +2.0 : -2.0) * acos(q.twist.getA()));
 
  154     STATUS(
"Creating graphics for compiled data " << setw(10) << module->first << 
"... " << flush);
 
  156     if (router.getModule(module->first).getFloor() != 0 && !module->second.empty()) {
 
  162       const Double_t xmin = module->second.getXmin();
 
  163       const Double_t xmax = module->second.getXmax();
 
  164       const Int_t    nx   = (Int_t) ((xmax - xmin) / 
Tmax_s);
 
  166       TH1D* h0 = H0[module->first] = 
new TH1D(
MAKE_CSTRING(
"H[" << module->first << 
"].twist"), NULL, nx, xmin, xmax);
 
  168       for (Int_t i = 1; i <= h0->GetXaxis()->GetNbins(); ++i) {
 
  170         const Double_t      
x = h0->GetXaxis()->GetBinCenter(i);
 
  175         h0->SetBinContent(i, (q.twist.getD() > 0.0 ? +2.0 : -2.0) * acos(q.twist.getA()));
 
  183   const Double_t xmin = 
getUTCTimeRange(dynamics.orientation.begin(), dynamics.orientation.end()).getLowerLimit();
 
  184   const Double_t xmax = 
getUTCTimeRange(dynamics.orientation.begin(), dynamics.orientation.end()).getUpperLimit();
 
  185   const Int_t    nx   = (Int_t) ((xmax - xmin) / 
Tmax_s);
 
  189   for (Int_t i = 1; i <= X0->GetXaxis()->GetNbins(); ++i) {
 
  191     STATUS(
"Creating graphics for detector data " << 
FIXED(5,1) << (
double) (i * 100) / (
double) X0->GetXaxis()->GetNbins() << 
"%... " << flush << 
'\r');
 
  193     const Double_t   x      = X0->GetXaxis()->GetBinCenter(i);
 
  194     const JDetector& buffer = dynamics.update(x);
 
  196     for (JDetector::const_iterator module = buffer.begin(); module != buffer.end(); ++module) {
 
  198       if (module->getFloor() != 0) {
 
  200         TH1D* x0 = X0[module->getID()];
 
  206         x0->SetBinContent(i, (q.twist.getD() > 0.0 ? +2.0 : -2.0) * acos(q.twist.getA()));
 
Utility class to parse command line options. 
 
JDAQUTCTimeRange getUTCTimeRange()
Get UTC time range. 
 
Q(UTCMax_s-UTCMin_s)-livetime_s
 
void put(const Double_t x, const Double_t y)
Put data. 
 
Data structure for graph data. 
 
Router for direct addressing of module data in detector data structure. 
 
bool hasDetectorAddressMap(const int id)
Check if detector address map is available. 
 
static JRotation getRotation
Function object to get rotation matrix to go from first to second module. 
 
#define MAKE_CSTRING(A)
Make C-string. 
 
Lookup table for PMT addresses in detector. 
 
Auxiliary data structure for floating point format specification. 
 
Auxiliary data structure to build TGraph. 
 
const JQuaternion3D & getQuaternion() const 
Get quaternion. 
 
Auxiliary class for defining the range of iterations of objects. 
 
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
JDetectorAddressMap & getDetectorAddressMap()
Get detector address map. 
 
data_type::const_iterator const_iterator
 
Data structure for unit quaternion in three dimensions. 
 
Dynamic detector calibration. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
General purpose class for object reading from a list of file names. 
 
static const JVector3D JVector3Z_t(0, 0, 1)
unit z-vector 
 
const JLimit & getLimit() const 
Get limit. 
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
Auxiliary data structure for decomposition of quaternion in twist and swing quaternions. 
 
const JModule & getModule(const JDetector &detector, const JModuleLocation &location)
find module with a given string and floor number 
 
then usage $script< detector file >< tripodfile >< stage > input file nInput files correspond to the output of JAcousticsEventBuilder[.sh] nFirst stage eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY eval JPrintDetector a $DETECTOR O CAN source JAcoustics sh $DETECTOR_ID typeset A CONFIGURATION for key in Tmax_s
 
JQuaternion3D & conjugate()
Conjugate quaternion.