Evaluation of fit.
724 for (
T hit = __begin; hit != __end; ++hit) {
730 const double D = hit->getDistance(position);
731 const double Vi = velocity.getInverseVelocity(D, hit->getZ(), position.
getZ());
732 const double toa_s =
value.
emitter[hit->getEKey()].t1 + D * Vi;
734 const double u = (toa_s - hit->getValue()) / hit->sigma;
735 const double W = sqrt(hit->getWeight());
737 successor += (W*W) * estimator->getRho(u);
739 H_t
H(1.0,
string.getGradient(parameters, hit->getPosition(), hit->getFloor()) * Vi);
741 H *= W * estimator->getPsi(u) / hit->sigma;
752 V(i.t1, i.t1) +=
H.t1 *
H.t1;
756 if (hit->getFloor() != 0) {
758 switch (this->option) {
761 V(i.t1, i.vs) +=
H.t1 *
H.vs;
V(i.tx, i.vs) +=
H.tx *
H.vs;
V(i.ty, i.vs) +=
H.ty *
H.vs;
V(i.tx2, i.vs) +=
H.tx2 *
H.vs;
V(i.ty2, i.vs) +=
H.ty2 *
H.vs;
763 V(i.vs, i.t1) +=
H.vs *
H.t1;
764 V(i.vs, i.tx) +=
H.vs *
H.tx;
765 V(i.vs, i.ty) +=
H.vs *
H.ty;
766 V(i.vs, i.tx2) +=
H.vs *
H.tx2;
767 V(i.vs, i.ty2) +=
H.vs *
H.ty2;
769 V(i.vs, i.vs) +=
H.vs *
H.vs;
774 V(i.t1, i.tx2) +=
H.t1 *
H.tx2;
V(i.tx, i.tx2) +=
H.tx *
H.tx2;
V(i.ty, i.tx2) +=
H.ty *
H.tx2;
776 V(i.tx2, i.t1) +=
H.tx2 *
H.t1;
777 V(i.tx2, i.tx) +=
H.tx2 *
H.tx;
778 V(i.tx2, i.ty) +=
H.tx2 *
H.ty;
780 V(i.t1, i.ty2) +=
H.t1 *
H.ty2;
V(i.tx, i.ty2) +=
H.tx *
H.ty2;
V(i.ty, i.ty2) +=
H.ty *
H.ty2;
782 V(i.ty2, i.t1) +=
H.ty2 *
H.t1;
783 V(i.ty2, i.tx) +=
H.ty2 *
H.tx;
784 V(i.ty2, i.ty) +=
H.ty2 *
H.ty;
786 V(i.tx2, i.tx2) +=
H.tx2 *
H.tx2;
V(i.tx2, i.ty2) +=
H.tx2 *
H.ty2;
787 V(i.ty2, i.tx2) +=
H.ty2 *
H.tx2;
V(i.ty2, i.ty2) +=
H.ty2 *
H.ty2;
789 Y[i.tx2] += W *
H.tx2;
790 Y[i.ty2] += W *
H.ty2;
793 V(i.t1, i.tx) +=
H.t1 *
H.tx;
V(i.t1, i.ty) +=
H.t1 *
H.ty;
794 V(i.tx, i.t1) +=
H.tx *
H.t1;
V(i.ty, i.t1) +=
H.ty *
H.t1;
796 V(i.tx, i.tx) +=
H.tx *
H.tx;
V(i.tx, i.ty) +=
H.tx *
H.ty;
797 V(i.ty, i.tx) +=
H.ty *
H.tx;
V(i.ty, i.ty) +=
H.ty *
H.ty;
fit times of emission of emitters and tilt angles of strings with second order correction and stretch...
static const double H
Planck constant [eV s].
*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
JMatrixND & reset()
Set matrix to the null matrix.
fit times of emission of emitters and tilt angles of strings
do set_variable OUTPUT_DIRECTORY $WORKDIR T
const JPosition3D & getPosition() const
Get position.
fit times of emission of emitters and tilt angles of strings with second order correction ...
size_t getIndex(int id, double JString::*p) const
Get index of fit parameter for given string.
JACOUSTICS::JModel::string_type string
JACOUSTICS::JModel::emitter_type emitter
Data structure for position in three dimensions.
do echo Generating $dir eval D
double getZ() const
Get z position.