9 #include "TMatrixDSymEigen.h"
25 namespace JGEOMETRY3D {}
26 namespace JPP {
using namespace JGEOMETRY3D; }
28 namespace JGEOMETRY3D {
34 public std::map<double, JVector3D, std::greater<double> >
54 for (
T i = __begin;
i != __end; ++
i) {
56 const double dx = center.
getX() -
i->getX();
57 const double dy = center.
getY() -
i->getY();
58 const double dz = center.
getZ() -
i->getZ();
74 const TMatrixDSymEigen
result(A);
76 const TVectorD&
u = result.GetEigenValues();
77 const TMatrixD&
V = result.GetEigenVectors();
79 for (Int_t
i = 0;
i != u.GetNoElements(); ++
i) {
125 for (
T i = __begin;
i != __end; ++
i) {
150 const TMatrixDSymEigen
result(
A);
152 const TVectorD&
u = result.GetEigenValues();
153 const TMatrixD&
V = result.GetEigenVectors();
155 if (u.GetNoElements() != 0 && fabs(u[0]) > MINIMAL_EIGEN_VALUE) {
159 if (Q.
getA() < 0.0) {
187 a(3,0) =
a(0,3);
a(3,1) =
a(1,3);
a(3,2) =
a(2,3);
a(3,3) = Q.
getD()*Q.
getD();
229 this->
set(xmin, xmax);
241 const double z = this->getX(x);
244 for (
size_t n = 0;
n != this->size(); ++
n) {
282 this->
set(xmin, xmax);
302 this->
set(__begin, __end);
321 this->
set(__begin, __end, __end);
343 static const double factor = 1.0 / (
PI * 45.0 / 180.0);
345 for (
size_t n = 0;
n !=
N + 1; ++
n) {
349 this->
xmin = std::numeric_limits<double>::max();
350 this->
xmax = std::numeric_limits<double>::lowest();
352 for (
T i = __begin;
i != __end; ++
i) {
354 if (
i->first <
this->xmin) { this->
xmin =
i->first; }
355 if (
i->first >
this->xmax) { this->
xmax =
i->first; }
359 for (
size_t n = 0;
n !=
N + 1; ++
n) {
363 for (
T i = __begin;
i != __end; ++
i) {
366 const double x =
i->first;
368 const double z = this->getX(x);
379 (*this)[
n].pow(factor);
394 for (
typename JLegendre::iterator
i =
object.begin();
i !=
object.end(); ++
i) {
JQuaternion3D & pow(const double y)
Raise quaternion to given power.
virtual JQuaternion3D getValue(const double x) const override
Function value.
Q(UTCMax_s-UTCMin_s)-livetime_s
double getValue(const JScale_t scale)
Get numerical value corresponding to scale.
double getB() const
Get b value.
void set(T __begin, T __end)
Set Legendre polynome of quaternions.
JLegendre()
Default constructor.
JLegendre(const double xmin, const double xmax)
Constructor.
friend std::istream & operator>>(std::istream &in, JLegendre &object)
Read Legendre polynome from input.
JLegendre(const double xmin, const double xmax)
Constructor.
then usage $script< detector file >< detectorfile > nIf the range of floors is the first detector file is aligned to the second before the comparison nIn this
static const JZero zero
Function object to assign zero value.
V(JDAQEvent-JTriggerReprocessor)*1.0/(JDAQEvent+1.0e-10)
Template spacialisation for averaging quaternions.
void put(const JValue_t &value, const double w=1.0)
Put value.
void set(T __begin, T __not, T __end)
Set Legendre polynome of quaternions.
JAverage(T __begin, T __end)
Constructor.
Data structure for vector in three dimensions.
do set_variable OUTPUT_DIRECTORY $WORKDIR T
Template definition for function evaluation of Legendre polynome.
JLegendre(T __begin, T __end)
Constructor.
T pow(const T &x, const double y)
Power .
static const double PI
Mathematical constants.
double getY() const
Get y position.
JAverage()
Default constructor.
double getD() const
Get d value.
Data structure for unit quaternion in three dimensions.
void put(const JQuaternion3D &Q, const double w=1.0)
Put quaternion.
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
Exception for division by zero.
JLegendre()
Default constructor.
double legendre(const size_t n, const double x)
Legendre polynome.
double getC() const
Get c value.
double getX() const
Get x position.
Base class for data structures with artithmetic capabilities.
double getA() const
Get a value.
static double MINIMAL_EIGEN_VALUE
Numerical precision for eigen value evaluation.
JQuaternion3D & normalise()
Normalise quaternion.
void set(T __begin, T __end)
Set Legendre polynome.
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
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
JEigenValues3D(T __begin, T __end)
Constructor.
Base class for Legendre polynome.
JQuaternion3D & negate()
Negate quaternion.
double getZ() const
Get z position.
Auxiliary class to determine average of set of values.