BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Member Functions | |
BasicVector3D () | |
BasicVector3D (const T x1, const T y1, const T z1) | |
T | operator[] (int i) const |
T & | operator[] (int i) |
T | x () const |
T | y () const |
T | z () const |
void | setX (const T &a) |
void | setY (const T &a) |
void | setZ (const T &a) |
BasicVector3D< T > & | operator+= (const BasicVector3D< T > &v) |
BasicVector3D< T > & | operator-= (const BasicVector3D< T > &v) |
template<class U > | |
auto | operator*= (U a) |
template<class U > | |
auto | operator/= (U a) |
BasicVector3D< T > | conj () const |
double | mag2 () const |
double | mag () const |
double | magxy2 () const |
double | magxy () const |
double | phi () const |
double | theta () const |
double | cosTheta () const |
double | sin2Theta () const |
BasicVector3D< T > | unit () const |
BasicVector3D< std::complex< double > > | complex () const |
BasicVector3D< double > | real () const |
template<class U > | |
auto | dot (const BasicVector3D< U > &v) const |
template<class U > | |
auto | cross (const BasicVector3D< U > &v) const |
double | angle (const BasicVector3D< T > &v) const |
BasicVector3D< T > | project (const BasicVector3D< T > &v) const |
BasicVector3D< T > | rotatedX (double a) const |
BasicVector3D< T > | rotatedY (double a) const |
BasicVector3D< T > | rotatedZ (double a) const |
BasicVector3D< T > | rotated (double a, const BasicVector3D< T > &v) const |
BasicVector3D< complex_t > | conj () const |
BasicVector3D< double > | real () const |
BasicVector3D< complex_t > | unit () const |
Private Attributes | |
T | v_ [3] |
Related Functions | |
(Note that these are not member functions.) | |
template<class T > | |
std::ostream & | operator<< (std::ostream &os, const BasicVector3D< T > &a) |
template<class T > | |
BasicVector3D< T > | operator+ (const BasicVector3D< T > &v) |
template<class T > | |
BasicVector3D< T > | operator- (const BasicVector3D< T > &v) |
template<class T > | |
BasicVector3D< T > | operator+ (const BasicVector3D< T > &a, const BasicVector3D< T > &b) |
template<class T > | |
BasicVector3D< T > | operator- (const BasicVector3D< T > &a, const BasicVector3D< T > &b) |
template<class T , class U > | |
auto | operator* (const BasicVector3D< T > &v, const U a) |
template<class T , class U > | |
auto | operator* (const U a, const BasicVector3D< T > &v) |
template<class T , class U > | |
BasicVector3D< T > | operator/ (const BasicVector3D< T > &v, U a) |
template<class T > | |
bool | operator== (const BasicVector3D< T > &a, const BasicVector3D< T > &b) |
template<class T > | |
bool | operator!= (const BasicVector3D< T > &a, const BasicVector3D< T > &b) |
Forked from CLHEP/Geometry by E.
Chernyaev Evgue, then reworked beyond recognition. Removed split of point and vector semantics. Transforms are relegated to a separate class ni.T chern iaev @cern .chTransform3D. Three-dimensional vector template, for use with integer, double, or complex components.
Definition at line 27 of file BasicVector3D.h.
|
inline |
Default constructor.
Definition at line 38 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
|
inline |
Constructor from cartesian components.
Definition at line 46 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
|
inline |
Returns components by index.
Definition at line 58 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
|
inline |
Sets components by index.
Definition at line 61 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
|
inline |
Returns x-component in cartesian coordinate system.
Definition at line 64 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by DetectionProperties::analyzerOperator(), SpecularMagneticStrategy::calculateTR(), MatrixRTCoefficients_v3::computeDeltaMatrix(), Lattice::computeInverseVectors(), SpecularMagneticNewNCStrategy::computeRoughnessMatrices(), BasicVector3D< T >::cross(), SimulationToPython::defineDetectorPolarizationAnalysis(), SampleToPython::defineLattices(), SampleToPython::defineMaterials(), BasicVector3D< T >::dot(), InterferenceFunction2DSuperLattice::evaluate(), Prism::evaluate_for_q(), FormFactorBox::evaluate_for_q(), FormFactorCylinder::evaluate_for_q(), FormFactorEllipsoidalCylinder::evaluate_for_q(), FormFactorFullSpheroid::evaluate_for_q(), FormFactorHollowSphere::evaluate_for_q(), FormFactorLongBoxGauss::evaluate_for_q(), FormFactorLongBoxLorentz::evaluate_for_q(), IProfileRipple::evaluate_for_q(), FormFactorGaussSphere::evaluate_for_q(), FormFactorSphereGaussianRadius::evaluate_for_q(), FormFactorDWBAPol::evaluatePol(), someff::ffSphere(), LayerRoughness::getCorrFun(), Beam::getPolarization(), LayerRoughness::getSpectralFun(), InterferenceFunction1DLattice::iff_without_dw(), InterferenceFunction2DLattice::iff_without_dw(), InterferenceFunction2DParaCrystal::iff_without_dw(), InterferenceFunction2DSuperLattice::iff_without_dw(), InterferenceFunctionFinite2DLattice::iff_without_dw(), InterferenceFunctionHardDisk::iff_without_dw(), InterferenceFunctionRadialParaCrystal::iff_without_dw(), FormFactorCone::Integrand(), FormFactorHemiEllipsoid::Integrand(), FormFactorTruncatedSphere::Integrand(), FormFactorTruncatedSpheroid::Integrand(), anonymous_namespace{SimulationToPython.cpp}::isDefaultDirection(), SpecularMagneticStrategy::nullifyBottomReflection(), BasicVector3D< T >::operator!=(), BasicVector3D< T >::operator*(), BasicVector3D< T >::operator+(), BasicVector3D< T >::operator-(), BasicVector3D< T >::operator/(), BasicVector3D< T >::operator<<(), BasicVector3D< T >::operator==(), MatrixRTCoefficients_v3::pMatrixHelper(), pyfmt::printKvector(), BasicVector3D< T >::rotatedZ(), SampleToPython::setPositionInformation(), IParameterized::setVectorValue(), MatrixRTCoefficients_v3::TransformationMatrix(), Transform3D::transformed(), and Transform3D::transformedInverse().
|
inline |
Returns y-component in cartesian coordinate system.
Definition at line 66 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by DetectionProperties::analyzerOperator(), SpecularMagneticStrategy::calculateTR(), MatrixRTCoefficients_v3::computeDeltaMatrix(), Lattice::computeInverseVectors(), BasicVector3D< T >::cross(), SimulationToPython::defineDetectorPolarizationAnalysis(), SampleToPython::defineLattices(), SampleToPython::defineMaterials(), BasicVector3D< T >::dot(), InterferenceFunction2DSuperLattice::evaluate(), Prism::evaluate_for_q(), FormFactorBox::evaluate_for_q(), FormFactorCylinder::evaluate_for_q(), FormFactorEllipsoidalCylinder::evaluate_for_q(), FormFactorFullSpheroid::evaluate_for_q(), FormFactorHollowSphere::evaluate_for_q(), FormFactorLongBoxGauss::evaluate_for_q(), FormFactorLongBoxLorentz::evaluate_for_q(), IProfileRipple::evaluate_for_q(), FormFactorGaussSphere::evaluate_for_q(), FormFactorSphereGaussianRadius::evaluate_for_q(), FormFactorDWBAPol::evaluatePol(), someff::ffSphere(), LayerRoughness::getCorrFun(), Beam::getPolarization(), LayerRoughness::getSpectralFun(), InterferenceFunction1DLattice::iff_without_dw(), InterferenceFunction2DLattice::iff_without_dw(), InterferenceFunction2DParaCrystal::iff_without_dw(), InterferenceFunction2DSuperLattice::iff_without_dw(), InterferenceFunctionFinite2DLattice::iff_without_dw(), InterferenceFunctionHardDisk::iff_without_dw(), InterferenceFunctionRadialParaCrystal::iff_without_dw(), FormFactorCone::Integrand(), FormFactorHemiEllipsoid::Integrand(), FormFactorTruncatedSphere::Integrand(), FormFactorTruncatedSpheroid::Integrand(), anonymous_namespace{SimulationToPython.cpp}::isDefaultDirection(), SpecularMagneticStrategy::nullifyBottomReflection(), BasicVector3D< T >::operator!=(), BasicVector3D< T >::operator*(), BasicVector3D< T >::operator+(), BasicVector3D< T >::operator-(), BasicVector3D< T >::operator/(), BasicVector3D< T >::operator<<(), BasicVector3D< T >::operator==(), MatrixRTCoefficients_v3::pMatrixHelper(), pyfmt::printKvector(), BasicVector3D< T >::rotatedZ(), SampleToPython::setPositionInformation(), IParameterized::setVectorValue(), MatrixRTCoefficients_v3::TransformationMatrix(), Transform3D::transformed(), and Transform3D::transformedInverse().
|
inline |
Returns z-component in cartesian coordinate system.
Definition at line 68 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by DetectionProperties::analyzerOperator(), FormFactorFullSphere::bottomZ(), FormFactorDecoratorPositionFactor::bottomZ(), anonymous_namespace{SpecularMagneticOldStrategy.cpp}::CalculateEigenvalues(), SpecularMagneticStrategy::calculateTR(), MatrixRTCoefficients_v3::computeDeltaMatrix(), Lattice::computeInverseVectors(), KzComputation::computeKzFromRefIndices(), KzComputation::computeReducedKz(), IFormFactorBorn::computeSlicingEffects(), BasicVector3D< T >::cross(), SimulationToPython::defineDetectorPolarizationAnalysis(), SampleToPython::defineLattices(), SampleToPython::defineMaterials(), BasicVector3D< T >::dot(), FormFactorDWBA::evaluate(), Polyhedron::evaluate_for_q(), Prism::evaluate_for_q(), FormFactorBox::evaluate_for_q(), FormFactorCylinder::evaluate_for_q(), FormFactorEllipsoidalCylinder::evaluate_for_q(), FormFactorFullSphere::evaluate_for_q(), FormFactorFullSpheroid::evaluate_for_q(), FormFactorHollowSphere::evaluate_for_q(), FormFactorLongBoxGauss::evaluate_for_q(), FormFactorLongBoxLorentz::evaluate_for_q(), FormFactorTruncatedSphere::evaluate_for_q(), FormFactorTruncatedSpheroid::evaluate_for_q(), IProfileRipple::evaluate_for_q(), FormFactorGaussSphere::evaluate_for_q(), FormFactorSphereGaussianRadius::evaluate_for_q(), someff::ffSphere(), Beam::getPolarization(), ProcessedSample::initBFields(), RectangularDetector::initNormalVector(), FormFactorCone::Integrand(), FormFactorHemiEllipsoid::Integrand(), FormFactorTruncatedSphere::Integrand(), FormFactorTruncatedSpheroid::Integrand(), anonymous_namespace{SimulationToPython.cpp}::isDefaultDirection(), SpecularMagneticStrategy::nullifyBottomReflection(), BasicVector3D< T >::operator!=(), BasicVector3D< T >::operator*(), BasicVector3D< T >::operator+(), BasicVector3D< T >::operator-(), BasicVector3D< T >::operator/(), BasicVector3D< T >::operator<<(), BasicVector3D< T >::operator==(), MatrixRTCoefficients_v3::pMatrixHelper(), pyfmt::printKvector(), BasicVector3D< T >::rotatedZ(), SampleToPython::setPositionInformation(), IParameterized::setVectorValue(), anonymous_namespace{IFormFactor.cpp}::ShapeIsContainedInLimits(), anonymous_namespace{IFormFactor.cpp}::ShapeOutsideLimits(), FormFactorFullSphere::topZ(), FormFactorDecoratorPositionFactor::topZ(), MatrixRTCoefficients_v3::TransformationMatrix(), Transform3D::transformed(), and Transform3D::transformedInverse().
|
inline |
Sets x-component in cartesian coordinate system.
Definition at line 71 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by Lattice::computeInverseVectors().
|
inline |
Sets y-component in cartesian coordinate system.
Definition at line 73 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by Lattice::computeInverseVectors().
|
inline |
Sets z-component in cartesian coordinate system.
Definition at line 75 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by Lattice::computeInverseVectors(), IFormFactorBorn::computeSlicingEffects(), IInterferenceFunction::DWfactor(), FormFactorDWBA::evaluate(), FormFactorDWBAPol::evaluatePol(), Slice::initBField(), and RectangularDetector::initNormalVector().
|
inline |
Adds other vector to this, and returns result.
Definition at line 82 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
|
inline |
Subtracts other vector from this, and returns result.
Definition at line 91 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Multiplies this with a scalar, and returns result.
Definition at line 101 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Divides this by a scalar, and returns result.
Definition at line 112 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
BasicVector3D<T> BasicVector3D< T >::conj | ( | ) | const |
Returns complex conjugate vector.
|
inline |
Returns magnitude squared of the vector.
Definition at line 129 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by KzComputation::computeKzFromRefIndices(), FormFactorCrystal::debyeWallerFactor(), IInterferenceFunction::DWfactor(), IsotropicGaussPeakShape::evaluate(), IsotropicLorentzPeakShape::evaluate(), MisesFisherGaussPeakShape::evaluate(), MisesGaussPeakShape::evaluate(), Polyhedron::evaluate_centered(), PolyhedralFace::expansion(), PolyhedralFace::ff(), PolyhedralFace::ff_2D(), PolyhedralFace::ff_n(), ScalarFresnelMap::getCoefficientsFromCache(), InterferenceFunctionTwin::InterferenceFunctionTwin(), BasicVector3D< T >::mag(), anonymous_namespace{MagneticMaterialImpl.cpp}::OrthogonalToBaseVector(), MaterialUtils::PolarizedReducedPotential(), PolyhedralEdge::PolyhedralEdge(), PolyhedralFace::PolyhedralFace(), and BasicVector3D< T >::project().
|
inline |
Returns magnitude of the vector.
Definition at line 132 of file BasicVector3D.h.
References BasicVector3D< T >::mag2().
Referenced by DetectionProperties::analyzerOperator(), anonymous_namespace{SpecularMagneticOldStrategy.cpp}::CalculateEigenvalues(), FormFactorCrystal::calculateLargestReciprocalDistance(), RectangularPixel::calculateSolidAngle(), SpecularMagneticStrategy::calculateTR(), DetectionProperties::checkAnalyzerProperties(), MatrixRTCoefficients_v3::computeDeltaMatrix(), KzComputation::computeReducedKz(), SpecularMagneticStrategy::computeTR(), PolyhedralFace::decompose_q(), SimulationToPython::defineDetectorPolarizationAnalysis(), GaussFisherPeakShape::evaluate(), LorentzFisherPeakShape::evaluate(), MisesFisherGaussPeakShape::evaluate(), MisesGaussPeakShape::evaluate(), Polyhedron::evaluate_centered(), FormFactorCone::evaluate_for_q(), FormFactorHemiEllipsoid::evaluate_for_q(), FormFactorTruncatedSphere::evaluate_for_q(), FormFactorTruncatedSpheroid::evaluate_for_q(), PolyhedralFace::ff(), PolyhedralFace::ff_2D(), PolyhedralFace::ff_n(), RectangularPixel::getIntegrationFactor(), InterferenceFunction3DLattice::iff_without_dw(), InterferenceFunction3DLattice::initRecRadius(), RectangularDetector::initUandV(), anonymous_namespace{SpecularMagneticNewStrategy.cpp}::magneticSLD(), MatrixRTCoefficients_v3::MatrixRTCoefficients_v3(), SpecularMagneticStrategy::nullifyBottomReflection(), Slice::polarizedReducedPotential(), Slice::scalarReducedPotential(), DetectionProperties::setAnalyzerProperties(), Beam::setPolarization(), RectangularDetector::setPosition(), MatrixRTCoefficients_v3::TransformationMatrix(), and Lattice::vectorsWithinRadius().
|
inline |
Returns squared distance from z axis.
Definition at line 135 of file BasicVector3D.h.
References BasicVector3D< T >::v_.
Referenced by BasicVector3D< T >::magxy().
|
inline |
Returns distance from z axis.
Definition at line 138 of file BasicVector3D.h.
References BasicVector3D< T >::magxy2().
Referenced by SSCApproximationStrategy::polarizedCalculation(), and SSCApproximationStrategy::scalarCalculation().
double BasicVector3D< T >::phi | ( | ) | const |
Returns azimuth angle.
Referenced by RectangularConverter::axisAngle(), and SimulationElement::getPhi().
double BasicVector3D< T >::theta | ( | ) | const |
Returns polar angle.
Referenced by RectangularConverter::axisAngle(), SimulationElement::getAlpha(), and ScalarFresnelMap::getCoefficientsFromCache().
double BasicVector3D< T >::cosTheta | ( | ) | const |
Returns cosine of polar angle.
double BasicVector3D< T >::sin2Theta | ( | ) | const |
Returns squared sine of polar angle.
Referenced by MaterialUtils::ScalarReducedPotential().
BasicVector3D<T> BasicVector3D< T >::unit | ( | ) | const |
Returns unit vector in direction of this. Throws for null vector.
Referenced by MisesFisherGaussPeakShape::evaluate(), MisesGaussPeakShape::evaluate(), Lattice::getMillerDirection(), InterferenceFunctionTwin::iff_without_dw(), RectangularDetector::indexOfSpecular(), RectangularDetector::initNormalVector(), RectangularDetector::initUandV(), RectangularPixel::normalizeLength(), RectangularConverter::normalizeToWavelength(), PolyhedralFace::PolyhedralFace(), and DetectionProperties::setAnalyzerProperties().
BasicVector3D<std::complex<double> > BasicVector3D< T >::complex | ( | ) | const |
Returns this, trivially converted to complex type.
Referenced by Bin1DCVector::Bin1DCVector(), FormFactorCrystal::evaluate(), FormFactorCrystal::evaluatePol(), and anonymous_namespace{MagneticMaterialImpl.cpp}::OrthogonalToBaseVector().
BasicVector3D<double> BasicVector3D< T >::real | ( | ) | const |
Returns real parts.
Referenced by FormFactorCrystal::evaluate(), and FormFactorCrystal::evaluatePol().
|
inline |
Returns dot product of vectors (antilinear in the first [=self] argument).
Returns dot product of (complex) vectors (antilinear in the first [=self] argument).
Definition at line 310 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
Referenced by RectangularPixel::calculateSolidAngle(), Lattice::computeReciprocalVectors(), PolyhedralEdge::contrib(), PolyhedralFace::decompose_q(), PolyhedralFace::edge_sum_ff(), GaussFisherPeakShape::evaluate(), LorentzFisherPeakShape::evaluate(), MisesFisherGaussPeakShape::evaluate(), MisesGaussPeakShape::evaluate(), PolyhedralFace::ff_2D(), PolyhedralFace::ff_n(), PolyhedralFace::ff_n_core(), RectangularPixel::getIntegrationFactor(), Lattice::getNearestLatticeVectorCoordinates(), Lattice::getNearestReciprocalLatticeVectorCoordinates(), FormFactorDecoratorPositionFactor::getPositionFactor(), InterferenceFunctionFinite3DLattice::iff_without_dw(), InterferenceFunctionTwin::iff_without_dw(), RectangularDetector::indexOfSpecular(), RectangularDetector::initUandV(), MisesFisherGaussPeakShape::integrand(), PolyhedralFace::normalProjectionConj(), anonymous_namespace{MagneticMaterialImpl.cpp}::OrthogonalToBaseVector(), PolyhedralFace::PolyhedralFace(), BasicVector3D< T >::project(), PolyhedralEdge::qE(), PolyhedralEdge::qR(), and Lattice::volume().
|
inline |
Returns cross product of vectors (linear in both arguments).
Returns cross product of (complex) vectors.
Definition at line 321 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
Referenced by Lattice::computeReciprocalVectors(), PolyhedralFace::edge_sum_ff(), MisesFisherGaussPeakShape::evaluate(), MisesGaussPeakShape::evaluate(), PolyhedralFace::ff_n_core(), RectangularDetector::initUandV(), RectangularPixel::RectangularPixel(), and Lattice::volume().
double BasicVector3D< T >::angle | ( | const BasicVector3D< T > & | v | ) | const |
Returns angle with respect to another vector.
|
inline |
Returns projection of this onto other vector: (this*v)*v/|v|^2.
Definition at line 179 of file BasicVector3D.h.
References BasicVector3D< T >::dot(), and BasicVector3D< T >::mag2().
Referenced by MillerIndexOrientation::transformationMatrix().
BasicVector3D<T> BasicVector3D< T >::rotatedX | ( | double | a | ) | const |
Returns result of rotation around x-axis.
BasicVector3D<T> BasicVector3D< T >::rotatedY | ( | double | a | ) | const |
Returns result of rotation around y-axis.
|
inline |
Returns result of rotation around z-axis.
Definition at line 193 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
Referenced by InterferenceFunction2DSuperLattice::interferenceForXi().
BasicVector3D<T> BasicVector3D< T >::rotated | ( | double | a, |
const BasicVector3D< T > & | v | ||
) | const |
Returns result of rotation around the axis specified by another vector.
BasicVector3D< complex_t > BasicVector3D< complex_t >::conj | ( | ) | const |
Definition at line 42 of file BasicVector3D.cpp.
BasicVector3D< double > BasicVector3D< complex_t >::real | ( | ) | const |
Definition at line 83 of file BasicVector3D.cpp.
BasicVector3D< complex_t > BasicVector3D< complex_t >::unit | ( | ) | const |
Definition at line 97 of file BasicVector3D.cpp.
|
related |
Output to stream.
Definition at line 207 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
|
related |
Unary minus.
Definition at line 225 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Addition of two vectors.
Definition at line 237 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Subtraction of two vectors.
Definition at line 245 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Multiplication vector by scalar.
Definition at line 253 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Multiplication scalar by vector.
Definition at line 262 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Division vector by scalar.
Definition at line 275 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Comparison of two vectors for equality.
Definition at line 282 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
related |
Comparison of two vectors for inequality.
Definition at line 289 of file BasicVector3D.h.
References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().
|
private |
Definition at line 30 of file BasicVector3D.h.
Referenced by BasicVector3D< T >::BasicVector3D(), BasicVector3D< T >::mag2(), BasicVector3D< T >::magxy2(), BasicVector3D< T >::operator*=(), BasicVector3D< T >::operator+=(), BasicVector3D< T >::operator-=(), BasicVector3D< T >::operator/=(), BasicVector3D< T >::operator[](), BasicVector3D< T >::setX(), BasicVector3D< T >::setY(), BasicVector3D< T >::setZ(), BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().