OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Functions
TpsMath.h File Reference
#include "Algebra/Tps.h"
#include "Utilities/DomainError.h"
#include <cmath>
Include dependency graph for TpsMath.h:

Go to the source code of this file.

Functions

template<class T >
Tps< T > pow (const Tps< T > &x, int y)
 Integer power. More...
 
template<class T >
Tps< T > sqrt (const Tps< T > &x)
 Square root. More...
 
template<class T >
Tps< T > sin (const Tps< T > &x)
 Sine. More...
 
template<class T >
Tps< T > cos (const Tps< T > &x)
 Cosine. More...
 
template<class T >
Tps< T > tan (const Tps< T > &x)
 Tangent. More...
 
template<class T >
Tps< T > cot (const Tps< T > &x)
 Cotangent. More...
 
template<class T >
Tps< T > sec (const Tps< T > &x)
 Secant. More...
 
template<class T >
Tps< T > csc (const Tps< T > &x)
 Cosecant. More...
 
template<class T >
Tps< T > exp (const Tps< T > &x)
 Exponential. More...
 
template<class T >
Tps< T > log (const Tps< T > &x)
 Natural logarithm. More...
 
template<class T >
Tps< T > sinh (const Tps< T > &x)
 Hyperbolic sine. More...
 
template<class T >
Tps< T > cosh (const Tps< T > &x)
 Hyperbolic cosine. More...
 
template<class T >
Tps< T > tanh (const Tps< T > &x)
 Hyperbolic tangent. More...
 

Function Documentation

◆ cos()

template<class T >
Tps< T > cos ( const Tps< T > &  x)

Cosine.

Definition at line 129 of file TpsMath.h.

References Tps< T >::getTruncOrder(), sin(), Attrib::Legacy::Distribution::T, and Tps< T >::Taylor().

Referenced by Ring::appendElement(), Cyclotron::apply(), MultipoleT::apply(), RFCavity::apply(), TravelingWave::apply(), VariableRFCavityFringeField::apply(), mslang::Repeat::apply(), Distribution::applyEmissModelAstra(), Distribution::applyEmissModelNonEquil(), ScatteringPhysics::applyRandomRotation(), mslang::Rotation::applyRotation(), ScatteringPhysics::applyRotation(), RFCavity::applyToReferenceParticle(), TravelingWave::applyToReferenceParticle(), OscillatingField< Field >::Bfield(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), Fieldmap::checkMap(), OpalBeamline::compute3DLattice(), mslang::Ellipse::computeBoundingBox(), ScatteringPhysics::computeCoulombScattering(), Astra1D_fast::computeFieldDerivatives(), FM1DDynamic_fast::computeFieldDerivatives(), FM1DElectroStatic_fast::computeFieldDerivatives(), FM1DMagnetoStatic_fast::computeFieldDerivatives(), FM1DDynamic::computeFieldOnAxis(), FM1DElectroStatic::computeFieldOnAxis(), FM1DMagnetoStatic::computeFieldOnAxis(), ClosedOrbitFinder< Value_type, Size_type, Stepper >::computeTune(), SectorField::convertToCartesian(), SectorField::convertToPolar(), MapAnalyser::createRotMatrix_m(), RingSection::doesOverlap(), ParallelCyclotronTracker::dumpAzimuthAngles_m(), ParallelCyclotronTracker::dumpThetaEachTurn_m(), OscillatingField< Field >::Efield(), Distribution::generateBinomial(), RFCavity::getAutoPhaseEstimate(), TravelingWave::getAutoPhaseEstimate(), MeshGenerator::getCylinder(), TravelingWave::getdA(), RFCavity::getdA(), TravelingWave::getdB(), RFCavity::getdB(), TravelingWave::getdE(), RFCavity::getdE(), Astra1DDynamic::getFieldDerivative(), FM1DDynamic::getFieldDerivative(), FM1DElectroStatic::getFieldDerivative(), FM1DMagnetoStatic::getFieldDerivative(), Astra1DDynamic::getFieldstrength(), Astra1DElectroStatic::getFieldstrength(), Astra1DMagnetoStatic::getFieldstrength(), SectorMagneticFieldMap::getFieldstrength(), ScalingFFAMagnet::getFieldValue(), RFCavity::getMomentaKick(), Ring::getNextNormal(), Ring::getNextPosition(), Bend2D::getOutline(), getQuaternion(), ParallelCyclotronTracker::getQuaternionTwoVectors(), Bend2D::getSurfaceMesh(), Util::getTaitBryantAngles(), coordinatetransform::CoordinateTransform::getUnitTangentVector(), coordinatetransform::getUnitTangentVectorY(), Offset::globalCylindricalOffset(), ParallelCyclotronTracker::globalToLocal(), RFCavity::initialise(), Offset::localCylindricalOffset(), ParallelCyclotronTracker::localToGlobal(), GlobalFunctions::_cos::operator()(), GreenWakeFunction::Wake::operator()(), LOMB_class::period(), H5PartWrapperForPT::readStepHeader(), Offset::rotate(), ParallelCyclotronTracker::rotateAroundX(), ParallelCyclotronTracker::rotateAroundZ(), MultipoleT::rotateFrame(), MultipoleTBase::rotateFrame(), MultipoleT::rotateFrameInverse(), MultipoleTBase::rotateFrameInverse(), Rotation3D::Rotation3D(), sec(), ParallelCyclotronTracker::seoMode_m(), FM1DProfile2::setEdgeConstants(), Bend2D::setEntranceAngle(), Bend2D::setFieldBoundaries(), Bend2D::setFieldCalcParam(), sin(), tan(), RBend3D::trackRefParticleThrough(), RealDiracMatrix::transform(), MultipoleTCurvedConstRadius::transformBField(), MultipoleTCurvedVarRadius::transformBField(), matheval::detail::grammar< real_t, Iterator >::ufunc_::ufunc_(), OpalElement::update(), RingSection::updateComponentOrientation(), Offset::updateGeometry(), ParallelCyclotronTracker::visitCyclotron(), ParallelCyclotronTracker::visitRing(), DumpEMFields::writeFieldLine(), mslang::Ellipse::writeGnuplot(), Rotation3D::XRotation(), Rotation3D::YRotation(), and Rotation3D::ZRotation().

Here is the call graph for this function:

◆ cosh()

template<class T >
Tps< T > cosh ( const Tps< T > &  x)

◆ cot()

template<class T >
Tps<T> cot ( const Tps< T > &  x)

Cotangent.

◆ csc()

template<class T >
Tps< T > csc ( const Tps< T > &  x)

Cosecant.

Definition at line 159 of file TpsMath.h.

References sin().

Here is the call graph for this function:

◆ exp()

template<class T >
Tps< T > exp ( const Tps< T > &  x)

◆ log()

template<class T >
Tps< T > log ( const Tps< T > &  x)

◆ pow()

template<class T >
Tps< T > pow ( const Tps< T > &  x,
int  y 
)

Integer power.

Definition at line 76 of file TpsMath.h.

References Tps< T >::inverse(), and Attrib::Legacy::Distribution::T.

Referenced by Distribution::adjustPhaseSpace(), Distribution::applyEmissModelNonEquil(), polynomial::RecursionRelation::applyOperator(), polynomial::RecursionRelationTwo::applyOperator(), matheval::detail::grammar< real_t, Iterator >::bfunc_::bfunc_(), BendBase::calcBetaGamma(), MultiBunchHandler::calcBunchBeamParameters(), Bend2D::calcEngeFunction(), Bend2D::calcEntranceFringeField(), Bend2D::calcExitFringeField(), CSRIGFWakeFunction::calcPsi(), CSRWakeFunction::calcPsi(), CSRIGFWakeFunction::calculateContributionAfter(), CSRWakeFunction::calculateContributionAfter(), CSRWakeFunction::calculateContributionInside(), CSRIGFWakeFunction::calculateGreenFunction(), Fieldmap::checkMap(), SocialNetworkGraph< TopoDiscoveryStrategy_t >::chooseRandomNeighbor(), ScatteringPhysics::computeCoulombScattering(), BeamStrippingPhysics::computeCrossSectionBohr(), BeamStrippingPhysics::computeCrossSectionNakai(), BeamStrippingPhysics::computeCrossSectionTabata(), RootFinderForCSR::computeDerivative(), ScatteringPhysics::computeEnergyLoss(), FM1DDynamic_fast::computeFieldDerivatives(), FM1DElectroStatic_fast::computeFieldDerivatives(), FM1DMagnetoStatic_fast::computeFieldDerivatives(), FM1DDynamic::computeFieldOffAxis(), FM1DDynamic_fast::computeFieldOffAxis(), FM1DElectroStatic::computeFieldOffAxis(), FM1DElectroStatic_fast::computeFieldOffAxis(), FM1DMagnetoStatic::computeFieldOffAxis(), FM1DMagnetoStatic_fast::computeFieldOffAxis(), FM1DDynamic::computeFieldOnAxis(), FM1DElectroStatic::computeFieldOnAxis(), FM1DMagnetoStatic::computeFieldOnAxis(), FM1DProfile1::computeFringe(), LossDataSink::computeSetStatistics(), DistributionMoments::computeStatistics(), RootFinderForCSR::computeValue(), RootFinderForCSR::computeValueGSL(), FM1DDynamic::convertHeaderData(), FM1DDynamic_fast::convertHeaderData(), Distribution::createDistributionMultiGauss(), SimulatedBinaryCrossover< T >::crossover(), Distribution::doRestartOpalCycl(), Distribution::emitParticles(), Bend2D::estimateFieldAdjustmentStep(), DistributionMoments::fillMembers(), TpsData::fillSubst(), ParallelCyclotronTracker::finalizeTracking_m(), ParallelTTracker::findStartPosition(), Distribution::generateBinomial(), Distribution::generateGaussZ(), Distribution::generateTransverseGauss(), Distribution::MDependentBehavior::get(), PartBunchBase< T, Dim >::get_pmean_Distribution(), Util::getBetaGamma(), interpolation::PPSolveFactory::getDerivPoints(), RFCavity::getMomentaKick(), Bend2D::getOutline(), Bend2D::getSurfaceMesh(), Corrector::goOnline(), matheval::detail::grammar< real_t, Iterator >::grammar(), Cyclotron::gutdf5d(), RootFinderForCSR::hasPositiveRealRoots(), Bend2D::isFieldZero(), Multipole::isFocusing(), mslang::Ellipse::isInside(), ElementBase::isInsideTransverse(), PartBunchBase< T, Dim >::maximumAmplitudes(), LOMB_class::moment(), GlobalFunctions::_pow::operator()(), LOMB_class::period(), H5PartWrapperForPC::readStepHeader(), PartBunchBase< T, Dim >::resetPartBinID2(), ParallelCyclotronTracker::RFkick(), RootFinderForCSR::RootFinderForCSR(), Distribution::sampleUniformDisk(), savgol(), Corrector::setDesignEnergy(), Bend2D::setFieldCalcParam(), Distribution::setupEmissionModelNonEquil(), LOMB_class::signi(), FM3DMagnetoStaticExtended::smoothData(), Util::toStringWithThousandSep(), and mslang::Ellipse::writeGnuplot().

Here is the call graph for this function:

◆ sec()

template<class T >
Tps< T > sec ( const Tps< T > &  x)

Secant.

Definition at line 153 of file TpsMath.h.

References cos().

Here is the call graph for this function:

◆ sin()

template<class T >
Tps< T > sin ( const Tps< T > &  x)

Sine.

Definition at line 111 of file TpsMath.h.

References cos(), Tps< T >::getTruncOrder(), Attrib::Legacy::Distribution::T, and Tps< T >::Taylor().

Referenced by Ring::appendElement(), Cyclotron::apply(), MultipoleT::apply(), RFCavity::apply(), TravelingWave::apply(), VariableRFCavity::apply(), VariableRFCavityFringeField::apply(), mslang::Repeat::apply(), Distribution::applyEmissModelAstra(), Distribution::applyEmissModelNonEquil(), ScatteringPhysics::applyRandomRotation(), mslang::Rotation::applyRotation(), ScatteringPhysics::applyRotation(), RFCavity::applyToReferenceParticle(), TravelingWave::applyToReferenceParticle(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), BendBase::calcDesignRadius(), Fieldmap::checkMap(), OpalBeamline::compute3DLattice(), mslang::Ellipse::computeBoundingBox(), ScatteringPhysics::computeCoulombScattering(), Astra1D_fast::computeFieldDerivatives(), FM1DDynamic_fast::computeFieldDerivatives(), FM1DElectroStatic_fast::computeFieldDerivatives(), FM1DMagnetoStatic_fast::computeFieldDerivatives(), FM1DDynamic::computeFieldOnAxis(), FM1DElectroStatic::computeFieldOnAxis(), FM1DMagnetoStatic::computeFieldOnAxis(), ClosedOrbitFinder< Value_type, Size_type, Stepper >::computeTune(), SectorField::convertToCartesian(), SectorField::convertToPolar(), cos(), MapAnalyser::createRotMatrix_m(), csc(), RingSection::doesOverlap(), ParallelCyclotronTracker::dumpAzimuthAngles_m(), ParallelCyclotronTracker::dumpThetaEachTurn_m(), RBend::findChordLength(), Distribution::generateBinomial(), Distribution::generateLongFlattopT(), RBendGeometry::getArcLength(), RFCavity::getAutoPhaseEstimate(), TravelingWave::getAutoPhaseEstimate(), MeshGenerator::getCylinder(), TravelingWave::getdA(), RFCavity::getdA(), TravelingWave::getdB(), RFCavity::getdB(), TravelingWave::getdE(), RFCavity::getdE(), Astra1DDynamic::getFieldDerivative(), FM1DDynamic::getFieldDerivative(), FM1DElectroStatic::getFieldDerivative(), FM1DMagnetoStatic::getFieldDerivative(), Astra1DDynamic::getFieldstrength(), Astra1DElectroStatic::getFieldstrength(), Astra1DMagnetoStatic::getFieldstrength(), SectorMagneticFieldMap::getFieldstrength(), ScalingFFAMagnet::getFieldValue(), RFCavity::getMomentaKick(), Ring::getNextNormal(), Ring::getNextPosition(), Bend2D::getOutline(), getQuaternion(), ParallelCyclotronTracker::getQuaternionTwoVectors(), Bend2D::getSurfaceMesh(), Util::getTaitBryantAngles(), coordinatetransform::CoordinateTransform::getUnitTangentVector(), coordinatetransform::getUnitTangentVectorX(), Offset::globalCylindricalOffset(), ParallelCyclotronTracker::globalToLocal(), TravelingWave::initialise(), RFCavity::initialise(), Offset::localCylindricalOffset(), ParallelCyclotronTracker::localToGlobal(), GlobalFunctions::_sin::operator()(), LOMB_class::period(), H5PartWrapperForPT::readStepHeader(), Offset::rotate(), ParallelCyclotronTracker::rotateAroundX(), ParallelCyclotronTracker::rotateAroundZ(), MultipoleT::rotateFrame(), MultipoleTBase::rotateFrame(), MultipoleT::rotateFrameInverse(), MultipoleTBase::rotateFrameInverse(), Rotation3D::Rotation3D(), ParallelCyclotronTracker::seoMode_m(), FM1DProfile2::setEdgeConstants(), Bend2D::setEntranceAngle(), Bend2D::setFieldCalcParam(), sinti(), tan(), RBend3D::trackRefParticleThrough(), RealDiracMatrix::transform(), MultipoleTCurvedConstRadius::transformBField(), MultipoleTCurvedVarRadius::transformBField(), MultipoleT::transformCoords(), MultipoleTCurvedConstRadius::transformCoords(), matheval::detail::grammar< real_t, Iterator >::ufunc_::ufunc_(), OpalElement::update(), OpalRBend::update(), OpalRBend3D::update(), OpalSBend::update(), RingSection::updateComponentOrientation(), Offset::updateGeometry(), ParallelCyclotronTracker::visitCyclotron(), ParallelCyclotronTracker::visitRing(), DumpEMFields::writeFieldLine(), Rotation3D::XRotation(), Rotation3D::YRotation(), and Rotation3D::ZRotation().

Here is the call graph for this function:

◆ sinh()

template<class T >
Tps< T > sinh ( const Tps< T > &  x)

Hyperbolic sine.

Definition at line 204 of file TpsMath.h.

References cosh(), Tps< T >::getTruncOrder(), Attrib::Legacy::Distribution::T, and Tps< T >::Taylor().

Referenced by cosh(), tanh(), RealDiracMatrix::transform(), and matheval::detail::grammar< real_t, Iterator >::ufunc_::ufunc_().

Here is the call graph for this function:

◆ sqrt()

template<class T >
Tps< T > sqrt ( const Tps< T > &  x)

Square root.

Definition at line 91 of file TpsMath.h.

References Tps< T >::getTruncOrder(), Attrib::Legacy::Distribution::T, and Tps< T >::Taylor().

Referenced by AmrOpenBoundary< Level >::abc1_m(), AmrOpenBoundary< Level >::abc2_m(), AmrOpenBoundary< Level >::abc3_m(), Degrader::apply(), FlexibleCollimator::apply(), GreenWakeFunction::apply(), Undulator::apply(), P3MPoissonSolver::applyConstantFocusing(), Tracker::applyDrift(), Distribution::applyEmissModelAstra(), Distribution::applyEmissModelNonEquil(), ScatteringPhysics::applyRandomRotation(), Tracker::applyTransform(), Hamiltonian::bendFringe(), ParallelCyclotronTracker::bunchDumpPhaseSpaceData(), ParallelCyclotronTracker::bunchDumpStatData(), BendBase::calcBetaGamma(), MultiBunchHandler::calcBunchBeamParameters(), SpecializedGreensFunction< 3 >::calculate(), CSRIGFWakeFunction::calculateGreenFunction(), PluginElement::changeWidth(), Fieldmap::checkMap(), Vacuum::checkPoint(), Vacuum::checkPressure(), EllipticDomain::compute(), ScatteringPhysics::computeCoulombScattering(), BeamStrippingPhysics::computeCrossSectionBohr(), ScatteringPhysics::computeEnergyLoss(), ClosedOrbitFinder< Value_type, Size_type, Stepper >::computeOrbitProperties(), ParallelCyclotronTracker::computePathLengthUpdate(), LaserProfile::computeProfileStatistics(), ParallelCyclotronTracker::computeRadius(), PartBunch::computeSelfFields(), AmrBoxLib::computeSelfFields_cycl(), PartBunch::computeSelfFields_cycl(), LossDataSink::computeSetStatistics(), ParallelCyclotronTracker::computeSpaceChargeFields_m(), SectorField::convertToPolar(), ParallelCyclotronTracker::deleteParticle(), RK4< FieldFunction, Arguments >::derivate_m(), Probe::doCheck(), Stripper::doCheck(), BeamStrippingPhysics::doPhysics(), Distribution::doRestartOpalCycl(), Hamiltonian::drift(), ParallelCyclotronTracker::dumpThetaEachTurn_m(), Distribution::emitParticles(), Util::erfinv(), Bend2D::estimateFieldAdjustmentStep(), euclidean_norm(), BeamStrippingPhysics::evalLorentzStripping(), DistributionMoments::fillMembers(), ParallelCyclotronTracker::finalizeTracking_m(), ClosedOrbitFinder< Value_type, Size_type, Stepper >::findOrbit(), ClosedOrbitFinder< Value_type, Size_type, Stepper >::findOrbitOfEnergy_m(), ParallelTTracker::findStartPosition(), ParallelCyclotronTracker::gapCrossKick_m(), Random::gauss(), Distribution::generateAstraFlattopT(), Distribution::generateBinomial(), Distribution::generateLongFlattopT(), Distribution::generateMatchedGauss(), Distribution::MDependentBehavior::get(), Distribution::GaussianLikeBehavior::get(), PartBunchBase< T, Dim >::get_pmean_Distribution(), Euclid3DGeometry::getArcLength(), Rotation3D::getAxis(), Util::getBetaGamma(), MapAnalyser::getBlockDiagonal_m(), PartBunchBase< T, Dim >::getBoundingSphere(), TravelingWave::getdT(), RFCavity::getdT(), FM2DMagnetoStatic::getFieldDerivative(), FM2DDynamic::getFieldstrength(), FM2DElectroStatic::getFieldstrength(), FM2DMagnetoStatic::getFieldstrength(), ScalingFFAMagnet::getFieldValue(), Util::getGamma(), PartBunchBase< T, Dim >::getLocalBoundingSphere(), RFCavity::getMomentaKick(), CavityAutophaser::getPhaseAtMaxEnergy(), getQuaternion(), ParallelCyclotronTracker::getQuaternionTwoVectors(), Ring::getRingMaxR(), Ring::getRingMinR(), Distribution::getTEmission(), RingSection::getVirtualBoundingBox(), Corrector::goOnline(), RootFinderForCSR::hasPositiveRealRoots(), FDoubleEigen< N >::hqr(), FDoubleEigen< N >::hqr2(), ParallelCyclotronTracker::initDistInGlobalFrame(), BoundaryGeometry::initialize(), SigmaGenerator::initialize(), OrbitThreader::integrate(), FFTBoxPoissonSolver::integratedGreensFunction(), FFTPoissonSolver::integratedGreensFunction(), FM2DDynamic::isInside(), FM2DElectroStatic::isInside(), FM2DMagnetoStatic::isInside(), BorisPusher::kick(), SigmaGenerator::L2ErrorNorm(), Quaternion::length(), SocialNetworkGraph< TopoDiscoveryStrategy_t >::manhattenDistance(), LOMB_class::moment(), MapAnalyser::normalizeEigen_m(), ParallelCyclotronTracker::normalizeQuaternion(), ParallelCyclotronTracker::normalizeVector(), GlobalFunctions::_sqrt::operator()(), SumErrSq::operator()(), SumErrSqRadialPeak::operator()(), GreenWakeFunction::Wake::operator()(), ApplyField< T >::operator()(), BoundaryGeometry::partInside(), LOMB_class::period(), OpalElement::printMultipoleStrength(), ParallelCyclotronTracker::push(), BorisPusher::push(), LF2< FieldFunction, Arguments >::push_m(), Hamiltonian::quadrupole(), Quaternion::Quaternion(), Hamiltonian::rbend(), H5PartWrapperForPC::readStepHeader(), PartBunchBase< T, Dim >::resetPartBinID2(), ParallelCyclotronTracker::RFkick(), Expressions::Rmsa(), Rotation3D::Rotation3D(), SampleGaussianSequence::SampleGaussianSequence(), Hamiltonian::sbend(), scaled_norm(), PartData::setBeta(), Corrector::setDesignEnergy(), OrbitThreader::setDesignEnergy(), PluginElement::setDimensions(), Distribution::setDistParametersFlattop(), Distribution::setDistParametersGauss(), PartData::setE(), Distribution::setEmissionTime(), PartData::setGamma(), PluginElement::setGeom(), SocialNetworkGraph< TopoDiscoveryStrategy_t >::setNetworkNeighbors(), MapAnalyser::setNMatrix_m(), PartData::setP(), Distribution::setupEmissionModelNonEquil(), FFTBoxPoissonSolver::shiftedIntGreensFunction(), FFTPoissonSolver::shiftedIntGreensFunction(), SigmaGenerator::SigmaGenerator(), QRDecomposition::solve(), PartBins::sortArray(), RFCavity::trackOnAxisParticle(), matheval::detail::grammar< real_t, Iterator >::ufunc_::ufunc_(), ThickTracker::update_m(), Offset::updateGeometry(), SigmaGenerator::updateInitialSigma(), ThickTracker::updateParticle_m(), ParallelCyclotronTracker::visitCyclotron(), ParallelCyclotronTracker::visitRing(), ThickTracker::visitSBend(), Werrf(), and mslang::Ellipse::writeGnuplot().

Here is the call graph for this function:

◆ tan()

template<class T >
Tps< T > tan ( const Tps< T > &  x)

◆ tanh()

template<class T >
Tps< T > tanh ( const Tps< T > &  x)