EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Helpers.hpp File Reference
#include "Acts/Utilities/BinningType.hpp"
#include "Acts/Utilities/Definitions.hpp"
#include "Acts/Utilities/ParameterDefinitions.hpp"
#include "Acts/Utilities/TypeTraits.hpp"
#include <bitset>
#include <cassert>
#include <cmath>
#include <cstdlib>
#include <iomanip>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
+ Include dependency graph for Helpers.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Acts
 Set the Geometry Context PLUGIN.
 
namespace  Acts::VectorHelpers
 
namespace  Acts::VectorHelpers::detail
 
namespace  Acts::detail
 These functions perform the transport of a covariance matrix using given Jacobians. The required data is provided by the stepper object with some additional data. Since this is a purely algebraic problem the calculations are identical for StraightLineStepper and EigenStepper. As a consequence the methods can be located in a seperate file.
 

Macros

#define ACTS_CHECK_BIT(value, mask)   ((value & mask) == mask)
 

Typedefs

template<class T >
using Acts::VectorHelpers::detail::phi_method_t = decltype(std::declval< const T >().phi())
 
template<class T >
using Acts::VectorHelpers::detail::has_phi_method = Concepts::is_detected< phi_method_t, T >
 

Functions

template<typename Derived >
double Acts::VectorHelpers::phi (const Eigen::MatrixBase< Derived > &v) noexcept
 
template<typename T , std::enable_if_t< detail::has_phi_method< T >::value, int > = 0>
double Acts::VectorHelpers::phi (const T &v) noexcept
 
template<typename Derived >
double Acts::VectorHelpers::perp (const Eigen::MatrixBase< Derived > &v) noexcept
 
template<typename Derived >
double Acts::VectorHelpers::theta (const Eigen::MatrixBase< Derived > &v) noexcept
 
template<typename Derived >
double Acts::VectorHelpers::eta (const Eigen::MatrixBase< Derived > &v) noexcept
 
double Acts::VectorHelpers::cast (const Vector3D &position, BinningValue bval)
 
ActsMatrixD< 3, 3 > Acts::VectorHelpers::cross (const ActsMatrixD< 3, 3 > &m, const Vector3D &v)
 Calculates column-wise cross products of a matrix and a vector and stores the result column-wise in a matrix.
 
auto Acts::VectorHelpers::position (const Vector4D &pos4)
 Access the three-position components in a four-position vector.
 
auto Acts::VectorHelpers::position (const FreeVector &params)
 Access the three-position components in a free parameters vector.
 
template<typename vector3_t >
auto Acts::VectorHelpers::makeVector4 (const Eigen::MatrixBase< vector3_t > &vec3, typename vector3_t::Scalar w) -> Eigen::Matrix< typename vector3_t::Scalar, 4, 1 >
 Construct a four-vector from a three-vector and scalar fourth component.
 
double Acts::detail::roundWithPrecision (double val, int precision)
 
std::string Acts::toString (const ActsMatrixXd &matrix, int precision=4, const std::string &offset="")
 
std::string Acts::toString (const Acts::Translation3D &translation, int precision=4)
 
std::string Acts::toString (const Acts::Transform3D &transform, int precision=4, const std::string &offset="")
 
template<typename T >
std::vector< T * > Acts::unpack_shared_vector (const std::vector< std::shared_ptr< T >> &items)
 
template<typename T >
std::vector< const T * > Acts::unpack_shared_vector (const std::vector< std::shared_ptr< const T >> &items)
 
template<template< size_t > class Callable, size_t N, size_t NMAX, typename... Args>
decltype(Callable< N >::invoke(std::declval
< Args >()...)) 
Acts::template_switch (size_t v, Args &&...args)
 Dispatch a call based on a runtime value on a function taking the value at compile time.
 
template<typename MatrixType >
MatrixType Acts::bitsetToMatrix (const std::bitset< MatrixType::RowsAtCompileTime *MatrixType::ColsAtCompileTime > bs)
 
template<typename Derived >
auto Acts::matrixToBitset (const Eigen::PlainObjectBase< Derived > &m)
 

Macro Definition Documentation