45   static const int NUMBER_OF_POINTS  = 20;    
 
   46   static const int NUMBER_OF_DEGREES =  1;    
 
   65 int main(
int argc, 
char **argv)
 
   81     JParser<> zap(
"Auxiliary program to process AHRS data.");
 
   83     zap[
'f'] = 
make_field(inputFile,    
"output of JConvertDB -q ahrs");
 
   84     zap[
'n'] = 
make_field(numberOfEvents)                                    = JLimit::max();
 
   86     zap[
'c'] = 
make_field(ahrsFile,     
"output of JAHRSCalibration");
 
   88     zap[
'S'] = 
make_field(angle_deg,    
"maximal angle w.r.t. fit")          = 0.0;
 
   89     zap[
'T'] = 
make_field(T_s,          
"time window for averaging")         = 0.0;
 
   94   catch(
const exception &error) {
 
   95     FATAL(error.what() << endl);
 
  116   NOTICE(
"Magnetic declination " << getMagneticDeclination << endl);
 
  117   NOTICE(
"Meridian angle [rad] " << 
FIXED(5,3) << meridian << endl);
 
  136   for (JMultipleFileScanner_t::const_iterator file_name = inputFile.begin(); file_name != inputFile.end(); ++file_name) {
 
  138     STATUS(
"processing file " << *file_name << 
"... " << flush);
 
  147       const int    id         = parameters->
DOMID; 
 
  157           compass.
correct(getMagneticDeclination(parameters->
UNIXTIME * 1.0e-3), meridian);
 
  161           data[id].push_back(element_type(parameters->
UNIXTIME * 1.0e-3, Q));
 
  168     if (angle_deg > 0.0) {
 
  170       for (map_type::iterator module = data.begin(); module != data.end(); ++module) {
 
  172         if (!module->second.empty()) {
 
  176           buffer_type::iterator       out = module->second.begin();       
 
  177           buffer_type::const_iterator 
in  = module->second.begin();       
 
  178           buffer_type::const_iterator p   = module->second.begin();       
 
  179           buffer_type::const_iterator q   = module->second.begin();       
 
  181           for (
int i = 0; 
i != NUMBER_OF_POINTS && q != module->second.end(); ++
i, ++q) {}
 
  183           for (
int i = 0; 
i != NUMBER_OF_POINTS/2 && in != q; ++
i, ++
in) {
 
  187             if (
getAngle(in->second, 
f1(in->first)) <= angle_deg) {
 
  193           for (++p; q++ != module->second.end(); ++p, ++
in) {
 
  197             if (
getAngle(in->second, 
f1(in->first)) <= angle_deg) {
 
  203           for ( ; in != module->second.end(); ++
in) {
 
  207             if (
getAngle(in->second, 
f1(in->first)) <= angle_deg) {
 
  213           module->second.erase(out, module->second.end());                
 
  223     const JPolicy policy(router, buffer.begin(), buffer.end());
 
  225     for (JPolicy::const_iterator module = policy.begin(); module != policy.end(); ++module) {
 
  229       for (JPolicy::mapped_type::const_iterator 
in = module->second.begin(); 
in != module->second.end(); ++
in) {
 
  230         for (map_type::mapped_type::const_iterator 
i = data[*
in].begin(); 
i != data[*
in].end(); ++
i) {
 
  231           buffer.push_back(element_type(
i->first, 
i->second));
 
  241         buffer_type::iterator       out = buffer.begin();                 
 
  242         buffer_type::const_iterator p   = buffer.begin();                 
 
  243         buffer_type::const_iterator q   = buffer.begin();                 
 
  245         for (p = buffer.begin(); p != buffer.end(); p = q) {
 
  247           for (q = p; q != buffer.end() && q->first - p->first < T_s; ++q) {}
 
  254             out->first  = 
getAverage(t1.begin(), t1.end());
 
  255             out->second = 
getAverage(q1.begin(), q1.end());
 
  265         buffer.erase(out, buffer.end());                                  
 
  268       for (buffer_type::const_iterator 
i = buffer.begin(); 
i != buffer.end(); ++
i) {
 
bool isORCADetector(const JDetectorHeader &header)
Check if given detector header is compatible with that of ORCA. 
 
Utility class to parse command line options. 
 
double getAngle(const JQuaternion3D &first, const JQuaternion3D &second)
Get space angle between quanternions. 
 
static JARCAMagneticDeclination getARCAMagneticDeclination
Function object for magnetic declination at ARCA site. 
 
Q(UTCMax_s-UTCMin_s)-livetime_s
 
void correct(const double declination, const double meridian)
Correct compass for magnetic declination and meridian convergence angle. 
 
int main(int argc, char *argv[])
 
JComparator< JResult_t T::*, JComparison::lt > make_comparator(JResult_t T::*member)
Helper method to create comparator between values of data member. 
 
int getFloor() const 
Get floor number. 
 
const JModule & getModule(const JObjectID &id) const 
Get module parameters. 
 
Data structure for a composite optical module. 
 
bool isARCADetector(const JDetectorHeader &header)
Check if given detector header is compatible with tat of ARCA. 
 
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance. 
 
JQuaternion3D getQuaternion(const JQuaternion &Q)
Get quaternion. 
 
General purpose class for hash map of unique elements. 
 
bool is_valid(const json &js)
Check validity of JSon data. 
 
JPolynome & set(const Args &...args)
Set values. 
 
static JZEROMagneticDeclination getZEROMagneticDeclination
Function object for zero magnetic declination. 
 
Recording of objects on file according a format that follows from the file name extension. 
 
Router for direct addressing of module data in detector data structure. 
 
std::iterator_traits< T >::value_type getAverage(T __begin, T __end)
Get average. 
 
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
 
Long64_t counter_type
Type definition for counter. 
 
Auxiliary data structure for floating point format specification. 
 
static const double ARCA_MERIDIAN_CONVERGENCE_ANGLE_RAD
ARCA meridian convergence angle [rad]. 
 
Data structure for detector geometry and calibration. 
 
static JORCAMagneticDeclination getORCAMagneticDeclination
Function object for magnetic declination at ORCA site. 
 
std::vector< JHitW0 > buffer_type
hits 
 
ROOT TTree parameter settings. 
 
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
 
static const int COMPASS_DISABLE
Enable (disable) use of compass if this status bit is 0 (1);. 
 
const JPolynome f1(1.0, 2.0, 3.0)
Function. 
 
I/O formatting auxiliaries. 
 
Auxiliary base class for interpolation of magnetic declination data obtained from website of NOAA...
 
bool has(const int bit) const 
Test PMT status. 
 
Auxiliary class to define policy for invalid modules. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
const array_type< JValue_t > & make_array(const JValue_t(&array)[N])
Method to create array of values. 
 
Template definition for function evaluation of Legendre polynome. 
 
Data structure for compass in three dimensions. 
 
ROOT TTree parameter settings. 
 
Meridian convergence angles for different sites. 
 
Auxiliary methods to convert data members or return values of member methods of a set of objects to a...
 
General purpose messaging. 
 
Scanning of objects from multiple files according a format that follows from the extension of each fi...
 
Data structure for unit quaternion in three dimensions. 
 
Direct access to module in detector data structure. 
 
Auxiliary base class for list of file names. 
 
Policy for invalid modules. 
 
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. 
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
 
Utility class to parse command line options. 
 
bool hasModule(const JObjectID &id) const 
Has module. 
 
Auxiliary class to map module identifier to AHRS calibration. 
 
Compass event data types. 
 
std::map< int, range_type > map_type
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
static const double ORCA_MERIDIAN_CONVERGENCE_ANGLE_RAD
ORCA meridian convergence angle [rad]. 
 
long long int UNIXTIME
[ms] 
 
Auxiliary data structure for return type of make methods. 
 
Auxiliary data structure to check validity of AHRS data.