MCKL
Monte Carlo Kernel Library
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
mckl Namespace Reference

Namespaces

 internal
 

Classes

class  AESGenerator
 RNG generator using AES round functions. More...
 
class  Allocator
 Standard library compatible allocator with policies. More...
 
class  Allocator< const void, Mem >
 
class  Allocator< void, Mem >
 
class  ArcsineDistribution
 Arcsine distribution. More...
 
class  ARSConstants
 Default ARS constants. More...
 
class  BackendSTD
 
class  BernoulliDistribution
 Bernoulli distribution. More...
 
class  BetaDistribution
 Beta distribution. More...
 
class  BirthdaySpacingsTest
 Birthday spacings test. More...
 
class  BufferSize
 
class  CauchyDistribution
 Cauchy distribution. More...
 
class  ChiSquaredDistribution
 The \(\chi^2\) distribution. More...
 
class  ChiSquaredTest
 Tests based on the \(\chi^2\)-distribution. More...
 
class  CollisionTest
 Collision test. More...
 
class  CounterEngine
 Counter based RNG engine. More...
 
class  CouponCollectorTest
 Coupon collector's test. More...
 
class  Covariance
 Covariance. More...
 
class  DirichletDistribution
 
class  DiscreteDistribution
 Draw a single sample given weights. More...
 
class  EstimateMatrix
 Estimate matrix for iterative Monte Carlo algorithms. More...
 
class  Estimator
 Estimator for iterative Monte Carlo algorithms. More...
 
class  ExponentialDistribution
 Exponential distribution. More...
 
class  ExtremeValueDistribution
 Extreme value distribution. More...
 
class  FisherFDistribution
 Fisher-F distribution. More...
 
class  GammaDistribution
 Gamma distribution. More...
 
class  GapTest
 Gap test. More...
 
class  GeometricDistribution
 Geometric distribution. More...
 
class  HDF5Attribute
 RAII class for HDF5 attribute. More...
 
class  HDF5DataSet
 RAII class for HDF5 data set. More...
 
class  HDF5DataSpace
 RAII class for HDF5 data space. More...
 
class  HDF5DataType
 RAII class for HDF5 data type. More...
 
class  HDF5File
 RAII class for HDF5 file object. More...
 
class  HDF5Group
 RAII class for HDF5 group. More...
 
class  HDF5ID
 RAII class for HDF5 IDs. More...
 
class  HDF5PropertyList
 RAII class for HDF5 property list. More...
 
class  LaplaceDistribution
 Laplace distribution. More...
 
class  LevyDistribution
 Levy distribution. More...
 
class  LogisticDistribution
 Logistic distribution. More...
 
class  LognormalDistribution
 Lognormal distribution. More...
 
class  Matrix
 Matrix container. More...
 
class  MaximumOfTTest
 Tests based on the maximum-of-t method. More...
 
class  MCMCEstimator
 MCMC estimator. More...
 
class  MCMCSampler
 MCMC sampler. More...
 
class  MemoryJEM
 Memory allocation using jemalloc. More...
 
class  MemorySTD
 Memory allocation using the standard library. More...
 
class  MemorySYS
 Memory allocation using native system functions. More...
 
class  MemoryTBB
 Memory allocation using Intel TBB. More...
 
class  MKLEngine
 Use MKL BRNG as RNG engine. More...
 
class  MKLStream
 MKL VSLStreamStatePtr wrapper. More...
 
class  NormalDistribution
 Normal distribution. More...
 
class  NormalMVDistribution
 Multivariate Normal distribution. More...
 
class  ParetoDistribution
 Pareto distribution. More...
 
class  Particle
 Particle system. More...
 
class  ParticleIndex
 A thin wrapper over a complete Particle. More...
 
class  ParticleIndexBase
 A thin wrapper over a complete Particle. More...
 
class  ParticleIndexBaseTypeTrait
 ParticleIndex base class trait. More...
 
class  ParticleRange
 Range of ParticleIndex. More...
 
class  PermutationTest
 Permutation test. More...
 
class  PhiloxConstants
 Default Philox constants. More...
 
class  PhiloxGenerator
 Philox RNG generator. More...
 
class  PMCMCMutation
 Particle Markov chain Monte Carlo mutation. More...
 
class  PMCMCStateMatrix
 
class  PoissonTest
 Tests based on the Poisson distribution. More...
 
class  PokerTest
 Pocker test (simplified version) More...
 
class  Range
 
class  Range< IntType, true >
 Range of integers. More...
 
class  Range< Iterator, false >
 Range of iterators. More...
 
class  RayleighDistribution
 Rayleigh distribution. More...
 
class  RDRANDEngine
 RDRAND generator. More...
 
class  ResampleAlgorithm
 Resampling algorithm. More...
 
class  ResampleEval
 SMCSampler<T>::eval_type subtype. More...
 
class  ResampleIndex
 Record and trace resampling index. More...
 
class  RNGSetScalar
 Scalar RNG set. More...
 
class  RNGSetTBBEnumerable
 Thread-local storage RNG set using tbb::enumerable_thread_specific. More...
 
class  RNGSetTypeTrait
 Particle::rng_set_type trait. More...
 
class  RNGSetVector
 Vector RNG set. More...
 
class  RNGTraits
 Traits of RNG engines. More...
 
class  RuntimeAssert
 
class  Sampler
 Sampler for iterative Monte Carlo algorithms. More...
 
class  SamplerTrait
 
class  SamplerTrait< MCMCSampler< T, U > >
 
class  SamplerTrait< SMCSampler< T, U > >
 
class  SamplingDistribution
 Drawing a subset without replacement. More...
 
class  Seed
 RNG default seed generator. More...
 
class  SeedGenerator
 Seed generator. More...
 
class  SeedTrait
 
class  SeedTrait< CounterEngine< ResultType, Generator > >
 
class  SizeTypeTrait
 Particle::size_type etc., traits. More...
 
class  Skein
 Skein hash function. More...
 
class  SMCEstimator
 SMC estimator. More...
 
class  SMCEstimatorEvalBase
 SMCEstimator evalution base dispatch class. More...
 
class  SMCEstimatorEvalBase< T, Virtual >
 SMCEstimator evalution base dispatch class. More...
 
class  SMCEstimatorEvalSMP
 SMCEstimator<T>::eval_type. More...
 
class  SMCEstimatorEvalSMP< T, Derived, BackendOMP >
 SMCEstimator<T>::eval_type subtype using OpenMP. More...
 
class  SMCEstimatorEvalSMP< T, Derived, BackendSEQ >
 SMCEstimator<T>::eval_type subtype. More...
 
class  SMCEstimatorEvalSMP< T, Derived, BackendSTD >
 SMCEstimator<T>::eval_type subtype using the standard library. More...
 
class  SMCEstimatorEvalSMP< T, Derived, BackendTBB >
 SMCEstimator<T>::eval_type subtype using Intel Threading Building Blocks. More...
 
class  SMCSampler
 SMC sampler. More...
 
class  SMCSamplerEvalBase
 SMCSampler evaluation base dispatch class. More...
 
class  SMCSamplerEvalBase< T, Virtual >
 Mampler evaluation base dispatch class. More...
 
class  SMCSamplerEvalSMP
 SMCSMCSampler<T>::eval_type. More...
 
class  SMCSamplerEvalSMP< T, Derived, BackendOMP >
 SMCSampler<T>::eval_type subtype using OpenMP. More...
 
class  SMCSamplerEvalSMP< T, Derived, BackendSEQ >
 SMCSampler<T>::eval_type subtype. More...
 
class  SMCSamplerEvalSMP< T, Derived, BackendSTD >
 SMCSampler<T>::eval_type subtype using the standard library. More...
 
class  SMCSamplerEvalSMP< T, Derived, BackendTBB >
 SMCSampler<T>::eval_type subtype using Intel Threading Building Blocks. More...
 
class  StableDistribution
 Stable distribution. More...
 
class  StateMatrix
 Particle::state_type subtype. More...
 
class  StepIterator
 Iterator adapter which increment the base iterator in multiple steps. More...
 
class  StopWatchClockAdapter
 StopWatch as an adapter of C++ standard library compatible clock. More...
 
class  StopWatchGuard
 Start and stop a StopWatch in scope (similiar to a mutex lock guard) More...
 
class  StudentTDistribution
 Student-t distribution. More...
 
class  TestU01
 Perform TestU01 tests on different RNG and U01 types. More...
 
class  ThreefryConstants
 Default Threefry constants. More...
 
class  ThreefryGenerator
 Threefry RNG generator. More...
 
class  U01CanonicalDistribution
 Standard uniform distribution on [0, 1) More...
 
class  U01CCDistribution
 Standard uniform distribution on [0, 1]. More...
 
class  U01CODistribution
 Standard uniform distribution on [0, 1) More...
 
class  U01OCDistribution
 Standard uniform distribution on (0, 1]. More...
 
class  U01OODistribution
 Standard uniform distribution on (0, 1) More...
 
class  U01SequenceSorted
 Sorted of standard uniform numbers. More...
 
class  U01SequenceStratified
 Stratified standard uniform numbers. More...
 
class  U01SequenceSystematic
 Systematic standard uniform numbers. More...
 
class  UniformBitsDistribution
 Uniform bits distribution. More...
 
class  UniformIntDistribution
 Uniform integer distribution. More...
 
class  UniformRealDistribution
 Uniform real distribution. More...
 
class  WeibullDistribution
 Weibull distribution. More...
 
class  Weight
 Weights of samples. More...
 
class  WeightTypeTrait
 Particle::weight_type trait. More...
 

Typedefs

using AES128 = AES128Engine< std::uint32_t >
 AES-128 RNG engine with 32-bit integers output. More...
 
using AES128_64 = AES128Engine< std::uint64_t >
 AES-128 RNG engine with 64-bit integers output. More...
 
template<typename ResultType , std::size_t Rounds = 10>
using AES128Engine = AESEngine< ResultType, AES128KeySeq< Rounds > >
 AES-128 RNG engine. More...
 
template<std::size_t Rounds = 10>
using AES128KeySeq = internal::AESKeySeqImpl< Rounds, internal::AES128KeySeqGenerator >
 AES128Engine key sequence generator. More...
 
using AES192 = AES192Engine< std::uint32_t >
 AES-192 RNG engine with 32-bit integers output. More...
 
using AES192_64 = AES192Engine< std::uint64_t >
 AES-192 RNG engine with 64-bit integers output. More...
 
template<typename ResultType , std::size_t Rounds = 12>
using AES192Engine = AESEngine< ResultType, AES192KeySeq< Rounds > >
 AES-192 RNG engine. More...
 
template<std::size_t Rounds = 12>
using AES192KeySeq = internal::AESKeySeqImpl< Rounds, internal::AES192KeySeqGenerator >
 AES192Engine key sequence generator. More...
 
using AES256 = AES256Engine< std::uint32_t >
 AES-256 RNG engine with 32-bit integers output. More...
 
using AES256_64 = AES256Engine< std::uint64_t >
 AES-256 RNG engine with 64-bit integers output. More...
 
template<typename ResultType , std::size_t Rounds = 14>
using AES256Engine = AESEngine< ResultType, AES256KeySeq< Rounds > >
 AES-256 RNG engine. More...
 
template<std::size_t Rounds = 14>
using AES256KeySeq = internal::AESKeySeqImpl< Rounds, internal::AES256KeySeqGenerator >
 AES256Engine key sequence generator. More...
 
template<typename ResultType , typename KeySeqType >
using AESEngine = CounterEngine< ResultType, AESGenerator< KeySeqType > >
 RNG engine using AES round function. More...
 
using ARS = ARSEngine< std::uint32_t >
 ARS RNG engine with 32-bit integers output. More...
 
using ARS_64 = ARSEngine< std::uint64_t >
 ARS RNG engine with 64-bit integers output. More...
 
template<typename ResultType , std::size_t Rounds = 5, typename Constants = ARSConstants>
using ARSEngine = AESEngine< ResultType, ARSKeySeq< Rounds, Constants > >
 ARS RNG engine. More...
 
template<std::size_t Rounds = 5, typename Constants = ARSConstants>
using ARSKeySeq = internal::ARSKeySeqImpl< Rounds, internal::ARSKeySeqGenerator< Constants > >
 Default ARSEngine key sequence generator. More...
 
using BackendSMP = ::mckl::BackendTBB
 SMP default implementation ID. More...
 
template<typename T , std::size_t K>
using Counter = typename internal::CounterImpl< T, K >::type
 A counter type with the same width as std::array<T, K> but with possibly fewer elements. More...
 
template<std::size_t Alignment>
using Memory = ::mckl::MemoryTBB< Alignment >
 Default memory allocation policy. More...
 
using MKL_ARS5 = MKLEngine< VSL_BRNG_ARS5, 32 >
 A counter-based random number generator. More...
 
using MKL_ARS5_64 = MKLEngine< VSL_BRNG_ARS5, 64 >
 A counter-based random number generator (64-bit) More...
 
using MKL_MCG59 = MKLEngine< VSL_BRNG_MCG59, 32 >
 A 59-bit multiplicative congruential generator. More...
 
using MKL_MCG59_64 = MKLEngine< VSL_BRNG_MCG59, 64 >
 A 59-bit multiplicative congruential generator (64-bit) More...
 
using MKL_MT19937 = MKLEngine< VSL_BRNG_MT19937, 32 >
 A Mersenne-Twister pseudoranom number genertor. More...
 
using MKL_MT19937_64 = MKLEngine< VSL_BRNG_MT19937, 64 >
 A Mersenne-Twister pseudoranom number genertor (64-bit) More...
 
using MKL_MT2203 = MKLEngine< VSL_BRNG_MT2203, 32 >
 A set of 6024 Mersenne-Twister pseudoranom number genertor. More...
 
using MKL_MT2203_64 = MKLEngine< VSL_BRNG_MT2203, 64 >
 A set of 6024 Mersenne-Twister pseudoranom number genertor (64-bit) More...
 
using MKL_NONDETERM = MKLEngine< VSL_BRNG_NONDETERM, 32 >
 A non-determinstic random number generator. More...
 
using MKL_NONDETERM_64 = MKLEngine< VSL_BRNG_NONDETERM, 64 >
 A non-determinstic random number generator (64-bit) More...
 
using MKL_PHILOX4X32X10 = MKLEngine< VSL_BRNG_PHILOX4X32X10, 32 >
 A counter-based random number generator. More...
 
using MKL_PHILOX4X32X10_64 = MKLEngine< VSL_BRNG_PHILOX4X32X10, 64 >
 A counter-based random number generator (64-bit) More...
 
using MKL_SFMT19937 = MKLEngine< VSL_BRNG_SFMT19937, 32 >
 A SIMD-oriented fast Mersenne-Twister pseudoranom number genertor. More...
 
using MKL_SFMT19937_64 = MKLEngine< VSL_BRNG_SFMT19937, 64 >
 A SIMD-oriented fast Mersenne-Twister pseudoranom number genertor (64-bit) More...
 
template<typename T >
using ParticleIndexBaseType = typename ParticleIndexBaseTypeTrait< T >::type
 
using Philox2x32 = Philox2x32Engine< std::uint32_t >
 Philox2x32 RNG engine with 32-bit integer output. More...
 
using Philox2x32_64 = Philox2x32Engine< std::uint64_t >
 Philox2x32 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Philox2x32Engine = PhiloxEngine< ResultType, std::uint32_t, 2 >
 Philox2x32 RNG engine. More...
 
using Philox2x64 = Philox2x64Engine< std::uint32_t >
 Philox2x64 RNG engine with 32-bit integer output. More...
 
using Philox2x64_64 = Philox2x64Engine< std::uint64_t >
 Philox2x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Philox2x64Engine = PhiloxEngine< ResultType, std::uint64_t, 2 >
 Philox2x64 RNG engine. More...
 
using Philox4x32 = Philox4x32Engine< std::uint32_t >
 Philox4x32 RNG engine with 32-bit integer output. More...
 
using Philox4x32_64 = Philox4x32Engine< std::uint64_t >
 Philox4x32 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Philox4x32Engine = PhiloxEngine< ResultType, std::uint32_t, 4 >
 Philox4x32 RNG engine. More...
 
using Philox4x64 = Philox4x64Engine< std::uint32_t >
 Philox4x64 RNG engine with 32-bit integer output. More...
 
using Philox4x64_64 = Philox4x64Engine< std::uint64_t >
 Philox4x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Philox4x64Engine = PhiloxEngine< ResultType, std::uint64_t, 4 >
 Philox4x64 RNG engine. More...
 
template<typename ResultType , typename T , std::size_t K, std::size_t Rounds = 10, typename Constants = PhiloxConstants<T, K>>
using PhiloxEngine = CounterEngine< ResultType, PhiloxGenerator< T, K, Rounds, Constants > >
 Philox RNG engine. More...
 
using RDRAND16 = RDRANDEngine< std::uint16_t >
 RNG Engine using 16-bit RDRAND instruction. More...
 
using RDRAND32 = RDRANDEngine< std::uint32_t >
 RNG Engine using 32-bit RDRAND instruction. More...
 
using RDRAND64 = RDRANDEngine< std::uint64_t >
 RNG Engine using 64-bit RDRAND instruction. More...
 
using ResampleMultinomial = ResampleAlgorithm< U01SequenceSorted, false >
 Multinomial resampling. More...
 
using ResampleResidual = ResampleAlgorithm< U01SequenceSorted, true >
 Residual resampling. More...
 
using ResampleResidualStratified = ResampleAlgorithm< U01SequenceStratified, true >
 Residual stratified resampling. More...
 
using ResampleResidualSystematic = ResampleAlgorithm< U01SequenceSystematic, true >
 Residual systematic resampling. More...
 
using ResampleStratified = ResampleAlgorithm< U01SequenceStratified, false >
 Stratified resampling. More...
 
using ResampleSystematic = ResampleAlgorithm< U01SequenceSystematic, false >
 Systematic resampling. More...
 
using RNG = ::mckl::ARS
 The default 32-bit RNG. More...
 
using RNG_64 = ::mckl::ARS_64
 The default 64-bit RNG. More...
 
template<typename RNGType = typename ::mckl::RNGSetTBB <>::rng_type>
using RNGSet = ::mckl::RNGSetTBB< RNGType >
 Default RNG set. More...
 
template<typename RNGType = RNG>
using RNGSetTBB = RNGSetTBBEnumerable< RNGType, ::tbb::cache_aligned_allocator< RNGType >, ::tbb::ets_no_key >
 Thread-local storage RNG set using tbb::enumerable_thread_specific without native TLS keys. More...
 
template<typename RNGType = RNG>
using RNGSetTBBKPI = RNGSetTBBEnumerable< RNGType, ::tbb::cache_aligned_allocator< RNGType >, ::tbb::ets_key_per_instance >
 Thread-local storage RNG set using tbb::enumerable_thread_specific with native TLS keys. More...
 
template<typename T >
using RNGSetType = typename RNGSetTypeTrait< T >::type
 
template<bool Independent, bool Up = true>
using RunTest = internal::RunTestImpl< Independent, Up >
 Run test. More...
 
template<typename RNGType >
using SeedType = typename SeedTrait< RNGType >::type
 
template<std::size_t D, std::size_t T, bool Overlap>
using SerialTest = internal::SerialTestImpl< D, T, Overlap &&1< T >
 Serial test. More...
 
template<typename T >
using SizeType = typename SizeTypeTrait< T >::type
 
using Skein1024 = Skein< typename Threefish1024::generator_type >
 Skein-1024 hash function. More...
 
using Skein256 = Skein< typename Threefish256::generator_type >
 Skein-256 hash function. More...
 
using Skein512 = Skein< typename Threefish512::generator_type >
 Skein-512 hash function. More...
 
template<typename T , typename Derived >
using SMCEstimatorEvalOMP = SMCEstimatorEvalSMP< T, Derived, BackendOMP >
 SMCEstimator<T>::eval_type subtype using OpenMP. More...
 
template<typename T , typename Derived >
using SMCEstimatorEvalSEQ = SMCEstimatorEvalSMP< T, Derived, BackendSEQ >
 SMCEstimator<T>::eval_type subtype. More...
 
template<typename T , typename Derived >
using SMCEstimatorEvalSTD = SMCEstimatorEvalSMP< T, Derived, BackendSTD >
 SMCEstimator<T>::eval_type subtype using the standard library. More...
 
template<typename T , typename Derived >
using SMCEstimatorEvalTBB = SMCEstimatorEvalSMP< T, Derived, BackendTBB >
 SMCEstimator<T>::eval_type subtype using Intel Threading Building Blocks. More...
 
template<typename T , typename Derived >
using SMCSamplerEvalOMP = SMCSamplerEvalSMP< T, Derived, BackendOMP >
 SMCSampler<T>::eval_type subtype using OpenMP. More...
 
template<typename T , typename Derived >
using SMCSamplerEvalSEQ = SMCSamplerEvalSMP< T, Derived, BackendSEQ >
 SMCSampler<T>::eval_type subtype. More...
 
template<typename T , typename Derived >
using SMCSamplerEvalSTD = SMCSamplerEvalSMP< T, Derived, BackendSTD >
 SMCSampler<T>::eval_type subtype using the standard library. More...
 
template<typename T , typename Derived >
using SMCSamplerEvalTBB = SMCSamplerEvalSMP< T, Derived, BackendTBB >
 SMCSampler<T>::eval_type subtype using Intel Threading Building Blocks. More...
 
using StopWatch = StopWatchClockAdapter<>
 Stop watch using <chrono> More...
 
using Threefish1024 = Threefish1024Engine< std::uint32_t >
 Threefish-1024 RNG engine with 32-bit integer output. More...
 
using Threefish1024_64 = Threefish1024Engine< std::uint64_t >
 Threefish-1024 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefish1024Engine = ThreefryEngine< ResultType, std::uint64_t, 16, 80 >
 Threefish-1024 RNG engine. More...
 
using Threefish256 = Threefish256Engine< std::uint32_t >
 Threefish-256 RNG engine with 32-bit integer output. More...
 
using Threefish256_64 = Threefish256Engine< std::uint64_t >
 Threefish-256 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefish256Engine = ThreefryEngine< ResultType, std::uint64_t, 4, 72 >
 Threefish-256 RNG engine. More...
 
using Threefish512 = Threefish512Engine< std::uint32_t >
 Threefish-512 RNG engine with 32-bit integer output. More...
 
using Threefish512_64 = Threefish512Engine< std::uint64_t >
 Threefish-512 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefish512Engine = ThreefryEngine< ResultType, std::uint64_t, 8, 72 >
 Threefish-512 RNG engine. More...
 
using Threefry16x64 = Threefry16x64Engine< std::uint32_t >
 Threefry16x64 RNG engine with 32-bit integer output. More...
 
using Threefry16x64_64 = Threefry16x64Engine< std::uint64_t >
 Threefry16x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry16x64Engine = ThreefryEngine< ResultType, std::uint64_t, 16 >
 Threefry16x64 RNG engine. More...
 
using Threefry2x32 = Threefry2x32Engine< std::uint32_t >
 Threefry2x32 RNG engine with 32-bit integer output. More...
 
using Threefry2x32_64 = Threefry2x32Engine< std::uint64_t >
 Threefry2x32 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry2x32Engine = ThreefryEngine< ResultType, std::uint32_t, 2 >
 Threefry2x32 RNG engine. More...
 
using Threefry2x64 = Threefry2x64Engine< std::uint32_t >
 Threefry2x64 RNG engine with 32-bit integer output. More...
 
using Threefry2x64_64 = Threefry2x64Engine< std::uint64_t >
 Threefry2x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry2x64Engine = ThreefryEngine< ResultType, std::uint64_t, 2 >
 Threefry2x64 RNG engine. More...
 
using Threefry4x32 = Threefry4x32Engine< std::uint32_t >
 Threefry4x32 RNG engine with 32-bit integer output. More...
 
using Threefry4x32_64 = Threefry4x32Engine< std::uint64_t >
 Threefry4x32 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry4x32Engine = ThreefryEngine< ResultType, std::uint32_t, 4 >
 Threefry4x32 RNG engine. More...
 
using Threefry4x64 = Threefry4x64Engine< std::uint32_t >
 Threefry4x64 RNG engine with 32-bit integer output. More...
 
using Threefry4x64_64 = Threefry4x64Engine< std::uint64_t >
 Threefry4x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry4x64Engine = ThreefryEngine< ResultType, std::uint64_t, 4 >
 Threefry4x64 RNG engine. More...
 
using Threefry8x64 = Threefry8x64Engine< std::uint32_t >
 Threefry8x64 RNG engine with 32-bit integer output. More...
 
using Threefry8x64_64 = Threefry8x64Engine< std::uint64_t >
 Threefry8x64 RNG engine with 64-bit integer output. More...
 
template<typename ResultType >
using Threefry8x64Engine = ThreefryEngine< ResultType, std::uint64_t, 8 >
 Threefry8x64 RNG engine. More...
 
template<typename ResultType , typename T , std::size_t K, std::size_t Rounds = 20, typename Constants = ThreefryConstants<T, K>>
using ThreefryEngine = CounterEngine< ResultType, ThreefryGenerator< T, K, Rounds, Constants > >
 Threefry RNG engine. More...
 
template<typename RealType >
using U01Distribution = U01CanonicalDistribution< RealType >
 
template<typename T , typename Alloc = Allocator<T>>
using Vector = std::vector< T, Alloc >
 std::vector with Allocator as the default allocator More...
 
template<typename T >
using WeightType = typename WeightTypeTrait< T >::type
 

Enumerations

enum  MatrixDiag {
  MatrixDiag::NonUnit = 131,
  MatrixDiag::Unit = 132
}
 Matrix diagonal elements. More...
 
enum  MatrixLayout {
  MatrixLayout::RowMajor = 101,
  MatrixLayout::ColMajor = 102
}
 Matrix layout. More...
 
enum  MatrixSide {
  MatrixSide::Left = 141,
  MatrixSide::Right = 142
}
 Symmetric matrix operator side. More...
 
enum  MatrixTranspose {
  MatrixTranspose::NoTrans = 111,
  MatrixTranspose::Trans = 112,
  MatrixTranspose::ConjTrans = 113
}
 Matrix Transpose. More...
 
enum  MatrixUpLo {
  MatrixUpLo::Upper = 121,
  MatrixUpLo::Lower = 122
}
 Matrix Upper/lower triangular. More...
 
enum  ResampleScheme {
  ResampleScheme::Multinomial,
  ResampleScheme::Stratified,
  ResampleScheme::Systematic,
  ResampleScheme::Residual,
  ResampleScheme::ResidualStratified,
  ResampleScheme::ResidualSystematic
}
 Resampling schemes. More...
 

Functions

template<typename T , std::size_t K>
 __attribute__ ((always_inline, flatten)) inline void increment(std
 Increment a counter by one. More...
 
void abs (std::size_t n, const float *a, float *y)
 
void abs (std::size_t n, const double *a, double *y)
 
void abs (std::size_t n, const std::complex< float > *a, float *y)
 
void abs (std::size_t n, const std::complex< double > *a, double *y)
 
template<typename T >
void abs (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = |a_i|\). More...
 
template<typename T >
void abs (std::size_t n, const std::complex< T > *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = |a_i|\). More...
 
void acos (std::size_t n, const float *a, float *y)
 
void acos (std::size_t n, const double *a, double *y)
 
void acos (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void acos (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void acos (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arccos(a_i)\). More...
 
void acosh (std::size_t n, const float *a, float *y)
 
void acosh (std::size_t n, const double *a, double *y)
 
void acosh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void acosh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void acosh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{arc}\cosh(a_i)\). More...
 
void acospi (std::size_t n, const float *a, float *y)
 
void acospi (std::size_t n, const double *a, double *y)
 
template<typename T >
void acospi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arccos(a_i) / \pi\). More...
 
void add (std::size_t n, const float *a, const float *b, float *y)
 
void add (std::size_t n, const double *a, const double *b, double *y)
 
void add (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
void add (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
template<typename T >
void add (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i + b_i\). More...
 
template<typename T >
add (T a, T b)
 
template<typename T >
void add (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i + b\). More...
 
template<typename T >
void add (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a + b_i\). More...
 
template<typename RealType , typename RNGType >
void arcsine_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void arcsine_distribution (RNGType &rng, std::size_t N, RealType *r, const typename ArcsineDistribution< RealType >::param_type &param)
 
void arg (std::size_t n, const std::complex< float > *a, float *y)
 
void arg (std::size_t n, const std::complex< double > *a, double *y)
 
template<typename T >
void arg (std::size_t n, const std::complex< T > *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arg(a_i)\). More...
 
void asin (std::size_t n, const double *a, double *y)
 
void asin (std::size_t n, const float *a, float *y)
 
void asin (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void asin (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void asin (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arcsin(a_i)\). More...
 
void asinh (std::size_t n, const float *a, float *y)
 
void asinh (std::size_t n, const double *a, double *y)
 
void asinh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void asinh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void asinh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{arc}\sinh(a_i)\). More...
 
void asinpi (std::size_t n, const float *a, float *y)
 
void asinpi (std::size_t n, const double *a, double *y)
 
template<typename T >
void asinpi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arcsin(a_i) / \pi\). More...
 
void atan (std::size_t n, const float *a, float *y)
 
void atan (std::size_t n, const double *a, double *y)
 
void atan (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void atan (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void atan (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i)\). More...
 
void atan2 (std::size_t n, const float *a, const float *b, float *y)
 
void atan2 (std::size_t n, const double *a, const double *b, double *y)
 
template<typename T >
void atan2 (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i / b_i)\) with signs to determine the quadrant. More...
 
template<typename T >
void atan2 (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i / b)\) with signs to determine the quadrant. More...
 
template<typename T >
void atan2 (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a / b_i)\) with signs to determine the quadrant. More...
 
void atan2pi (std::size_t n, const float *a, const float *b, float *y)
 
void atan2pi (std::size_t n, const double *a, const double *b, double *y)
 
template<typename T >
void atan2pi (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i / b_i) / \pi\) with signs to determine the quadrant. More...
 
template<typename T >
void atan2pi (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i / b) / \pi\) with signs to determine the quadrant. More...
 
template<typename T >
void atan2pi (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a / b_i) / \pi\) with signs to determine the quadrant. More...
 
void atanh (std::size_t n, const float *a, float *y)
 
void atanh (std::size_t n, const double *a, double *y)
 
void atanh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void atanh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void atanh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{arc}\tanh(a_i)\). More...
 
void atanpi (std::size_t n, const float *a, float *y)
 
void atanpi (std::size_t n, const double *a, double *y)
 
template<typename T >
void atanpi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \arctan(a_i) / \pi\). More...
 
template<typename InType , typename RNGType >
void bernoulli_distribution (RNGType &rng, std::size_t N, InType *r, double p)
 
template<typename InType , typename RNGType >
void bernoulli_distribution (RNGType &rng, std::size_t N, InType *r, const typename BernoulliDistribution< InType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void bernoulli_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, int *r, double p)
 
template<typename RealType , typename RNGType >
void beta_distribution (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta)
 
template<typename RealType , typename RNGType >
void beta_distribution (RNGType &rng, std::size_t n, RealType *r, const typename BetaDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void beta_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float alpha, float beta)
 
template<MKL_INT BRNG, int Bits>
void beta_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double alpha, double beta)
 
double betai (double a, double b, double x)
 Regularized incomplete Beta function. More...
 
double betaiinv (double a, double b, double y)
 Inverse regularized incomplete Beta function. More...
 
template<typename RealType , typename RNGType >
void cauchy_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void cauchy_distribution (RNGType &rng, std::size_t N, RealType *r, const typename CauchyDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void cauchy_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float a, float b)
 
template<MKL_INT BRNG, int Bits>
void cauchy_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double a, double b)
 
void cbrt (std::size_t n, const float *a, float *y)
 
void cbrt (std::size_t n, const double *a, double *y)
 
template<typename T >
void cbrt (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt[3]{a_i}\). More...
 
void cdfnorm (std::size_t n, const float *a, float *y)
 
void cdfnorm (std::size_t n, const double *a, double *y)
 
template<typename T >
cdfnorm (T a)
 
template<typename T >
void cdfnorm (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = (1 + \mathrm{erfc}(a_i / \sqrt{2})) / 2\). More...
 
void cdfnorminv (std::size_t n, const float *a, float *y)
 
void cdfnorminv (std::size_t n, const double *a, double *y)
 
template<typename T >
cdfnorminv (T a)
 
template<typename T >
void cdfnorminv (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt{2}\mathrm{erfc}^{-1}(2 - 2a_i)\). More...
 
void ceil (std::size_t n, const float *a, float *y)
 
void ceil (std::size_t n, const double *a, double *y)
 
template<typename T >
void ceil (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \lceil a_i \rceil\). More...
 
template<typename RealType , typename RNGType >
void chi_squared_distribution (RNGType &rng, std::size_t n, RealType *r, RealType df)
 
template<typename RealType , typename RNGType >
void chi_squared_distribution (RNGType &rng, std::size_t n, RealType *r, const typename ChiSquaredDistribution< RealType >::param_type &param)
 
void cis (std::size_t n, const float *a, std::complex< float > *y)
 
void cis (std::size_t n, const double *a, std::complex< double > *y)
 
template<typename T >
void cis (std::size_t n, const T *a, std::complex< T > *y)
 For \(i=1,\ldots,n\), compute \(y_i = \cos(a_i) + i\sin(a_i)\). More...
 
void conj (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void conj (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void conj (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \bar{a}_i\). More...
 
template<typename T >
constexpr T const_e () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(e\) More...
 
template<>
constexpr double const_e< double > () noexcept
 
template<>
constexpr float const_e< float > () noexcept
 
template<>
constexpr long double const_e< long double > () noexcept
 
template<typename T >
constexpr T const_e_inv () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/e\) More...
 
template<>
constexpr double const_e_inv< double > () noexcept
 
template<>
constexpr float const_e_inv< float > () noexcept
 
template<>
constexpr long double const_e_inv< long double > () noexcept
 
template<typename T >
constexpr T const_inf ()
 Infinity. More...
 
template<typename T >
constexpr T const_ln_10 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(10)\) More...
 
template<>
constexpr double const_ln_10< double > () noexcept
 
template<>
constexpr float const_ln_10< float > () noexcept
 
template<>
constexpr long double const_ln_10< long double > () noexcept
 
template<typename T >
constexpr T const_ln_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(2)\) More...
 
template<>
constexpr double const_ln_2< double > () noexcept
 
template<>
constexpr float const_ln_2< float > () noexcept
 
template<>
constexpr long double const_ln_2< long double > () noexcept
 
template<typename T >
constexpr T const_ln_3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(3)\) More...
 
template<>
constexpr double const_ln_3< double > () noexcept
 
template<>
constexpr float const_ln_3< float > () noexcept
 
template<>
constexpr long double const_ln_3< long double > () noexcept
 
template<typename T >
constexpr T const_ln_5 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(5)\) More...
 
template<>
constexpr double const_ln_5< double > () noexcept
 
template<>
constexpr float const_ln_5< float > () noexcept
 
template<>
constexpr long double const_ln_5< long double > () noexcept
 
template<typename T >
constexpr T const_ln_inv_10 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/\ln(10)\) More...
 
template<>
constexpr double const_ln_inv_10< double > () noexcept
 
template<>
constexpr float const_ln_inv_10< float > () noexcept
 
template<>
constexpr long double const_ln_inv_10< long double > () noexcept
 
template<typename T >
constexpr T const_ln_inv_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/\ln(2)\) More...
 
template<>
constexpr double const_ln_inv_2< double > () noexcept
 
template<>
constexpr float const_ln_inv_2< float > () noexcept
 
template<>
constexpr long double const_ln_inv_2< long double > () noexcept
 
template<typename T >
constexpr T const_ln_inv_3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/\ln(3)\) More...
 
template<>
constexpr double const_ln_inv_3< double > () noexcept
 
template<>
constexpr float const_ln_inv_3< float > () noexcept
 
template<>
constexpr long double const_ln_inv_3< long double > () noexcept
 
template<typename T >
constexpr T const_ln_inv_5 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/\ln(5)\) More...
 
template<>
constexpr double const_ln_inv_5< double > () noexcept
 
template<>
constexpr float const_ln_inv_5< float > () noexcept
 
template<>
constexpr long double const_ln_inv_5< long double > () noexcept
 
template<typename T >
constexpr T const_ln_ln_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\ln(2))\) More...
 
template<>
constexpr double const_ln_ln_2< double > () noexcept
 
template<>
constexpr float const_ln_ln_2< float > () noexcept
 
template<>
constexpr long double const_ln_ln_2< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\pi)\) More...
 
template<>
constexpr double const_ln_pi< double > () noexcept
 
template<>
constexpr float const_ln_pi< float > () noexcept
 
template<>
constexpr long double const_ln_pi< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(2\pi)\) More...
 
template<>
constexpr double const_ln_pi_2< double > () noexcept
 
template<>
constexpr float const_ln_pi_2< float > () noexcept
 
template<>
constexpr long double const_ln_pi_2< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_2by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln((2/3)\pi)\) More...
 
template<>
constexpr double const_ln_pi_2by3< double > () noexcept
 
template<>
constexpr float const_ln_pi_2by3< float > () noexcept
 
template<>
constexpr long double const_ln_pi_2by3< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_3by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln((3/4)\pi)\) More...
 
template<>
constexpr double const_ln_pi_3by4< double > () noexcept
 
template<>
constexpr float const_ln_pi_3by4< float > () noexcept
 
template<>
constexpr long double const_ln_pi_3by4< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_4by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln((4/3)\pi)\) More...
 
template<>
constexpr double const_ln_pi_4by3< double > () noexcept
 
template<>
constexpr float const_ln_pi_4by3< float > () noexcept
 
template<>
constexpr long double const_ln_pi_4by3< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_by2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\pi/2)\) More...
 
template<>
constexpr double const_ln_pi_by2< double > () noexcept
 
template<>
constexpr float const_ln_pi_by2< float > () noexcept
 
template<>
constexpr long double const_ln_pi_by2< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\pi/3)\) More...
 
template<>
constexpr double const_ln_pi_by3< double > () noexcept
 
template<>
constexpr float const_ln_pi_by3< float > () noexcept
 
template<>
constexpr long double const_ln_pi_by3< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\pi/4)\) More...
 
template<>
constexpr double const_ln_pi_by4< double > () noexcept
 
template<>
constexpr float const_ln_pi_by4< float > () noexcept
 
template<>
constexpr long double const_ln_pi_by4< long double > () noexcept
 
template<typename T >
constexpr T const_ln_pi_by6 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\ln(\pi/6)\) More...
 
template<>
constexpr double const_ln_pi_by6< double > () noexcept
 
template<>
constexpr float const_ln_pi_by6< float > () noexcept
 
template<>
constexpr long double const_ln_pi_by6< long double > () noexcept
 
template<typename T >
constexpr T const_nan ()
 Non-signalling NaN. More...
 
template<typename T >
constexpr T const_one ()
 One. More...
 
template<typename T >
constexpr T const_pi () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi\) More...
 
template<>
constexpr double const_pi< double > () noexcept
 
template<>
constexpr float const_pi< float > () noexcept
 
template<>
constexpr long double const_pi< long double > () noexcept
 
template<typename T >
constexpr T const_pi_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(2\pi\) More...
 
template<>
constexpr double const_pi_2< double > () noexcept
 
template<>
constexpr float const_pi_2< float > () noexcept
 
template<>
constexpr long double const_pi_2< long double > () noexcept
 
template<typename T >
constexpr T const_pi_2by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \((2/3)\pi\) More...
 
template<>
constexpr double const_pi_2by3< double > () noexcept
 
template<>
constexpr float const_pi_2by3< float > () noexcept
 
template<>
constexpr long double const_pi_2by3< long double > () noexcept
 
template<typename T >
constexpr T const_pi_3by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \((3/4)\pi\) More...
 
template<>
constexpr double const_pi_3by4< double > () noexcept
 
template<>
constexpr float const_pi_3by4< float > () noexcept
 
template<>
constexpr long double const_pi_3by4< long double > () noexcept
 
template<typename T >
constexpr T const_pi_4by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \((4/3)\pi\) More...
 
template<>
constexpr double const_pi_4by3< double > () noexcept
 
template<>
constexpr float const_pi_4by3< float > () noexcept
 
template<>
constexpr long double const_pi_4by3< long double > () noexcept
 
template<typename T >
constexpr T const_pi_by2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi/2\) More...
 
template<>
constexpr double const_pi_by2< double > () noexcept
 
template<>
constexpr float const_pi_by2< float > () noexcept
 
template<>
constexpr long double const_pi_by2< long double > () noexcept
 
template<typename T >
constexpr T const_pi_by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi/3\) More...
 
template<>
constexpr double const_pi_by3< double > () noexcept
 
template<>
constexpr float const_pi_by3< float > () noexcept
 
template<>
constexpr long double const_pi_by3< long double > () noexcept
 
template<typename T >
constexpr T const_pi_by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi/4\) More...
 
template<>
constexpr double const_pi_by4< double > () noexcept
 
template<>
constexpr float const_pi_by4< float > () noexcept
 
template<>
constexpr long double const_pi_by4< long double > () noexcept
 
template<typename T >
constexpr T const_pi_by6 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi/6\) More...
 
template<>
constexpr double const_pi_by6< double > () noexcept
 
template<>
constexpr float const_pi_by6< float > () noexcept
 
template<>
constexpr long double const_pi_by6< long double > () noexcept
 
template<typename T >
constexpr T const_pi_inv () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(1/\pi\) More...
 
template<>
constexpr double const_pi_inv< double > () noexcept
 
template<>
constexpr float const_pi_inv< float > () noexcept
 
template<>
constexpr long double const_pi_inv< long double > () noexcept
 
template<typename T >
constexpr T const_pi_sqr () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\pi^2\) More...
 
template<>
constexpr double const_pi_sqr< double > () noexcept
 
template<>
constexpr float const_pi_sqr< float > () noexcept
 
template<>
constexpr long double const_pi_sqr< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_10 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{10}\) More...
 
template<>
constexpr double const_sqrt_10< double > () noexcept
 
template<>
constexpr float const_sqrt_10< float > () noexcept
 
template<>
constexpr long double const_sqrt_10< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_1by10 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/10}\) More...
 
template<>
constexpr double const_sqrt_1by10< double > () noexcept
 
template<>
constexpr float const_sqrt_1by10< float > () noexcept
 
template<>
constexpr long double const_sqrt_1by10< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_1by2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/2}\) More...
 
template<>
constexpr double const_sqrt_1by2< double > () noexcept
 
template<>
constexpr float const_sqrt_1by2< float > () noexcept
 
template<>
constexpr long double const_sqrt_1by2< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_1by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/3}\) More...
 
template<>
constexpr double const_sqrt_1by3< double > () noexcept
 
template<>
constexpr float const_sqrt_1by3< float > () noexcept
 
template<>
constexpr long double const_sqrt_1by3< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_1by5 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/5}\) More...
 
template<>
constexpr double const_sqrt_1by5< double > () noexcept
 
template<>
constexpr float const_sqrt_1by5< float > () noexcept
 
template<>
constexpr long double const_sqrt_1by5< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{2}\) More...
 
template<>
constexpr double const_sqrt_2< double > () noexcept
 
template<>
constexpr float const_sqrt_2< float > () noexcept
 
template<>
constexpr long double const_sqrt_2< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{3}\) More...
 
template<>
constexpr double const_sqrt_3< double > () noexcept
 
template<>
constexpr float const_sqrt_3< float > () noexcept
 
template<>
constexpr long double const_sqrt_3< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_5 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{5}\) More...
 
template<>
constexpr double const_sqrt_5< double > () noexcept
 
template<>
constexpr float const_sqrt_5< float > () noexcept
 
template<>
constexpr long double const_sqrt_5< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_e () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{e}\) More...
 
template<>
constexpr double const_sqrt_e< double > () noexcept
 
template<>
constexpr float const_sqrt_e< float > () noexcept
 
template<>
constexpr long double const_sqrt_e< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_e_inv () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/e}\) More...
 
template<>
constexpr double const_sqrt_e_inv< double > () noexcept
 
template<>
constexpr float const_sqrt_e_inv< float > () noexcept
 
template<>
constexpr long double const_sqrt_e_inv< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{\pi}\) More...
 
template<>
constexpr double const_sqrt_pi< double > () noexcept
 
template<>
constexpr float const_sqrt_pi< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{2\pi}\) More...
 
template<>
constexpr double const_sqrt_pi_2< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_2< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_2< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_2by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{(2/3)\pi}\) More...
 
template<>
constexpr double const_sqrt_pi_2by3< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_2by3< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_2by3< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_3by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{(3/4)\pi/}\) More...
 
template<>
constexpr double const_sqrt_pi_3by4< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_3by4< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_3by4< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_4by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{(4/3)\pi}\) More...
 
template<>
constexpr double const_sqrt_pi_4by3< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_4by3< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_4by3< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_by2 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{\pi/2}\) More...
 
template<>
constexpr double const_sqrt_pi_by2< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_by2< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_by2< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_by3 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{\pi/3}\) More...
 
template<>
constexpr double const_sqrt_pi_by3< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_by3< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_by3< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_by4 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{\pi/4}\) More...
 
template<>
constexpr double const_sqrt_pi_by4< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_by4< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_by4< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_by6 () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{\pi/6}\) More...
 
template<>
constexpr double const_sqrt_pi_by6< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_by6< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_by6< long double > () noexcept
 
template<typename T >
constexpr T const_sqrt_pi_inv () noexcept(std::is_floating_point< T >::value||std::is_integral< T >::value)
 \(\sqrt{1/\pi}\) More...
 
template<>
constexpr double const_sqrt_pi_inv< double > () noexcept
 
template<>
constexpr float const_sqrt_pi_inv< float > () noexcept
 
template<>
constexpr long double const_sqrt_pi_inv< long double > () noexcept
 
template<typename T >
constexpr T const_zero ()
 Zero. More...
 
void cos (std::size_t n, const float *a, float *y)
 
void cos (std::size_t n, const double *a, double *y)
 
void cos (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void cos (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void cos (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sin(a_i)\). More...
 
void cosd (std::size_t n, const float *a, float *y)
 
void cosd (std::size_t n, const double *a, double *y)
 
template<typename T >
void cosd (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \cos(a_i / 180)\). More...
 
void cosh (std::size_t n, const float *a, float *y)
 
void cosh (std::size_t n, const double *a, double *y)
 
void cosh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void cosh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void cosh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \cosh(a_i)\). More...
 
void cospi (std::size_t n, const float *a, float *y)
 
void cospi (std::size_t n, const double *a, double *y)
 
template<typename T >
void cospi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \cos(\pi a_i)\). More...
 
template<typename T >
std::size_t count_finite (std::size_t n, const T *a)
 Return the number of elements that are finite. More...
 
template<typename T >
std::size_t count_finite (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_inf (std::size_t n, const T *a)
 Return the number of elements that are infinity. More...
 
template<typename T >
std::size_t count_inf (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_nan (std::size_t n, const T *a)
 Return the number of elements that are nan. More...
 
template<typename T >
std::size_t count_nan (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_normal (std::size_t n, const T *a)
 Return the number of elements that are normal. More...
 
template<typename T >
std::size_t count_normal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_finite (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_finite (std::size_t n, const T *a)
 Return the number of elements that are not finite. More...
 
template<typename T >
std::size_t count_not_inf (std::size_t n, const T *a)
 Return the number of elements that are not infinity. More...
 
template<typename T >
std::size_t count_not_inf (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_nan (std::size_t n, const T *a)
 Return the number of elements that are not nan. More...
 
template<typename T >
std::size_t count_not_nan (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_normal (std::size_t n, const T *a)
 Return the number of elements that are not normal. More...
 
template<typename T >
std::size_t count_not_normal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_subnormal (std::size_t n, const T *a)
 Return the number of elements that are not subnormal. More...
 
template<typename T >
std::size_t count_not_subnormal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_not_zero (std::size_t n, const T *a)
 Return the number of elements that are not zero. More...
 
template<typename T >
std::size_t count_not_zero (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_subnormal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t count_subnormal (std::size_t n, const T *a)
 Return the number of elements that are subnormal. More...
 
template<typename T >
std::size_t count_zero (std::size_t n, const T *a)
 Return the number of elements that are zero. More...
 
template<typename T >
std::size_t count_zero (std::size_t n, const std::complex< T > *a)
 
template<typename RealType , typename RNGType >
void dirichlet_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, const RealType alpha)
 
template<typename RealType , typename RNGType >
void dirichlet_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, const RealType *alpha)
 
void div (std::size_t n, const float *a, const float *b, float *y)
 
void div (std::size_t n, const double *a, const double *b, double *y)
 
void div (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
void div (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
template<typename T >
void div (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i / b_i\). More...
 
template<typename T >
div (T a, T b)
 
template<typename T >
void div (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i / b\). More...
 
template<typename T >
void div (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a / b_i\). More...
 
void erf (std::size_t n, const float *a, float *y)
 
void erf (std::size_t n, const double *a, double *y)
 
template<typename T >
void erf (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{erf}(a_i)\). More...
 
void erfc (std::size_t n, const float *a, float *y)
 
void erfc (std::size_t n, const double *a, double *y)
 
template<typename T >
void erfc (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{erfc}(a_i) = \mathrm{erfc}(a_i)\). More...
 
template<typename T >
erfcinv (T y)
 Inverse complement error function. More...
 
void erfcinv (std::size_t n, const float *a, float *y)
 
void erfcinv (std::size_t n, const double *a, double *y)
 
template<typename T >
void erfcinv (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{erfc}(a_i) = \mathrm{erfc}^{-1}(a_i)\). More...
 
template<typename T >
erfinv (T y)
 Inverse error function. More...
 
void erfinv (std::size_t n, const float *a, float *y)
 
void erfinv (std::size_t n, const double *a, double *y)
 
template<typename T >
void erfinv (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{erf}^{-1}(a_i)\). More...
 
void exp (std::size_t n, const float *a, float *y)
 
void exp (std::size_t n, const double *a, double *y)
 
void exp (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void exp (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void exp (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = e^{a_i}\). More...
 
void exp10 (std::size_t n, const float *a, float *y)
 
void exp10 (std::size_t n, const double *a, double *y)
 
template<typename T >
void exp10 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = 10^{a_i}\). More...
 
void exp2 (std::size_t n, const float *a, float *y)
 
void exp2 (std::size_t n, const double *a, double *y)
 
template<typename T >
void exp2 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = 2^{a_i}\). More...
 
void expint1 (std::size_t n, const float *a, float *y)
 
void expint1 (std::size_t n, const double *a, double *y)
 
void expm1 (std::size_t n, const double *a, double *y)
 
void expm1 (std::size_t n, const float *a, float *y)
 
template<typename T >
void expm1 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = e^{a_i} - 1\). More...
 
template<typename RealType , typename RNGType >
void exponential_distribution (RNGType &rng, std::size_t N, RealType *r, RealType lambda)
 
template<typename RealType , typename RNGType >
void exponential_distribution (RNGType &rng, std::size_t N, RealType *r, const typename ExponentialDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void exponential_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float lambda)
 
template<MKL_INT BRNG, int Bits>
void exponential_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double lambda)
 
template<typename RealType , typename RNGType >
void extreme_value_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void extreme_value_distribution (RNGType &rng, std::size_t N, RealType *r, const typename ExtremeValueDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void extreme_value_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float a, float b)
 
template<MKL_INT BRNG, int Bits>
void extreme_value_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double a, double b)
 
template<typename T >
std::size_t find_finite (std::size_t n, const T *a)
 Return the index of the first element that is finite. More...
 
template<typename T >
std::size_t find_finite (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_inf (std::size_t n, const T *a)
 Return the index of the first element that is infinity. More...
 
template<typename T >
std::size_t find_inf (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_nan (std::size_t n, const T *a)
 Return the index of the first element that is nan. More...
 
template<typename T >
std::size_t find_nan (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_normal (std::size_t n, const T *a)
 Return the index of the first element that is normal. More...
 
template<typename T >
std::size_t find_normal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_finite (std::size_t n, const T *a)
 Return the index of the first element that is not finite. More...
 
template<typename T >
std::size_t find_not_finite (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_inf (std::size_t n, const T *a)
 Return the index of the first element that is not infinity. More...
 
template<typename T >
std::size_t find_not_inf (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_nan (std::size_t n, const T *a)
 Return the index of the first element that is not nan. More...
 
template<typename T >
std::size_t find_not_nan (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_normal (std::size_t n, const T *a)
 Return the index of the first element that is not normal. More...
 
template<typename T >
std::size_t find_not_normal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_subnormal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_not_subnormal (std::size_t n, const T *a)
 Return the index of the first element that is not subnormal. More...
 
template<typename T >
std::size_t find_not_zero (std::size_t n, const T *a)
 Return the index of the first element that is not zero. More...
 
template<typename T >
std::size_t find_not_zero (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_subnormal (std::size_t n, const std::complex< T > *a)
 
template<typename T >
std::size_t find_subnormal (std::size_t n, const T *a)
 Return the index of the first element that is subnormal. More...
 
template<typename T >
std::size_t find_zero (std::size_t n, const T *a)
 Return the index of the first element that is zero. More...
 
template<typename T >
std::size_t find_zero (std::size_t n, const std::complex< T > *a)
 
template<typename RealType , typename RNGType >
void fisher_f_distribution (RNGType &rng, std::size_t N, RealType *r, RealType m, RealType n)
 
template<typename RealType , typename RNGType >
void fisher_f_distribution (RNGType &rng, std::size_t N, RealType *r, const typename FisherFDistribution< RealType >::param_type &param)
 
void floor (std::size_t n, const float *a, float *y)
 
void floor (std::size_t n, const double *a, double *y)
 
template<typename T >
void floor (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \lfloor a_i \rfloor\). More...
 
template<typename T >
void fma (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void fma (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = a_i b_i + c_i\). More...
 
template<typename T >
void fma (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void fma (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void fma (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void fma (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void fma (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
fmadd (T a, T b, T c)
 
template<typename T >
void fmadd (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void fmadd (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = a_i b_i + c_i\). More...
 
template<typename T >
void fmadd (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void fmadd (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void fmadd (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void fmadd (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void fmadd (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
fmsub (T a, T b, T c)
 
template<typename T >
void fmsub (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
void fmsub (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void fmsub (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void fmsub (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = a_i b_i - c_i\). More...
 
template<typename T >
void fmsub (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void fmsub (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void fmsub (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
fnmadd (T a, T b, T c)
 
template<typename T >
void fnmadd (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = -a_i b_i + c_i\). More...
 
template<typename T >
void fnmadd (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void fnmadd (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void fnmadd (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void fnmadd (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void fnmadd (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void fnmadd (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
fnmsub (T a, T b, T c)
 
template<typename T >
void fnmsub (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = -a_i b_i - c_i\). More...
 
template<typename T >
void fnmsub (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void fnmsub (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void fnmsub (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void fnmsub (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void fnmsub (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
void fnmsub (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename RealType , typename RNGType >
void gamma_distribution (RNGType &rng, std::size_t n, RealType *r, RealType alpha, RealType beta)
 
template<typename RealType , typename RNGType >
void gamma_distribution (RNGType &rng, std::size_t n, RealType *r, const typename GammaDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void gamma_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float alpha, float beta)
 
template<MKL_INT BRNG, int Bits>
void gamma_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double alpha, double beta)
 
double gammap (double a, double x)
 Regularized lower incomplete Gamma function. More...
 
double gammapinv (double a, double y)
 Inverse regularized lower incomplete Gamma function. More...
 
template<typename InType , typename RNGType >
void geometric_distribution (RNGType &rng, std::size_t N, InType *r, const typename GeometricDistribution< InType >::param_type &param)
 
template<typename InType , typename RNGType >
void geometric_distribution (RNGType &rng, std::size_t N, InType *r, double p)
 
template<MKL_INT BRNG, int Bits>
void geometric_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, int *r, double p)
 
bool hdf5_error_printing (bool enabled)
 Enable and disable HDF5 low level error printing. More...
 
template<typename Location , typename T , typename Alloc >
bool hdf5append (Location &&location, const std::string &name, const Vector< T, Alloc > &vec)
 Append a vector in HDF5 format. More...
 
template<typename Location , typename T >
bool hdf5load (Location &&location, const std::string &name, T *value, bool isattr=false, decltype(hdf5type< T >()) *=nullptr)
 Load a value form HDF5 format. More...
 
template<typename Location >
bool hdf5load (Location &&location, const std::string &name, std::string *str, bool isattr=false)
 Load a string form HDF5 format. More...
 
template<typename Location , typename T , typename Alloc >
bool hdf5load (Location &&location, const std::string &name, Vector< T, Alloc > *vec, bool isattr=false)
 Load a vector form HDF5 format. More...
 
template<typename Location , typename T , MatrixLayout Layout, typename Alloc >
bool hdf5load (Location &&location, const std::string &name, Matrix< T, Layout, Alloc > *mat, bool isattr=false)
 Load a row major matrix form HDF5 format. More...
 
template<typename Location , typename T >
bool hdf5store (Location &&location, const std::string &name, const T &value, bool isattr=false, decltype(hdf5type< T >()) *=nullptr)
 Store a value in HDF5 format. More...
 
template<typename Location >
bool hdf5store (Location &&location, const std::string &name, const std::string &str, bool isattr=false)
 Store a string in HDF5 format. More...
 
template<typename Location , typename T , typename Alloc >
bool hdf5store (Location &&location, const std::string &name, const Vector< T, Alloc > &vec, bool isattr=false, bool extensible=false, std::size_t chunk_size=1024)
 Store a vector in HDF5 format. More...
 
template<typename Location , typename T , MatrixLayout Layout, typename Alloc >
bool hdf5store (Location &&location, const std::string &name, const Matrix< T, Layout, Alloc > &mat, bool isattr=false)
 Store a Matrix in HDF5 format. More...
 
template<typename T >
HDF5DataType hdf5type ()
 HDF5 data type. More...
 
inline ::hid_t hdf5typeid (char *)
 HDF5 data type id overload for char. More...
 
inline ::hid_t hdf5typeid (signed char *)
 HDF5 data type id overload for signed char. More...
 
inline ::hid_t hdf5typeid (unsigned char *)
 HDF5 data type id overload for unsigned char. More...
 
inline ::hid_t hdf5typeid (short *)
 HDF5 data type id overload for short. More...
 
inline ::hid_t hdf5typeid (unsigned short *)
 HDF5 data type id overload for unsigned short. More...
 
inline ::hid_t hdf5typeid (int *)
 HDF5 data type id overload for int. More...
 
inline ::hid_t hdf5typeid (unsigned int *)
 HDF5 data type id overload for unsigned int. More...
 
inline ::hid_t hdf5typeid (long *)
 HDF5 data type id overload for long. More...
 
inline ::hid_t hdf5typeid (unsigned long *)
 HDF5 data type id overload for unsigned long. More...
 
inline ::hid_t hdf5typeid (long long *)
 HDF5 data type id overload for long long. More...
 
inline ::hid_t hdf5typeid (unsigned long long *)
 HDF5 data type id overload for unsigned long. More...
 
inline ::hid_t hdf5typeid (float *)
 HDF5 data type id overload for float. More...
 
inline ::hid_t hdf5typeid (double *)
 HDF5 data type id overload for double. More...
 
inline ::hid_t hdf5typeid (long double *)
 HDF5 data type id overload for long double. More...
 
void hypot (std::size_t n, const float *a, const float *b, float *y)
 
void hypot (std::size_t n, const double *a, const double *b, double *y)
 
template<typename T >
void hypot (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt{a_i^2 + b_i^2}\). More...
 
template<typename T >
void hypot (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt{a_i^2 + b^2}\). More...
 
template<typename T >
void hypot (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt{a^2 + b_i^2}\). More...
 
template<typename T , std::size_t K, T NSkip>
void increment (std::array< T, K > &ctr, std::integral_constant< T, NSkip >)
 Increment a counter by given steps. More...
 
template<typename T , std::size_t K>
void increment (std::array< T, K > &ctr, T nskip)
 Increment a counter by given steps. More...
 
template<typename T , std::size_t K, std::size_t Blocks>
void increment (std::array< T, K > &ctr, std::array< std::array< T, K >, Blocks > &ctr_block)
 Increment a counter by a given steps, and store each step in an array of counters. More...
 
void inv (std::size_t n, const float *a, float *y)
 
void inv (std::size_t n, const double *a, double *y)
 
template<typename T >
inv (T a)
 
template<typename T >
void inv (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^{-1}\). More...
 
void invcbrt (std::size_t n, const float *a, float *y)
 
void invcbrt (std::size_t n, const double *a, double *y)
 
template<typename T >
invcbrt (T a)
 
template<typename T >
void invcbrt (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = 1 / \sqrt[3]{a_i}\). More...
 
void invsqrt (std::size_t n, const float *a, float *y)
 
void invsqrt (std::size_t n, const double *a, double *y)
 
template<typename T >
invsqrt (T a)
 
template<typename T >
void invsqrt (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = 1 / \sqrt{a_i}\). More...
 
bool is_equal (const float &v1, const float &v2)
 
bool is_equal (const double &v1, const double &v2)
 
bool is_equal (const long double &v1, const long double &v2)
 
template<typename T , typename Alloc >
bool is_equal (const std::vector< T, Alloc > &v1, const std::vector< T, Alloc > &v2)
 
template<typename T >
bool is_equal (const Particle< T > &p1, const Particle< T > &p2)
 
template<typename RealType , typename RNGType >
void laplace_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void laplace_distribution (RNGType &rng, std::size_t N, RealType *r, const typename LaplaceDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void laplace_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float location, float scale)
 
template<MKL_INT BRNG, int Bits>
void laplace_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double location, double scale)
 
template<typename RealType , typename RNGType >
void levy_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void levy_distribution (RNGType &rng, std::size_t N, RealType *r, const typename LevyDistribution< RealType >::param_type &param)
 
void lgamma (std::size_t n, const double *a, double *y)
 
void lgamma (std::size_t n, const float *a, float *y)
 
template<typename T >
void lgamma (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \ln\Gamma(a_i)\). More...
 
void linear_frac (std::size_t n, const float *a, const float *b, float beta_a, float beta_b, float mu_a, float mu_b, float *y)
 
void linear_frac (std::size_t n, const double *a, const double *b, double beta_a, double beta_b, double mu_a, double mu_b, double *y)
 
template<typename T >
void linear_frac (std::size_t n, const T *a, const T *b, T beta_a, T beta_b, T mu_a, T mu_b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = (\beta_a a_i + \mu_a) / (\beta_b b_i + \mu_b)\). More...
 
void log (std::size_t n, const float *a, float *y)
 
void log (std::size_t n, const double *a, double *y)
 
void log (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void log (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void log (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \log(a_i)\). More...
 
void log10 (std::size_t n, const double *a, double *y)
 
void log10 (std::size_t n, const float *a, float *y)
 
void log10 (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
void log10 (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
template<typename T >
void log10 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \log_{10}(a_i)\). More...
 
void log1p (std::size_t n, const double *a, double *y)
 
void log1p (std::size_t n, const float *a, float *y)
 
template<typename T >
void log1p (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \log(a_i + 1)\). More...
 
void log2 (std::size_t n, const float *a, float *y)
 
void log2 (std::size_t n, const double *a, double *y)
 
template<typename T >
void log2 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \log_2(a_i)\). More...
 
void logb (std::size_t n, const double *a, double *y)
 
void logb (std::size_t n, const float *a, float *y)
 
template<typename T >
void logb (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \log_2|a_i|\). More...
 
template<typename RealType , typename RNGType >
void logistic_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void logistic_distribution (RNGType &rng, std::size_t N, RealType *r, const typename LogisticDistribution< RealType >::param_type &param)
 
template<typename RealType , typename RNGType >
void lognormal_distribution (RNGType &rng, std::size_t N, RealType *r, RealType m, RealType s)
 
template<typename RealType , typename RNGType >
void lognormal_distribution (RNGType &rng, std::size_t N, RealType *r, const typename LognormalDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void lognormal_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float m, float s)
 
template<MKL_INT BRNG, int Bits>
void lognormal_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double m, double s)
 
template<typename RNGType >
int mkl_brng ()
 Register an RNG as MKL BRNG. More...
 
void modf (std::size_t n, const float *a, float *y, float *z)
 
void modf (std::size_t n, const double *a, double *y, double *z)
 
template<typename T >
void modf (std::size_t n, const T *a, T *y, T *z)
 For \(i=1,\ldots,n\), compute the integeral and fraction parts. More...
 
void mul (std::size_t n, const double *a, const double *b, double *y)
 
void mul (std::size_t n, const float *a, const float *b, float *y)
 
void mul (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
void mul (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
template<typename T >
void mul (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i b_i\). More...
 
template<typename T >
mul (T a, T b)
 
template<typename T >
void mul (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i b\). More...
 
template<typename T >
void mul (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a b_i\). More...
 
template<typename T >
muladd (T a, T b, T c)
 
template<typename T >
void muladd (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void muladd (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = a_i b_i + c_i\). More...
 
template<typename T >
void muladd (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void muladd (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
void muladd (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void muladd (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void muladd (std::size_t n, T a, const T *b, T c, T *y)
 
void mulbyconj (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
void mulbyconj (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
template<typename T >
mulbyconj (T a, T b)
 
template<typename T >
void mulbyconj (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i \bar{b}_i\). More...
 
template<typename T >
void mulbyconj (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i \bar{b}\). More...
 
template<typename T >
void mulbyconj (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a \bar{b}_i\). More...
 
template<typename T >
mulsub (T a, T b, T c)
 
template<typename T >
void mulsub (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void mulsub (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void mulsub (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = a_i b_i - c_i\). More...
 
template<typename T >
void mulsub (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void mulsub (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void mulsub (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void mulsub (std::size_t n, const T *a, T b, T c, T *y)
 
void nearbyint (std::size_t n, const float *a, float *y)
 
void nearbyint (std::size_t n, const double *a, double *y)
 
template<typename T >
void nearbyint (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute the nearest integers, using the current rounding mode. More...
 
template<typename T >
nmuladd (T a, T b, T c)
 
template<typename T >
void nmuladd (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void nmuladd (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename T >
void nmuladd (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void nmuladd (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void nmuladd (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = -a_i b_i + c_i\). More...
 
template<typename T >
void nmuladd (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void nmuladd (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
nmulsub (T a, T b, T c)
 
template<typename T >
void nmulsub (std::size_t n, T a, const T *b, T c, T *y)
 
template<typename T >
void nmulsub (std::size_t n, T a, const T *b, const T *c, T *y)
 
template<typename T >
void nmulsub (std::size_t n, const T *a, const T *b, T c, T *y)
 
template<typename T >
void nmulsub (std::size_t n, const T *a, T b, const T *c, T *y)
 
template<typename T >
void nmulsub (std::size_t n, const T *a, const T *b, const T *c, T *y)
 For \(i = 1,\ldots,n\), compute \(y_i = -a_i b_i - c_i\). More...
 
template<typename T >
void nmulsub (std::size_t n, T a, T b, const T *c, T *y)
 
template<typename T >
void nmulsub (std::size_t n, const T *a, T b, T c, T *y)
 
template<typename RealType , typename RNGType >
void normal_distribution (RNGType &rng, std::size_t n, RealType *r, RealType mean, RealType stddev)
 
template<typename RealType , typename RNGType >
void normal_distribution (RNGType &rng, std::size_t n, RealType *r, const typename NormalDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void normal_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float mean, float stddev)
 
template<MKL_INT BRNG, int Bits>
void normal_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double mean, double stddev)
 
template<typename RealType , typename RNGType >
void normal_mv_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, RealType mean, RealType chol)
 
template<typename RealType , typename RNGType >
void normal_mv_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, RealType mean, const RealType *chol)
 
template<typename RealType , typename RNGType >
void normal_mv_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, const RealType *mean, RealType chol)
 
template<typename RealType , typename RNGType >
void normal_mv_distribution (RNGType &rng, std::size_t n, RealType *r, std::size_t dim, const RealType *mean, const RealType *chol)
 
template<MKL_INT BRNG, int Bits>
void normal_mv_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, std::size_t m, const float *mean, const float *chol)
 
template<MKL_INT BRNG, int Bits>
void normal_mv_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, std::size_t m, const double *mean, const double *chol)
 
bool operator!= (const MKLStream &stream1, const MKLStream &stream2)
 Inequality comparison of MKLStream. More...
 
template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const std::vector< T, Alloc > &vec)
 
template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const std::list< T, Alloc > &lst)
 
template<typename CharT , typename Traits , typename T , std::size_t N>
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const std::array< T, N > &ary)
 
template<typename CharT , typename Traits , typename T , MatrixLayout Layout, typename Alloc >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const Matrix< T, Layout, Alloc > &mat)
 Output operator. More...
 
template<typename CharT , typename Traits >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const MKLStream &stream)
 Output of MKLStream. More...
 
bool operator== (const MKLStream &stream1, const MKLStream &stream2)
 Equality comparison of MKLStream. More...
 
template<typename CharT , typename Traits , typename T , std::size_t N>
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, std::array< T, N > &ary)
 
template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, std::vector< T, Alloc > &vec)
 
template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, std::list< T, Alloc > &lst)
 
template<typename CharT , typename Traits >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, MKLStream &stream)
 Input of MKLStream. More...
 
template<typename CharT , typename Traits , typename T , MatrixLayout Layout, typename Alloc >
std::basic_istream< CharT, Traits > & operator>> (std::basic_istream< CharT, Traits > &is, Matrix< T, Layout, Alloc > &mat)
 Input operator. More...
 
template<typename RealType , typename RNGType >
void pareto_distribution (RNGType &rng, std::size_t N, RealType *r, const typename ParetoDistribution< RealType >::param_type &param)
 
template<typename RealType , typename RNGType >
void pareto_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
void pow (std::size_t n, const float *a, const float *b, float *y)
 
void pow (std::size_t n, const double *a, const double *b, double *y)
 
void pow (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
void pow (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
void pow (std::size_t n, const float *a, float b, float *y)
 
void pow (std::size_t n, const double *a, double b, double *y)
 
void pow (std::size_t n, const std::complex< float > *a, std::complex< float > b, std::complex< float > *y)
 
void pow (std::size_t n, const std::complex< double > *a, std::complex< double > b, std::complex< double > *y)
 
template<typename T >
void pow (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^{b_i}\). More...
 
template<typename T >
void pow (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^b\). More...
 
template<typename T >
void pow (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a^{b_i}\). More...
 
void pow2o3 (std::size_t n, const float *a, float *y)
 
void pow2o3 (std::size_t n, const double *a, double *y)
 
template<typename T >
pow2o3 (T a)
 
template<typename T >
void pow2o3 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^{2/3}\). More...
 
void pow3o2 (std::size_t n, const double *a, double *y)
 
void pow3o2 (std::size_t n, const float *a, float *y)
 
template<typename T >
pow3o2 (T a)
 
template<typename T >
void pow3o2 (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^{3/2}\). More...
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, LognormalDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, ParetoDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, ExponentialDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, RayleighDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename IntType , typename RNGType >
void rand (RNGType &rng, BernoulliDistribution< IntType > &distribution, std::size_t N, IntType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, ArcsineDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, ExtremeValueDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, ChiSquaredDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, LogisticDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, UniformRealDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename IntType , typename RNGType >
void rand (RNGType &rng, GeometricDistribution< IntType > &distribution, std::size_t N, IntType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, CauchyDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, FisherFDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, LaplaceDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, LevyDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, WeibullDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, StudentTDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, NormalDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename IntType , typename RNGType >
void rand (RNGType &rng, UniformIntDistribution< IntType > &distribution, std::size_t N, IntType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, U01CanonicalDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, U01CCDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, U01CODistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, U01OCDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, U01OODistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename UIntType , typename RNGType >
void rand (RNGType &rng, UniformBitsDistribution< UIntType > &distribution, std::size_t N, UIntType *r)
 
template<typename ResultType , typename Generator >
void rand (CounterEngine< ResultType, Generator > &rng, std::size_t n, ResultType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, StableDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, DirichletDistribution< RealType > &distribution, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, DirichletDistribution< RealType > &distribution, std::size_t n, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, GammaDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, NormalMVDistribution< RealType > &distribution, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, NormalMVDistribution< RealType > &distribution, std::size_t n, RealType *r)
 
template<typename RealType , typename RNGType >
void rand (RNGType &rng, BetaDistribution< RealType > &distribution, std::size_t N, RealType *r)
 
template<typename RNGType >
RNGType::result_type rand (RNGType &rng)
 Generate random integers. More...
 
template<typename RNGType >
void rand (RNGType &rng, std::size_t n, typename RNGType::result_type *r)
 Generate random integers. More...
 
template<typename RNGType , typename DistributionType >
DistributionType::result_type rand (RNGType &rng, DistributionType &distribution)
 Generate distribution random variates. More...
 
template<typename RNGType , typename DistributionType >
void rand (RNGType &rng, DistributionType &distribution, std::size_t n, typename DistributionType::result_type *r)
 Generate distribution random variates. More...
 
template<MKL_INT BRNG, int Bits>
void rand (MKLEngine< BRNG, Bits > &rng, std::size_t n, typename MKLEngine< BRNG, Bits >::result_type *r)
 
template<typename RealType , typename RNGType >
void rayleigh_distribution (RNGType &rng, std::size_t N, RealType *r, const typename RayleighDistribution< RealType >::param_type &param)
 
template<typename RealType , typename RNGType >
void rayleigh_distribution (RNGType &rng, std::size_t N, RealType *r, RealType sigma)
 
template<MKL_INT BRNG, int Bits>
void rayleigh_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float sigma)
 
template<MKL_INT BRNG, int Bits>
void rayleigh_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double sigma)
 
template<typename UIntType , std::size_t W>
bool rdrand (UIntType *, std::integral_constant< int, W >)
 Invoke the RDRAND instruction and return the carry flag. More...
 
template<typename UIntType >
bool rdrand (UIntType *rand, std::integral_constant< int, 16 >)
 Invoke the 16-bit RDRAND instruction and return the carry flag. More...
 
template<typename UIntType >
bool rdrand (UIntType *rand, std::integral_constant< int, 32 >)
 Invoke the 32-bit RDRAND instruction and return the carry flag. More...
 
template<typename UIntType >
bool rdrand (UIntType *rand, std::integral_constant< int, 64 >)
 Invoke the 64-bit RDRAND instruction and return the carry flag. More...
 
template<typename InputIter , typename OutputIter >
OutputIter resample_trans_rep_index (std::size_t N, std::size_t M, InputIter replication, OutputIter index)
 Transform replication numbers into parent indices. More...
 
template<typename InputIter , typename OutputIterR , typename OutputIterI >
std::size_t resample_trans_residual (std::size_t N, std::size_t M, InputIter weight, OutputIterR resid, OutputIterI integ)
 Transform normalized weights to normalized residual and integrals,. More...
 
template<typename InputIter , typename OutputIter , typename U01SeqType >
OutputIter resample_trans_u01_rep (std::size_t N, std::size_t M, InputIter weight, U01SeqType &&u01seq, OutputIter replication)
 Transform uniform [0, 1) sequence into replication numbers. More...
 
void rint (std::size_t n, const float *a, float *y)
 
void rint (std::size_t n, const double *a, double *y)
 
template<typename T >
void rint (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute the nearest integers, using the current rounding mode. More...
 
void round (std::size_t n, const float *a, float *y)
 
void round (std::size_t n, const double *a, double *y)
 
template<typename T >
void round (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute the nearest integers, rounding away from zero. More...
 
void runtime_assert (bool cond, const char *msg, bool soft=false)
 
void runtime_assert (bool cond, const std::string &msg, bool soft=false)
 
template<typename Except >
void runtime_assert (bool cond, const char *msg)
 
template<typename Except >
void runtime_assert (bool cond, const std::string &msg)
 
void sin (std::size_t n, const float *a, float *y)
 
void sin (std::size_t n, const double *a, double *y)
 
void sin (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void sin (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void sin (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \cos(a_i)\). More...
 
void sincos (std::size_t n, const float *a, float *y, float *z)
 
void sincos (std::size_t n, const double *a, double *y, double *z)
 
template<typename T >
void sincos (std::size_t n, const T *a, T *y, T *z)
 For \(i=1,\ldots,n\), compute \(y_i = \sin(a_i), z_i = \cos(a_i)\). More...
 
void sind (std::size_t n, const double *a, double *y)
 
void sind (std::size_t n, const float *a, float *y)
 
template<typename T >
void sind (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sin(a_i / 180)\). More...
 
void sinh (std::size_t n, const float *a, float *y)
 
void sinh (std::size_t n, const double *a, double *y)
 
void sinh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
void sinh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
template<typename T >
void sinh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sinh(a_i)\). More...
 
void sinpi (std::size_t n, const float *a, float *y)
 
void sinpi (std::size_t n, const double *a, double *y)
 
template<typename T >
void sinpi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sin(\pi a_i)\). More...
 
void sqr (std::size_t n, const float *a, float *y)
 
void sqr (std::size_t n, const double *a, double *y)
 
template<typename T >
void sqr (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i^2\). More...
 
void sqrt (std::size_t n, const double *a, double *y)
 
void sqrt (std::size_t n, const float *a, float *y)
 
void sqrt (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
void sqrt (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
template<typename T >
void sqrt (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \sqrt{a_i}\). More...
 
template<typename RealType , typename RNGType >
void stable_distribution (RNGType &rng, std::size_t N, RealType *r, RealType alpha, RealType beta, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void stable_distribution (RNGType &rng, std::size_t N, RealType *r, const typename StableDistribution< RealType >::param_type &param)
 
template<typename RealType , typename RNGType >
void student_t_distribution (RNGType &rng, std::size_t N, RealType *r, const typename StudentTDistribution< RealType >::param_type &param)
 
template<typename RealType , typename RNGType >
void student_t_distribution (RNGType &rng, std::size_t N, RealType *r, RealType n)
 
void sub (std::size_t n, const float *a, const float *b, float *y)
 
void sub (std::size_t n, const double *a, const double *b, double *y)
 
void sub (std::size_t n, const std::complex< float > *a, const std::complex< float > *b, std::complex< float > *y)
 
void sub (std::size_t n, const std::complex< double > *a, const std::complex< double > *b, std::complex< double > *y)
 
template<typename T >
sub (T a, T b)
 
template<typename T >
void sub (std::size_t n, const T *a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i - b_i\). More...
 
template<typename T >
void sub (std::size_t n, const T *a, T b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a_i - b\). More...
 
template<typename T >
void sub (std::size_t n, T a, const T *b, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = a - b_i\). More...
 
void tan (std::size_t n, const double *a, double *y)
 
void tan (std::size_t n, const float *a, float *y)
 
void tan (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
void tan (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
template<typename T >
void tan (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \tan(a_i)\). More...
 
void tand (std::size_t n, const double *a, double *y)
 
void tand (std::size_t n, const float *a, float *y)
 
template<typename T >
void tand (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \tan(a_i / 180)\). More...
 
void tanh (std::size_t n, const double *a, double *y)
 
void tanh (std::size_t n, const float *a, float *y)
 
void tanh (std::size_t n, const std::complex< float > *a, std::complex< float > *y)
 
void tanh (std::size_t n, const std::complex< double > *a, std::complex< double > *y)
 
template<typename T >
void tanh (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \tanh(a_i)\). More...
 
void tanpi (std::size_t n, const float *a, float *y)
 
void tanpi (std::size_t n, const double *a, double *y)
 
template<typename T >
void tanpi (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \tan(\pi a_i)\). More...
 
void tgamma (std::size_t n, const float *a, float *y)
 
void tgamma (std::size_t n, const double *a, double *y)
 
template<typename T >
void tgamma (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \Gamma(a_i)\). More...
 
void trunc (std::size_t n, const double *a, double *y)
 
void trunc (std::size_t n, const float *a, float *y)
 
template<typename T >
void trunc (std::size_t n, const T *a, T *y)
 For \(i=1,\ldots,n\), compute \(y_i = \mathrm{sgn}(a_i)\lfloor|a_i|\rfloor\). More...
 
template<typename UIntType , typename RealType , typename Lower , typename Upper >
RealType u01 (UIntType u)
 Convert uniform unsigned integers to floating points within [0, 1]. More...
 
template<typename UIntType , typename RealType , typename Lower , typename Upper >
void u01 (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform unsigned integers to floating points within [0, 1]. More...
 
template<typename UIntType , typename RealType , std::size_t M>
RealType u01_canonical (const UIntType *u)
 Convert uniform multiple unsigned integers to one floating points within [0, 1]. More...
 
template<typename UIntType , typename RealType , std::size_t M>
void u01_canonical (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform multiple unsigned integers to one floating points within [0, 1]. More...
 
template<typename RealType , typename RNGType >
void u01_canonical_distribution (RNGType &rng, std::size_t N, RealType *r, const typename U01CanonicalDistribution< RealType >::param_type &)
 
template<typename RealType , typename RNGType >
void u01_canonical_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename UIntType , typename RealType >
RealType u01_cc (UIntType u)
 Convert uniform unsigned integers to floating points on [0, 1]. More...
 
template<typename UIntType , typename RealType >
void u01_cc (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform unsigned integers to floating points on [0, 1]. More...
 
template<typename RealType , typename RNGType >
void u01_cc_distribution (RNGType &rng, std::size_t N, RealType *r, const typename U01CCDistribution< RealType >::param_type &)
 
template<typename RealType , typename RNGType >
void u01_cc_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename UIntType , typename RealType >
RealType u01_co (UIntType u)
 Convert uniform unsigned integers to floating points on [0, 1) More...
 
template<typename UIntType , typename RealType >
void u01_co (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform unsigned integers to floating points on [0, 1) More...
 
template<typename RealType , typename RNGType >
void u01_co_distribution (RNGType &rng, std::size_t N, RealType *r, const typename U01CODistribution< RealType >::param_type &)
 
template<typename RealType , typename RNGType >
void u01_co_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename RealType , typename RNGType >
void u01_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename UIntType , typename RealType >
RealType u01_oc (UIntType u)
 Convert uniform unsigned integers to floating points on (0, 1]. More...
 
template<typename UIntType , typename RealType >
void u01_oc (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform unsigned integers to floating points on (0, 1]. More...
 
template<typename RealType , typename RNGType >
void u01_oc_distribution (RNGType &rng, std::size_t N, RealType *r, const typename U01OCDistribution< RealType >::param_type &)
 
template<typename RealType , typename RNGType >
void u01_oc_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename UIntType , typename RealType >
RealType u01_oo (UIntType u)
 Convert uniform unsigned integers to floating points on (0, 1) More...
 
template<typename UIntType , typename RealType >
void u01_oo (std::size_t n, const UIntType *u, RealType *r)
 Convert uniform unsigned integers to floating points on (0, 1) More...
 
template<typename RealType , typename RNGType >
void u01_oo_distribution (RNGType &rng, std::size_t n, RealType *r)
 
template<typename RealType , typename RNGType >
void u01_oo_distribution (RNGType &rng, std::size_t N, RealType *r, const typename U01OODistribution< RealType >::param_type &)
 
template<typename RealType , typename RNGType >
void u01_rand_sorted (RNGType &rng, std::size_t N, RealType *r)
 Generate sorted standard uniform numbers with \(O(N)\) cost. More...
 
template<typename RealType , typename RNGType >
void u01_rand_stratified (RNGType &rng, std::size_t N, RealType *r)
 Generate stratified standard uniform numbers. More...
 
template<typename RealType , typename RNGType >
void u01_rand_systematic (RNGType &rng, std::size_t N, RealType *r)
 Generate systematic standard uniform numbers. More...
 
template<typename RealType >
void u01_trans_sorted (std::size_t N, const RealType *u01, RealType *r)
 Tranform a sequence of standard uniform random numbers to sorted sequence. More...
 
template<typename RealType >
void u01_trans_stratified (std::size_t N, const RealType *u01, RealType *r)
 Transform a sequence of standard uniform random numbers to a stratified sequence. More...
 
template<typename RealType >
void u01_trans_systematic (std::size_t N, const RealType *u01, RealType *r)
 Transform a single standard uniform random number to a systematic sequence. More...
 
template<typename UIntType , typename RNGType >
void uniform_bits_distribution (RNGType &rng, std::size_t n, UIntType *r)
 
template<typename UIntType , typename RNGType >
void uniform_bits_distribution (RNGType &rng, std::size_t n, UIntType *r, const typename UniformBitsDistribution< UIntType >::param_type &)
 
template<typename IntType , typename RNGType >
void uniform_int_distribution (RNGType &rng, std::size_t N, IntType *r, const typename UniformIntDistribution< IntType >::param_type &param)
 
template<typename IntType , typename RNGType >
void uniform_int_distribution (RNGType &rng, std::size_t N, IntType *r, IntType a, IntType b)
 
template<MKL_INT BRNG, int Bits>
void uniform_int_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, int *r, int a, int b)
 
template<typename RealType , typename RNGType >
void uniform_real_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void uniform_real_distribution (RNGType &rng, std::size_t N, RealType *r, const typename UniformRealDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void uniform_real_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float a, float b)
 
template<MKL_INT BRNG, int Bits>
void uniform_real_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double a, double b)
 
template<typename RealType , typename RNGType >
void weibull_distribution (RNGType &rng, std::size_t N, RealType *r, RealType a, RealType b)
 
template<typename RealType , typename RNGType >
void weibull_distribution (RNGType &rng, std::size_t N, RealType *r, const typename WeibullDistribution< RealType >::param_type &param)
 
template<MKL_INT BRNG, int Bits>
void weibull_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, float *r, float a, float b)
 
template<MKL_INT BRNG, int Bits>
void weibull_distribution (MKLEngine< BRNG, Bits > &rng, std::size_t n, double *r, double a, double b)
 

Variables

template<typename T >
constexpr std::size_t AlignOf = internal::AlignOfImpl<T>::value
 Alignment of types in bytes. More...
 
constexpr MatrixLayout ColMajor = MatrixLayout::ColMajor
 
constexpr ResampleScheme Multinomial = ResampleScheme::Multinomial
 
constexpr ResampleScheme Residual = ResampleScheme::Residual
 
constexpr ResampleScheme ResidualStratified
 
constexpr ResampleScheme ResidualSystematic
 
constexpr MatrixLayout RowMajor = MatrixLayout::RowMajor
 
constexpr ResampleScheme Stratified = ResampleScheme::Stratified
 
constexpr ResampleScheme Systematic = ResampleScheme::Systematic
 

Typedef Documentation

◆ ParticleIndexBaseType

template<typename T >
using mckl::ParticleIndexBaseType = typedef typename ParticleIndexBaseTypeTrait<T>::type

Definition at line 78 of file particle.hpp.

◆ RNGSetType

template<typename T >
using mckl::RNGSetType = typedef typename RNGSetTypeTrait<T>::type

Definition at line 177 of file rng_set.hpp.

◆ SeedType

template<typename RNGType >
using mckl::SeedType = typedef typename SeedTrait<RNGType>::type

Definition at line 1012 of file random/internal/common.hpp.

◆ SizeType

template<typename T >
using mckl::SizeType = typedef typename SizeTypeTrait<T>::type

Definition at line 166 of file traits.hpp.

◆ Threefish1024Engine

template<typename ResultType >
using mckl::Threefish1024Engine = typedef ThreefryEngine<ResultType, std::uint64_t, 16, 80>

Threefish-1024 RNG engine.

Definition at line 255 of file threefry.hpp.

◆ Threefish256Engine

template<typename ResultType >
using mckl::Threefish256Engine = typedef ThreefryEngine<ResultType, std::uint64_t, 4, 72>

Threefish-256 RNG engine.

Definition at line 247 of file threefry.hpp.

◆ Threefish512Engine

template<typename ResultType >
using mckl::Threefish512Engine = typedef ThreefryEngine<ResultType, std::uint64_t, 8, 72>

Threefish-512 RNG engine.

Definition at line 251 of file threefry.hpp.

◆ U01Distribution

template<typename RealType >
using mckl::U01Distribution = typedef U01CanonicalDistribution<RealType>

Definition at line 227 of file u01_distribution.hpp.

◆ WeightType

template<typename T >
using mckl::WeightType = typedef typename WeightTypeTrait<T>::type

Definition at line 232 of file weight.hpp.

Enumeration Type Documentation

◆ MatrixDiag

enum mckl::MatrixDiag
strong

Matrix diagonal elements.

Enumerator
NonUnit 
Unit 

Definition at line 57 of file defines.hpp.

◆ MatrixSide

enum mckl::MatrixSide
strong

Symmetric matrix operator side.

Enumerator
Left 
Right 

Definition at line 60 of file defines.hpp.

◆ MatrixTranspose

enum mckl::MatrixTranspose
strong

Matrix Transpose.

Enumerator
NoTrans 
Trans 
ConjTrans 

Definition at line 51 of file defines.hpp.

◆ MatrixUpLo

enum mckl::MatrixUpLo
strong

Matrix Upper/lower triangular.

Enumerator
Upper 
Lower 

Definition at line 54 of file defines.hpp.

Function Documentation

◆ abs() [1/4]

void mckl::abs ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 128 of file vmf.hpp.

◆ abs() [2/4]

void mckl::abs ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 128 of file vmf.hpp.

◆ abs() [3/4]

void mckl::abs ( std::size_t  n,
const std::complex< float > *  a,
float *  y 
)
inline

Definition at line 130 of file vmf.hpp.

◆ abs() [4/4]

void mckl::abs ( std::size_t  n,
const std::complex< double > *  a,
double *  y 
)
inline

Definition at line 137 of file vmf.hpp.

◆ acos() [1/4]

void mckl::acos ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 272 of file vmf.hpp.

◆ acos() [2/4]

void mckl::acos ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 272 of file vmf.hpp.

◆ acos() [3/4]

void mckl::acos ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 273 of file vmf.hpp.

◆ acos() [4/4]

void mckl::acos ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 273 of file vmf.hpp.

◆ acosh() [1/4]

void mckl::acosh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 290 of file vmf.hpp.

◆ acosh() [2/4]

void mckl::acosh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 290 of file vmf.hpp.

◆ acosh() [3/4]

void mckl::acosh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 291 of file vmf.hpp.

◆ acosh() [4/4]

void mckl::acosh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 291 of file vmf.hpp.

◆ acospi() [1/2]

void mckl::acospi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 278 of file vmf.hpp.

◆ acospi() [2/2]

void mckl::acospi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 278 of file vmf.hpp.

◆ add() [1/4]

void mckl::add ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 119 of file vmf.hpp.

◆ add() [2/4]

void mckl::add ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 119 of file vmf.hpp.

◆ add() [3/4]

void mckl::add ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 120 of file vmf.hpp.

◆ add() [4/4]

void mckl::add ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 120 of file vmf.hpp.

◆ arcsine_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::arcsine_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 62 of file arcsine_distribution.hpp.

◆ arcsine_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::arcsine_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename ArcsineDistribution< RealType >::param_type &  param 
)
inline

Definition at line 62 of file arcsine_distribution.hpp.

◆ arg() [1/2]

void mckl::arg ( std::size_t  n,
const std::complex< float > *  a,
float *  y 
)
inline

Definition at line 144 of file vmf.hpp.

◆ arg() [2/2]

void mckl::arg ( std::size_t  n,
const std::complex< double > *  a,
double *  y 
)
inline

Definition at line 151 of file vmf.hpp.

◆ asin() [1/4]

void mckl::asin ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 274 of file vmf.hpp.

◆ asin() [2/4]

void mckl::asin ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 274 of file vmf.hpp.

◆ asin() [3/4]

void mckl::asin ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 275 of file vmf.hpp.

◆ asin() [4/4]

void mckl::asin ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 275 of file vmf.hpp.

◆ asinh() [1/4]

void mckl::asinh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 292 of file vmf.hpp.

◆ asinh() [2/4]

void mckl::asinh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 292 of file vmf.hpp.

◆ asinh() [3/4]

void mckl::asinh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 293 of file vmf.hpp.

◆ asinh() [4/4]

void mckl::asinh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 293 of file vmf.hpp.

◆ asinpi() [1/2]

void mckl::asinpi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 279 of file vmf.hpp.

◆ asinpi() [2/2]

void mckl::asinpi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 279 of file vmf.hpp.

◆ atan() [1/4]

void mckl::atan ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 276 of file vmf.hpp.

◆ atan() [2/4]

void mckl::atan ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 276 of file vmf.hpp.

◆ atan() [3/4]

void mckl::atan ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 277 of file vmf.hpp.

◆ atan() [4/4]

void mckl::atan ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 277 of file vmf.hpp.

◆ atan2() [1/2]

void mckl::atan2 ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 281 of file vmf.hpp.

◆ atan2() [2/2]

void mckl::atan2 ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 281 of file vmf.hpp.

◆ atan2pi() [1/2]

void mckl::atan2pi ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 282 of file vmf.hpp.

◆ atan2pi() [2/2]

void mckl::atan2pi ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 282 of file vmf.hpp.

◆ atanh() [1/4]

void mckl::atanh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 294 of file vmf.hpp.

◆ atanh() [2/4]

void mckl::atanh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 294 of file vmf.hpp.

◆ atanh() [3/4]

void mckl::atanh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 295 of file vmf.hpp.

◆ atanh() [4/4]

void mckl::atanh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 295 of file vmf.hpp.

◆ atanpi() [1/2]

void mckl::atanpi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 280 of file vmf.hpp.

◆ atanpi() [2/2]

void mckl::atanpi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 280 of file vmf.hpp.

◆ bernoulli_distribution() [1/3]

template<typename InType , typename RNGType >
void mckl::bernoulli_distribution ( RNGType &  rng,
std::size_t  N,
InType *  r,
double  p 
)
inline

Definition at line 64 of file bernoulli_distribution.hpp.

◆ bernoulli_distribution() [2/3]

template<typename InType , typename RNGType >
void mckl::bernoulli_distribution ( RNGType &  rng,
std::size_t  N,
InType *  r,
const typename BernoulliDistribution< InType >::param_type &  param 
)
inline

Definition at line 64 of file bernoulli_distribution.hpp.

◆ bernoulli_distribution() [3/3]

template<MKL_INT BRNG, int Bits>
void mckl::bernoulli_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
int *  r,
double  p 
)
inline

Definition at line 1472 of file mkl.hpp.

◆ beta_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::beta_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  alpha,
RealType  beta 
)
inline

Definition at line 372 of file beta_distribution.hpp.

◆ beta_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::beta_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
const typename BetaDistribution< RealType >::param_type &  param 
)
inline

Definition at line 399 of file beta_distribution.hpp.

◆ beta_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::beta_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  alpha,
float  beta 
)
inline

Definition at line 1272 of file mkl.hpp.

◆ beta_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::beta_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  alpha,
double  beta 
)
inline

Definition at line 1280 of file mkl.hpp.

◆ cauchy_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::cauchy_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 62 of file cauchy_distribution.hpp.

◆ cauchy_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::cauchy_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename CauchyDistribution< RealType >::param_type &  param 
)
inline

Definition at line 62 of file cauchy_distribution.hpp.

◆ cauchy_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::cauchy_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  a,
float  b 
)
inline

Definition at line 1288 of file mkl.hpp.

◆ cauchy_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::cauchy_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  a,
double  b 
)
inline

Definition at line 1296 of file mkl.hpp.

◆ cbrt() [1/2]

void mckl::cbrt ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 180 of file vmf.hpp.

◆ cbrt() [2/2]

void mckl::cbrt ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 180 of file vmf.hpp.

◆ cdfnorm() [1/3]

void mckl::cdfnorm ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 299 of file vmf.hpp.

◆ cdfnorm() [2/3]

void mckl::cdfnorm ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 299 of file vmf.hpp.

◆ cdfnorm() [3/3]

template<typename T >
T mckl::cdfnorm ( a)
inline

Definition at line 753 of file vmf.hpp.

◆ cdfnorminv() [1/3]

void mckl::cdfnorminv ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 302 of file vmf.hpp.

◆ cdfnorminv() [2/3]

void mckl::cdfnorminv ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 302 of file vmf.hpp.

◆ cdfnorminv() [3/3]

template<typename T >
T mckl::cdfnorminv ( a)
inline

Definition at line 762 of file vmf.hpp.

◆ ceil() [1/2]

void mckl::ceil ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 308 of file vmf.hpp.

◆ ceil() [2/2]

void mckl::ceil ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 308 of file vmf.hpp.

◆ chi_squared_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::chi_squared_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  df 
)
inline

Definition at line 51 of file chi_squared_distribution.hpp.

◆ chi_squared_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::chi_squared_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
const typename ChiSquaredDistribution< RealType >::param_type &  param 
)
inline

Definition at line 58 of file chi_squared_distribution.hpp.

◆ cis() [1/2]

void mckl::cis ( std::size_t  n,
const float *  a,
std::complex< float > *  y 
)
inline

Definition at line 253 of file vmf.hpp.

◆ cis() [2/2]

void mckl::cis ( std::size_t  n,
const double *  a,
std::complex< double > *  y 
)
inline

Definition at line 259 of file vmf.hpp.

◆ conj() [1/2]

void mckl::conj ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 127 of file vmf.hpp.

◆ conj() [2/2]

void mckl::conj ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 127 of file vmf.hpp.

◆ const_e< double >()

template<>
constexpr double mckl::const_e< double > ( )
inlinenoexcept

Definition at line 243 of file constants.hpp.

◆ const_e< float >()

template<>
constexpr float mckl::const_e< float > ( )
inlinenoexcept

Definition at line 243 of file constants.hpp.

◆ const_e< long double >()

template<>
constexpr long double mckl::const_e< long double > ( )
inlinenoexcept

Definition at line 243 of file constants.hpp.

◆ const_e_inv< double >()

template<>
constexpr double mckl::const_e_inv< double > ( )
inlinenoexcept

Definition at line 247 of file constants.hpp.

◆ const_e_inv< float >()

template<>
constexpr float mckl::const_e_inv< float > ( )
inlinenoexcept

Definition at line 247 of file constants.hpp.

◆ const_e_inv< long double >()

template<>
constexpr long double mckl::const_e_inv< long double > ( )
inlinenoexcept

Definition at line 247 of file constants.hpp.

◆ const_ln_10< double >()

template<>
constexpr double mckl::const_ln_10< double > ( )
inlinenoexcept

Definition at line 308 of file constants.hpp.

◆ const_ln_10< float >()

template<>
constexpr float mckl::const_ln_10< float > ( )
inlinenoexcept

Definition at line 308 of file constants.hpp.

◆ const_ln_10< long double >()

template<>
constexpr long double mckl::const_ln_10< long double > ( )
inlinenoexcept

Definition at line 308 of file constants.hpp.

◆ const_ln_2< double >()

template<>
constexpr double mckl::const_ln_2< double > ( )
inlinenoexcept

Definition at line 296 of file constants.hpp.

◆ const_ln_2< float >()

template<>
constexpr float mckl::const_ln_2< float > ( )
inlinenoexcept

Definition at line 296 of file constants.hpp.

◆ const_ln_2< long double >()

template<>
constexpr long double mckl::const_ln_2< long double > ( )
inlinenoexcept

Definition at line 296 of file constants.hpp.

◆ const_ln_3< double >()

template<>
constexpr double mckl::const_ln_3< double > ( )
inlinenoexcept

Definition at line 300 of file constants.hpp.

◆ const_ln_3< float >()

template<>
constexpr float mckl::const_ln_3< float > ( )
inlinenoexcept

Definition at line 300 of file constants.hpp.

◆ const_ln_3< long double >()

template<>
constexpr long double mckl::const_ln_3< long double > ( )
inlinenoexcept

Definition at line 300 of file constants.hpp.

◆ const_ln_5< double >()

template<>
constexpr double mckl::const_ln_5< double > ( )
inlinenoexcept

Definition at line 304 of file constants.hpp.

◆ const_ln_5< float >()

template<>
constexpr float mckl::const_ln_5< float > ( )
inlinenoexcept

Definition at line 304 of file constants.hpp.

◆ const_ln_5< long double >()

template<>
constexpr long double mckl::const_ln_5< long double > ( )
inlinenoexcept

Definition at line 304 of file constants.hpp.

◆ const_ln_inv_10< double >()

template<>
constexpr double mckl::const_ln_inv_10< double > ( )
inlinenoexcept

Definition at line 327 of file constants.hpp.

◆ const_ln_inv_10< float >()

template<>
constexpr float mckl::const_ln_inv_10< float > ( )
inlinenoexcept

Definition at line 327 of file constants.hpp.

◆ const_ln_inv_10< long double >()

template<>
constexpr long double mckl::const_ln_inv_10< long double > ( )
inlinenoexcept

Definition at line 327 of file constants.hpp.

◆ const_ln_inv_2< double >()

template<>
constexpr double mckl::const_ln_inv_2< double > ( )
inlinenoexcept

Definition at line 312 of file constants.hpp.

◆ const_ln_inv_2< float >()

template<>
constexpr float mckl::const_ln_inv_2< float > ( )
inlinenoexcept

Definition at line 312 of file constants.hpp.

◆ const_ln_inv_2< long double >()

template<>
constexpr long double mckl::const_ln_inv_2< long double > ( )
inlinenoexcept

Definition at line 312 of file constants.hpp.

◆ const_ln_inv_3< double >()

template<>
constexpr double mckl::const_ln_inv_3< double > ( )
inlinenoexcept

Definition at line 317 of file constants.hpp.

◆ const_ln_inv_3< float >()

template<>
constexpr float mckl::const_ln_inv_3< float > ( )
inlinenoexcept

Definition at line 317 of file constants.hpp.

◆ const_ln_inv_3< long double >()

template<>
constexpr long double mckl::const_ln_inv_3< long double > ( )
inlinenoexcept

Definition at line 317 of file constants.hpp.

◆ const_ln_inv_5< double >()

template<>
constexpr double mckl::const_ln_inv_5< double > ( )
inlinenoexcept

Definition at line 322 of file constants.hpp.

◆ const_ln_inv_5< float >()

template<>
constexpr float mckl::const_ln_inv_5< float > ( )
inlinenoexcept

Definition at line 322 of file constants.hpp.

◆ const_ln_inv_5< long double >()

template<>
constexpr long double mckl::const_ln_inv_5< long double > ( )
inlinenoexcept

Definition at line 322 of file constants.hpp.

◆ const_ln_ln_2< double >()

template<>
constexpr double mckl::const_ln_ln_2< double > ( )
inlinenoexcept

Definition at line 332 of file constants.hpp.

◆ const_ln_ln_2< float >()

template<>
constexpr float mckl::const_ln_ln_2< float > ( )
inlinenoexcept

Definition at line 332 of file constants.hpp.

◆ const_ln_ln_2< long double >()

template<>
constexpr long double mckl::const_ln_ln_2< long double > ( )
inlinenoexcept

Definition at line 332 of file constants.hpp.

◆ const_ln_pi< double >()

template<>
constexpr double mckl::const_ln_pi< double > ( )
inlinenoexcept

Definition at line 200 of file constants.hpp.

◆ const_ln_pi< float >()

template<>
constexpr float mckl::const_ln_pi< float > ( )
inlinenoexcept

Definition at line 200 of file constants.hpp.

◆ const_ln_pi< long double >()

template<>
constexpr long double mckl::const_ln_pi< long double > ( )
inlinenoexcept

Definition at line 200 of file constants.hpp.

◆ const_ln_pi_2< double >()

template<>
constexpr double mckl::const_ln_pi_2< double > ( )
inlinenoexcept

Definition at line 204 of file constants.hpp.

◆ const_ln_pi_2< float >()

template<>
constexpr float mckl::const_ln_pi_2< float > ( )
inlinenoexcept

Definition at line 204 of file constants.hpp.

◆ const_ln_pi_2< long double >()

template<>
constexpr long double mckl::const_ln_pi_2< long double > ( )
inlinenoexcept

Definition at line 204 of file constants.hpp.

◆ const_ln_pi_2by3< double >()

template<>
constexpr double mckl::const_ln_pi_2by3< double > ( )
inlinenoexcept

Definition at line 229 of file constants.hpp.

◆ const_ln_pi_2by3< float >()

template<>
constexpr float mckl::const_ln_pi_2by3< float > ( )
inlinenoexcept

Definition at line 229 of file constants.hpp.

◆ const_ln_pi_2by3< long double >()

template<>
constexpr long double mckl::const_ln_pi_2by3< long double > ( )
inlinenoexcept

Definition at line 229 of file constants.hpp.

◆ const_ln_pi_3by4< double >()

template<>
constexpr double mckl::const_ln_pi_3by4< double > ( )
inlinenoexcept

Definition at line 234 of file constants.hpp.

◆ const_ln_pi_3by4< float >()

template<>
constexpr float mckl::const_ln_pi_3by4< float > ( )
inlinenoexcept

Definition at line 234 of file constants.hpp.

◆ const_ln_pi_3by4< long double >()

template<>
constexpr long double mckl::const_ln_pi_3by4< long double > ( )
inlinenoexcept

Definition at line 234 of file constants.hpp.

◆ const_ln_pi_4by3< double >()

template<>
constexpr double mckl::const_ln_pi_4by3< double > ( )
inlinenoexcept

Definition at line 239 of file constants.hpp.

◆ const_ln_pi_4by3< float >()

template<>
constexpr float mckl::const_ln_pi_4by3< float > ( )
inlinenoexcept

Definition at line 239 of file constants.hpp.

◆ const_ln_pi_4by3< long double >()

template<>
constexpr long double mckl::const_ln_pi_4by3< long double > ( )
inlinenoexcept

Definition at line 239 of file constants.hpp.

◆ const_ln_pi_by2< double >()

template<>
constexpr double mckl::const_ln_pi_by2< double > ( )
inlinenoexcept

Definition at line 209 of file constants.hpp.

◆ const_ln_pi_by2< float >()

template<>
constexpr float mckl::const_ln_pi_by2< float > ( )
inlinenoexcept

Definition at line 209 of file constants.hpp.

◆ const_ln_pi_by2< long double >()

template<>
constexpr long double mckl::const_ln_pi_by2< long double > ( )
inlinenoexcept

Definition at line 209 of file constants.hpp.

◆ const_ln_pi_by3< double >()

template<>
constexpr double mckl::const_ln_pi_by3< double > ( )
inlinenoexcept

Definition at line 214 of file constants.hpp.

◆ const_ln_pi_by3< float >()

template<>
constexpr float mckl::const_ln_pi_by3< float > ( )
inlinenoexcept

Definition at line 214 of file constants.hpp.

◆ const_ln_pi_by3< long double >()

template<>
constexpr long double mckl::const_ln_pi_by3< long double > ( )
inlinenoexcept

Definition at line 214 of file constants.hpp.

◆ const_ln_pi_by4< double >()

template<>
constexpr double mckl::const_ln_pi_by4< double > ( )
inlinenoexcept

Definition at line 219 of file constants.hpp.

◆ const_ln_pi_by4< float >()

template<>
constexpr float mckl::const_ln_pi_by4< float > ( )
inlinenoexcept

Definition at line 219 of file constants.hpp.

◆ const_ln_pi_by4< long double >()

template<>
constexpr long double mckl::const_ln_pi_by4< long double > ( )
inlinenoexcept

Definition at line 219 of file constants.hpp.

◆ const_ln_pi_by6< double >()

template<>
constexpr double mckl::const_ln_pi_by6< double > ( )
inlinenoexcept

Definition at line 224 of file constants.hpp.

◆ const_ln_pi_by6< float >()

template<>
constexpr float mckl::const_ln_pi_by6< float > ( )
inlinenoexcept

Definition at line 224 of file constants.hpp.

◆ const_ln_pi_by6< long double >()

template<>
constexpr long double mckl::const_ln_pi_by6< long double > ( )
inlinenoexcept

Definition at line 224 of file constants.hpp.

◆ const_pi< double >()

template<>
constexpr double mckl::const_pi< double > ( )
inlinenoexcept

Definition at line 107 of file constants.hpp.

◆ const_pi< float >()

template<>
constexpr float mckl::const_pi< float > ( )
inlinenoexcept

Definition at line 107 of file constants.hpp.

◆ const_pi< long double >()

template<>
constexpr long double mckl::const_pi< long double > ( )
inlinenoexcept

Definition at line 107 of file constants.hpp.

◆ const_pi_2< double >()

template<>
constexpr double mckl::const_pi_2< double > ( )
inlinenoexcept

Definition at line 111 of file constants.hpp.

◆ const_pi_2< float >()

template<>
constexpr float mckl::const_pi_2< float > ( )
inlinenoexcept

Definition at line 111 of file constants.hpp.

◆ const_pi_2< long double >()

template<>
constexpr long double mckl::const_pi_2< long double > ( )
inlinenoexcept

Definition at line 111 of file constants.hpp.

◆ const_pi_2by3< double >()

template<>
constexpr double mckl::const_pi_2by3< double > ( )
inlinenoexcept

Definition at line 139 of file constants.hpp.

◆ const_pi_2by3< float >()

template<>
constexpr float mckl::const_pi_2by3< float > ( )
inlinenoexcept

Definition at line 139 of file constants.hpp.

◆ const_pi_2by3< long double >()

template<>
constexpr long double mckl::const_pi_2by3< long double > ( )
inlinenoexcept

Definition at line 139 of file constants.hpp.

◆ const_pi_3by4< double >()

template<>
constexpr double mckl::const_pi_3by4< double > ( )
inlinenoexcept

Definition at line 143 of file constants.hpp.

◆ const_pi_3by4< float >()

template<>
constexpr float mckl::const_pi_3by4< float > ( )
inlinenoexcept

Definition at line 143 of file constants.hpp.

◆ const_pi_3by4< long double >()

template<>
constexpr long double mckl::const_pi_3by4< long double > ( )
inlinenoexcept

Definition at line 143 of file constants.hpp.

◆ const_pi_4by3< double >()

template<>
constexpr double mckl::const_pi_4by3< double > ( )
inlinenoexcept

Definition at line 147 of file constants.hpp.

◆ const_pi_4by3< float >()

template<>
constexpr float mckl::const_pi_4by3< float > ( )
inlinenoexcept

Definition at line 147 of file constants.hpp.

◆ const_pi_4by3< long double >()

template<>
constexpr long double mckl::const_pi_4by3< long double > ( )
inlinenoexcept

Definition at line 147 of file constants.hpp.

◆ const_pi_by2< double >()

template<>
constexpr double mckl::const_pi_by2< double > ( )
inlinenoexcept

Definition at line 123 of file constants.hpp.

◆ const_pi_by2< float >()

template<>
constexpr float mckl::const_pi_by2< float > ( )
inlinenoexcept

Definition at line 123 of file constants.hpp.

◆ const_pi_by2< long double >()

template<>
constexpr long double mckl::const_pi_by2< long double > ( )
inlinenoexcept

Definition at line 123 of file constants.hpp.

◆ const_pi_by3< double >()

template<>
constexpr double mckl::const_pi_by3< double > ( )
inlinenoexcept

Definition at line 127 of file constants.hpp.

◆ const_pi_by3< float >()

template<>
constexpr float mckl::const_pi_by3< float > ( )
inlinenoexcept

Definition at line 127 of file constants.hpp.

◆ const_pi_by3< long double >()

template<>
constexpr long double mckl::const_pi_by3< long double > ( )
inlinenoexcept

Definition at line 127 of file constants.hpp.

◆ const_pi_by4< double >()

template<>
constexpr double mckl::const_pi_by4< double > ( )
inlinenoexcept

Definition at line 131 of file constants.hpp.

◆ const_pi_by4< float >()

template<>
constexpr float mckl::const_pi_by4< float > ( )
inlinenoexcept

Definition at line 131 of file constants.hpp.

◆ const_pi_by4< long double >()

template<>
constexpr long double mckl::const_pi_by4< long double > ( )
inlinenoexcept

Definition at line 131 of file constants.hpp.

◆ const_pi_by6< double >()

template<>
constexpr double mckl::const_pi_by6< double > ( )
inlinenoexcept

Definition at line 135 of file constants.hpp.

◆ const_pi_by6< float >()

template<>
constexpr float mckl::const_pi_by6< float > ( )
inlinenoexcept

Definition at line 135 of file constants.hpp.

◆ const_pi_by6< long double >()

template<>
constexpr long double mckl::const_pi_by6< long double > ( )
inlinenoexcept

Definition at line 135 of file constants.hpp.

◆ const_pi_inv< double >()

template<>
constexpr double mckl::const_pi_inv< double > ( )
inlinenoexcept

Definition at line 115 of file constants.hpp.

◆ const_pi_inv< float >()

template<>
constexpr float mckl::const_pi_inv< float > ( )
inlinenoexcept

Definition at line 115 of file constants.hpp.

◆ const_pi_inv< long double >()

template<>
constexpr long double mckl::const_pi_inv< long double > ( )
inlinenoexcept

Definition at line 115 of file constants.hpp.

◆ const_pi_sqr< double >()

template<>
constexpr double mckl::const_pi_sqr< double > ( )
inlinenoexcept

Definition at line 119 of file constants.hpp.

◆ const_pi_sqr< float >()

template<>
constexpr float mckl::const_pi_sqr< float > ( )
inlinenoexcept

Definition at line 119 of file constants.hpp.

◆ const_pi_sqr< long double >()

template<>
constexpr long double mckl::const_pi_sqr< long double > ( )
inlinenoexcept

Definition at line 119 of file constants.hpp.

◆ const_sqrt_10< double >()

template<>
constexpr double mckl::const_sqrt_10< double > ( )
inlinenoexcept

Definition at line 272 of file constants.hpp.

◆ const_sqrt_10< float >()

template<>
constexpr float mckl::const_sqrt_10< float > ( )
inlinenoexcept

Definition at line 272 of file constants.hpp.

◆ const_sqrt_10< long double >()

template<>
constexpr long double mckl::const_sqrt_10< long double > ( )
inlinenoexcept

Definition at line 272 of file constants.hpp.

◆ const_sqrt_1by10< double >()

template<>
constexpr double mckl::const_sqrt_1by10< double > ( )
inlinenoexcept

Definition at line 292 of file constants.hpp.

◆ const_sqrt_1by10< float >()

template<>
constexpr float mckl::const_sqrt_1by10< float > ( )
inlinenoexcept

Definition at line 292 of file constants.hpp.

◆ const_sqrt_1by10< long double >()

template<>
constexpr long double mckl::const_sqrt_1by10< long double > ( )
inlinenoexcept

Definition at line 292 of file constants.hpp.

◆ const_sqrt_1by2< double >()

template<>
constexpr double mckl::const_sqrt_1by2< double > ( )
inlinenoexcept

Definition at line 277 of file constants.hpp.

◆ const_sqrt_1by2< float >()

template<>
constexpr float mckl::const_sqrt_1by2< float > ( )
inlinenoexcept

Definition at line 277 of file constants.hpp.

◆ const_sqrt_1by2< long double >()

template<>
constexpr long double mckl::const_sqrt_1by2< long double > ( )
inlinenoexcept

Definition at line 277 of file constants.hpp.

◆ const_sqrt_1by3< double >()

template<>
constexpr double mckl::const_sqrt_1by3< double > ( )
inlinenoexcept

Definition at line 282 of file constants.hpp.

◆ const_sqrt_1by3< float >()

template<>
constexpr float mckl::const_sqrt_1by3< float > ( )
inlinenoexcept

Definition at line 282 of file constants.hpp.

◆ const_sqrt_1by3< long double >()

template<>
constexpr long double mckl::const_sqrt_1by3< long double > ( )
inlinenoexcept

Definition at line 282 of file constants.hpp.

◆ const_sqrt_1by5< double >()

template<>
constexpr double mckl::const_sqrt_1by5< double > ( )
inlinenoexcept

Definition at line 287 of file constants.hpp.

◆ const_sqrt_1by5< float >()

template<>
constexpr float mckl::const_sqrt_1by5< float > ( )
inlinenoexcept

Definition at line 287 of file constants.hpp.

◆ const_sqrt_1by5< long double >()

template<>
constexpr long double mckl::const_sqrt_1by5< long double > ( )
inlinenoexcept

Definition at line 287 of file constants.hpp.

◆ const_sqrt_2< double >()

template<>
constexpr double mckl::const_sqrt_2< double > ( )
inlinenoexcept

Definition at line 260 of file constants.hpp.

◆ const_sqrt_2< float >()

template<>
constexpr float mckl::const_sqrt_2< float > ( )
inlinenoexcept

Definition at line 260 of file constants.hpp.

◆ const_sqrt_2< long double >()

template<>
constexpr long double mckl::const_sqrt_2< long double > ( )
inlinenoexcept

Definition at line 260 of file constants.hpp.

◆ const_sqrt_3< double >()

template<>
constexpr double mckl::const_sqrt_3< double > ( )
inlinenoexcept

Definition at line 264 of file constants.hpp.

◆ const_sqrt_3< float >()

template<>
constexpr float mckl::const_sqrt_3< float > ( )
inlinenoexcept

Definition at line 264 of file constants.hpp.

◆ const_sqrt_3< long double >()

template<>
constexpr long double mckl::const_sqrt_3< long double > ( )
inlinenoexcept

Definition at line 264 of file constants.hpp.

◆ const_sqrt_5< double >()

template<>
constexpr double mckl::const_sqrt_5< double > ( )
inlinenoexcept

Definition at line 268 of file constants.hpp.

◆ const_sqrt_5< float >()

template<>
constexpr float mckl::const_sqrt_5< float > ( )
inlinenoexcept

Definition at line 268 of file constants.hpp.

◆ const_sqrt_5< long double >()

template<>
constexpr long double mckl::const_sqrt_5< long double > ( )
inlinenoexcept

Definition at line 268 of file constants.hpp.

◆ const_sqrt_e< double >()

template<>
constexpr double mckl::const_sqrt_e< double > ( )
inlinenoexcept

Definition at line 251 of file constants.hpp.

◆ const_sqrt_e< float >()

template<>
constexpr float mckl::const_sqrt_e< float > ( )
inlinenoexcept

Definition at line 251 of file constants.hpp.

◆ const_sqrt_e< long double >()

template<>
constexpr long double mckl::const_sqrt_e< long double > ( )
inlinenoexcept

Definition at line 251 of file constants.hpp.

◆ const_sqrt_e_inv< double >()

template<>
constexpr double mckl::const_sqrt_e_inv< double > ( )
inlinenoexcept

Definition at line 256 of file constants.hpp.

◆ const_sqrt_e_inv< float >()

template<>
constexpr float mckl::const_sqrt_e_inv< float > ( )
inlinenoexcept

Definition at line 256 of file constants.hpp.

◆ const_sqrt_e_inv< long double >()

template<>
constexpr long double mckl::const_sqrt_e_inv< long double > ( )
inlinenoexcept

Definition at line 256 of file constants.hpp.

◆ const_sqrt_pi< double >()

template<>
constexpr double mckl::const_sqrt_pi< double > ( )
inlinenoexcept

Definition at line 151 of file constants.hpp.

◆ const_sqrt_pi< float >()

template<>
constexpr float mckl::const_sqrt_pi< float > ( )
inlinenoexcept

Definition at line 151 of file constants.hpp.

◆ const_sqrt_pi< long double >()

template<>
constexpr long double mckl::const_sqrt_pi< long double > ( )
inlinenoexcept

Definition at line 151 of file constants.hpp.

◆ const_sqrt_pi_2< double >()

template<>
constexpr double mckl::const_sqrt_pi_2< double > ( )
inlinenoexcept

Definition at line 156 of file constants.hpp.

◆ const_sqrt_pi_2< float >()

template<>
constexpr float mckl::const_sqrt_pi_2< float > ( )
inlinenoexcept

Definition at line 156 of file constants.hpp.

◆ const_sqrt_pi_2< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_2< long double > ( )
inlinenoexcept

Definition at line 156 of file constants.hpp.

◆ const_sqrt_pi_2by3< double >()

template<>
constexpr double mckl::const_sqrt_pi_2by3< double > ( )
inlinenoexcept

Definition at line 186 of file constants.hpp.

◆ const_sqrt_pi_2by3< float >()

template<>
constexpr float mckl::const_sqrt_pi_2by3< float > ( )
inlinenoexcept

Definition at line 186 of file constants.hpp.

◆ const_sqrt_pi_2by3< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_2by3< long double > ( )
inlinenoexcept

Definition at line 186 of file constants.hpp.

◆ const_sqrt_pi_3by4< double >()

template<>
constexpr double mckl::const_sqrt_pi_3by4< double > ( )
inlinenoexcept

Definition at line 191 of file constants.hpp.

◆ const_sqrt_pi_3by4< float >()

template<>
constexpr float mckl::const_sqrt_pi_3by4< float > ( )
inlinenoexcept

Definition at line 191 of file constants.hpp.

◆ const_sqrt_pi_3by4< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_3by4< long double > ( )
inlinenoexcept

Definition at line 191 of file constants.hpp.

◆ const_sqrt_pi_4by3< double >()

template<>
constexpr double mckl::const_sqrt_pi_4by3< double > ( )
inlinenoexcept

Definition at line 196 of file constants.hpp.

◆ const_sqrt_pi_4by3< float >()

template<>
constexpr float mckl::const_sqrt_pi_4by3< float > ( )
inlinenoexcept

Definition at line 196 of file constants.hpp.

◆ const_sqrt_pi_4by3< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_4by3< long double > ( )
inlinenoexcept

Definition at line 196 of file constants.hpp.

◆ const_sqrt_pi_by2< double >()

template<>
constexpr double mckl::const_sqrt_pi_by2< double > ( )
inlinenoexcept

Definition at line 166 of file constants.hpp.

◆ const_sqrt_pi_by2< float >()

template<>
constexpr float mckl::const_sqrt_pi_by2< float > ( )
inlinenoexcept

Definition at line 166 of file constants.hpp.

◆ const_sqrt_pi_by2< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_by2< long double > ( )
inlinenoexcept

Definition at line 166 of file constants.hpp.

◆ const_sqrt_pi_by3< double >()

template<>
constexpr double mckl::const_sqrt_pi_by3< double > ( )
inlinenoexcept

Definition at line 171 of file constants.hpp.

◆ const_sqrt_pi_by3< float >()

template<>
constexpr float mckl::const_sqrt_pi_by3< float > ( )
inlinenoexcept

Definition at line 171 of file constants.hpp.

◆ const_sqrt_pi_by3< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_by3< long double > ( )
inlinenoexcept

Definition at line 171 of file constants.hpp.

◆ const_sqrt_pi_by4< double >()

template<>
constexpr double mckl::const_sqrt_pi_by4< double > ( )
inlinenoexcept

Definition at line 176 of file constants.hpp.

◆ const_sqrt_pi_by4< float >()

template<>
constexpr float mckl::const_sqrt_pi_by4< float > ( )
inlinenoexcept

Definition at line 176 of file constants.hpp.

◆ const_sqrt_pi_by4< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_by4< long double > ( )
inlinenoexcept

Definition at line 176 of file constants.hpp.

◆ const_sqrt_pi_by6< double >()

template<>
constexpr double mckl::const_sqrt_pi_by6< double > ( )
inlinenoexcept

Definition at line 181 of file constants.hpp.

◆ const_sqrt_pi_by6< float >()

template<>
constexpr float mckl::const_sqrt_pi_by6< float > ( )
inlinenoexcept

Definition at line 181 of file constants.hpp.

◆ const_sqrt_pi_by6< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_by6< long double > ( )
inlinenoexcept

Definition at line 181 of file constants.hpp.

◆ const_sqrt_pi_inv< double >()

template<>
constexpr double mckl::const_sqrt_pi_inv< double > ( )
inlinenoexcept

Definition at line 161 of file constants.hpp.

◆ const_sqrt_pi_inv< float >()

template<>
constexpr float mckl::const_sqrt_pi_inv< float > ( )
inlinenoexcept

Definition at line 161 of file constants.hpp.

◆ const_sqrt_pi_inv< long double >()

template<>
constexpr long double mckl::const_sqrt_pi_inv< long double > ( )
inlinenoexcept

Definition at line 161 of file constants.hpp.

◆ cos() [1/4]

void mckl::cos ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 234 of file vmf.hpp.

◆ cos() [2/4]

void mckl::cos ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 234 of file vmf.hpp.

◆ cos() [3/4]

void mckl::cos ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 235 of file vmf.hpp.

◆ cos() [4/4]

void mckl::cos ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 235 of file vmf.hpp.

◆ cosd() [1/2]

void mckl::cosd ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 269 of file vmf.hpp.

◆ cosd() [2/2]

void mckl::cosd ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 269 of file vmf.hpp.

◆ cosh() [1/4]

void mckl::cosh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 284 of file vmf.hpp.

◆ cosh() [2/4]

void mckl::cosh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 284 of file vmf.hpp.

◆ cosh() [3/4]

void mckl::cosh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 285 of file vmf.hpp.

◆ cosh() [4/4]

void mckl::cosh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 285 of file vmf.hpp.

◆ cospi() [1/2]

void mckl::cospi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 266 of file vmf.hpp.

◆ cospi() [2/2]

void mckl::cospi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 266 of file vmf.hpp.

◆ dirichlet_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::dirichlet_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
const RealType  alpha 
)
inline

Definition at line 67 of file dirichlet_distribution.hpp.

◆ dirichlet_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::dirichlet_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
const RealType *  alpha 
)
inline

Definition at line 79 of file dirichlet_distribution.hpp.

◆ div() [1/4]

void mckl::div ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 175 of file vmf.hpp.

◆ div() [2/4]

void mckl::div ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 175 of file vmf.hpp.

◆ div() [3/4]

void mckl::div ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 176 of file vmf.hpp.

◆ div() [4/4]

void mckl::div ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 176 of file vmf.hpp.

◆ erf() [1/2]

void mckl::erf ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 297 of file vmf.hpp.

◆ erf() [2/2]

void mckl::erf ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 297 of file vmf.hpp.

◆ erfc() [1/2]

void mckl::erfc ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 298 of file vmf.hpp.

◆ erfc() [2/2]

void mckl::erfc ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 298 of file vmf.hpp.

◆ erfcinv() [1/2]

void mckl::erfcinv ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 301 of file vmf.hpp.

◆ erfcinv() [2/2]

void mckl::erfcinv ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 301 of file vmf.hpp.

◆ erfinv() [1/2]

void mckl::erfinv ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 300 of file vmf.hpp.

◆ erfinv() [2/2]

void mckl::erfinv ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 300 of file vmf.hpp.

◆ exp() [1/4]

void mckl::exp ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 221 of file vmf.hpp.

◆ exp() [2/4]

void mckl::exp ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 221 of file vmf.hpp.

◆ exp() [3/4]

void mckl::exp ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 222 of file vmf.hpp.

◆ exp() [4/4]

void mckl::exp ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 222 of file vmf.hpp.

◆ exp10() [1/2]

void mckl::exp10 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 224 of file vmf.hpp.

◆ exp10() [2/2]

void mckl::exp10 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 224 of file vmf.hpp.

◆ exp2() [1/2]

void mckl::exp2 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 223 of file vmf.hpp.

◆ exp2() [2/2]

void mckl::exp2 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 223 of file vmf.hpp.

◆ expint1() [1/2]

void mckl::expint1 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 305 of file vmf.hpp.

◆ expint1() [2/2]

void mckl::expint1 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 305 of file vmf.hpp.

◆ expm1() [1/2]

void mckl::expm1 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 225 of file vmf.hpp.

◆ expm1() [2/2]

void mckl::expm1 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 225 of file vmf.hpp.

◆ exponential_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::exponential_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  lambda 
)
inline

Definition at line 60 of file exponential_distribution.hpp.

◆ exponential_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::exponential_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename ExponentialDistribution< RealType >::param_type &  param 
)
inline

Definition at line 60 of file exponential_distribution.hpp.

◆ exponential_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::exponential_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  lambda 
)
inline

Definition at line 1304 of file mkl.hpp.

◆ exponential_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::exponential_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  lambda 
)
inline

Definition at line 1312 of file mkl.hpp.

◆ extreme_value_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::extreme_value_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 62 of file extreme_value_distribution.hpp.

◆ extreme_value_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::extreme_value_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename ExtremeValueDistribution< RealType >::param_type &  param 
)
inline

Definition at line 62 of file extreme_value_distribution.hpp.

◆ extreme_value_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::extreme_value_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  a,
float  b 
)
inline

Definition at line 1320 of file mkl.hpp.

◆ extreme_value_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::extreme_value_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  a,
double  b 
)
inline

Definition at line 1329 of file mkl.hpp.

◆ fisher_f_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::fisher_f_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  m,
RealType  n 
)
inline

Definition at line 63 of file fisher_f_distribution.hpp.

◆ fisher_f_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::fisher_f_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename FisherFDistribution< RealType >::param_type &  param 
)
inline

Definition at line 63 of file fisher_f_distribution.hpp.

◆ floor() [1/2]

void mckl::floor ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 307 of file vmf.hpp.

◆ floor() [2/2]

void mckl::floor ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 307 of file vmf.hpp.

◆ fmadd()

template<typename T >
T mckl::fmadd ( a,
b,
c 
)
inline

Definition at line 647 of file vmf.hpp.

◆ fmsub()

template<typename T >
T mckl::fmsub ( a,
b,
c 
)
inline

Definition at line 653 of file vmf.hpp.

◆ fnmadd()

template<typename T >
T mckl::fnmadd ( a,
b,
c 
)
inline

Definition at line 659 of file vmf.hpp.

◆ fnmsub()

template<typename T >
T mckl::fnmsub ( a,
b,
c 
)
inline

Definition at line 665 of file vmf.hpp.

◆ gamma_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::gamma_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  alpha,
RealType  beta 
)
inline

Definition at line 278 of file gamma_distribution.hpp.

◆ gamma_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::gamma_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
const typename GammaDistribution< RealType >::param_type &  param 
)
inline

Definition at line 305 of file gamma_distribution.hpp.

◆ gamma_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::gamma_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  alpha,
float  beta 
)
inline

Definition at line 1338 of file mkl.hpp.

◆ gamma_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::gamma_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  alpha,
double  beta 
)
inline

Definition at line 1346 of file mkl.hpp.

◆ geometric_distribution() [1/3]

template<typename InType , typename RNGType >
void mckl::geometric_distribution ( RNGType &  rng,
std::size_t  N,
InType *  r,
const typename GeometricDistribution< InType >::param_type &  param 
)
inline

Definition at line 64 of file geometric_distribution.hpp.

◆ geometric_distribution() [2/3]

template<typename InType , typename RNGType >
void mckl::geometric_distribution ( RNGType &  rng,
std::size_t  N,
InType *  r,
double  p 
)
inline

Definition at line 64 of file geometric_distribution.hpp.

◆ geometric_distribution() [3/3]

template<MKL_INT BRNG, int Bits>
void mckl::geometric_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
int *  r,
double  p 
)
inline

Definition at line 1480 of file mkl.hpp.

◆ hdf5type()

template<typename T >
HDF5DataType mckl::hdf5type ( )
inline

HDF5 data type.

Definition at line 551 of file hdf5.hpp.

◆ hypot() [1/2]

void mckl::hypot ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 219 of file vmf.hpp.

◆ hypot() [2/2]

void mckl::hypot ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 219 of file vmf.hpp.

◆ inv() [1/3]

void mckl::inv ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 174 of file vmf.hpp.

◆ inv() [2/3]

void mckl::inv ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 174 of file vmf.hpp.

◆ inv() [3/3]

template<typename T >
T mckl::inv ( a)
inline

Definition at line 641 of file vmf.hpp.

◆ invcbrt() [1/3]

void mckl::invcbrt ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 181 of file vmf.hpp.

◆ invcbrt() [2/3]

void mckl::invcbrt ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 181 of file vmf.hpp.

◆ invcbrt() [3/3]

template<typename T >
T mckl::invcbrt ( a)
inline

Definition at line 731 of file vmf.hpp.

◆ invsqrt() [1/3]

void mckl::invsqrt ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 179 of file vmf.hpp.

◆ invsqrt() [2/3]

void mckl::invsqrt ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 179 of file vmf.hpp.

◆ invsqrt() [3/3]

template<typename T >
T mckl::invsqrt ( a)
inline

Definition at line 725 of file vmf.hpp.

◆ is_equal() [1/5]

bool mckl::is_equal ( const float &  v1,
const float &  v2 
)
inline

Definition at line 41 of file is_equal.hpp.

◆ is_equal() [2/5]

bool mckl::is_equal ( const double &  v1,
const double &  v2 
)
inline

Definition at line 46 of file is_equal.hpp.

◆ is_equal() [3/5]

bool mckl::is_equal ( const long double &  v1,
const long double &  v2 
)
inline

Definition at line 51 of file is_equal.hpp.

◆ is_equal() [4/5]

template<typename T , typename Alloc >
bool mckl::is_equal ( const std::vector< T, Alloc > &  v1,
const std::vector< T, Alloc > &  v2 
)
inline

Definition at line 57 of file is_equal.hpp.

◆ is_equal() [5/5]

template<typename T >
bool mckl::is_equal ( const Particle< T > &  p1,
const Particle< T > &  p2 
)
inline

Definition at line 423 of file particle.hpp.

◆ laplace_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::laplace_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 71 of file laplace_distribution.hpp.

◆ laplace_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::laplace_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename LaplaceDistribution< RealType >::param_type &  param 
)
inline

Definition at line 71 of file laplace_distribution.hpp.

◆ laplace_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::laplace_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  location,
float  scale 
)
inline

Definition at line 1354 of file mkl.hpp.

◆ laplace_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::laplace_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  location,
double  scale 
)
inline

Definition at line 1362 of file mkl.hpp.

◆ levy_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::levy_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 69 of file levy_distribution.hpp.

◆ levy_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::levy_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename LevyDistribution< RealType >::param_type &  param 
)
inline

Definition at line 69 of file levy_distribution.hpp.

◆ lgamma() [1/2]

void mckl::lgamma ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 303 of file vmf.hpp.

◆ lgamma() [2/2]

void mckl::lgamma ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 303 of file vmf.hpp.

◆ linear_frac() [1/2]

void mckl::linear_frac ( std::size_t  n,
const float *  a,
const float *  b,
float  beta_a,
float  beta_b,
float  mu_a,
float  mu_b,
float *  y 
)
inline

Definition at line 158 of file vmf.hpp.

◆ linear_frac() [2/2]

void mckl::linear_frac ( std::size_t  n,
const double *  a,
const double *  b,
double  beta_a,
double  beta_b,
double  mu_a,
double  mu_b,
double *  y 
)
inline

Definition at line 166 of file vmf.hpp.

◆ log() [1/4]

void mckl::log ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 226 of file vmf.hpp.

◆ log() [2/4]

void mckl::log ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 226 of file vmf.hpp.

◆ log() [3/4]

void mckl::log ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 227 of file vmf.hpp.

◆ log() [4/4]

void mckl::log ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 227 of file vmf.hpp.

◆ log10() [1/4]

void mckl::log10 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 229 of file vmf.hpp.

◆ log10() [2/4]

void mckl::log10 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 229 of file vmf.hpp.

◆ log10() [3/4]

void mckl::log10 ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 230 of file vmf.hpp.

◆ log10() [4/4]

void mckl::log10 ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 230 of file vmf.hpp.

◆ log1p() [1/2]

void mckl::log1p ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 231 of file vmf.hpp.

◆ log1p() [2/2]

void mckl::log1p ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 231 of file vmf.hpp.

◆ log2() [1/2]

void mckl::log2 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 228 of file vmf.hpp.

◆ log2() [2/2]

void mckl::log2 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 228 of file vmf.hpp.

◆ logb() [1/2]

void mckl::logb ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 232 of file vmf.hpp.

◆ logb() [2/2]

void mckl::logb ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 232 of file vmf.hpp.

◆ logistic_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::logistic_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 63 of file logistic_distribution.hpp.

◆ logistic_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::logistic_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename LogisticDistribution< RealType >::param_type &  param 
)
inline

Definition at line 63 of file logistic_distribution.hpp.

◆ lognormal_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::lognormal_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  m,
RealType  s 
)
inline

Definition at line 59 of file lognormal_distribution.hpp.

◆ lognormal_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::lognormal_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename LognormalDistribution< RealType >::param_type &  param 
)
inline

Definition at line 59 of file lognormal_distribution.hpp.

◆ lognormal_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::lognormal_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  m,
float  s 
)
inline

Definition at line 1370 of file mkl.hpp.

◆ lognormal_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::lognormal_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  m,
double  s 
)
inline

Definition at line 1378 of file mkl.hpp.

◆ modf() [1/2]

void mckl::modf ( std::size_t  n,
const float *  a,
float *  y,
float *  z 
)
inline

Definition at line 314 of file vmf.hpp.

◆ modf() [2/2]

void mckl::modf ( std::size_t  n,
const double *  a,
double *  y,
double *  z 
)
inline

Definition at line 320 of file vmf.hpp.

◆ mul() [1/4]

void mckl::mul ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 124 of file vmf.hpp.

◆ mul() [2/4]

void mckl::mul ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 124 of file vmf.hpp.

◆ mul() [3/4]

void mckl::mul ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 125 of file vmf.hpp.

◆ mul() [4/4]

void mckl::mul ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 125 of file vmf.hpp.

◆ muladd()

template<typename T >
T mckl::muladd ( a,
b,
c 
)
inline

Definition at line 673 of file vmf.hpp.

◆ mulbyconj() [1/3]

void mckl::mulbyconj ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 126 of file vmf.hpp.

◆ mulbyconj() [2/3]

void mckl::mulbyconj ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 126 of file vmf.hpp.

◆ mulbyconj() [3/3]

template<typename T >
T mckl::mulbyconj ( a,
b 
)
inline

Definition at line 635 of file vmf.hpp.

◆ mulsub()

template<typename T >
T mckl::mulsub ( a,
b,
c 
)
inline

Definition at line 679 of file vmf.hpp.

◆ nearbyint() [1/2]

void mckl::nearbyint ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 311 of file vmf.hpp.

◆ nearbyint() [2/2]

void mckl::nearbyint ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 311 of file vmf.hpp.

◆ nmuladd()

template<typename T >
T mckl::nmuladd ( a,
b,
c 
)
inline

Definition at line 685 of file vmf.hpp.

◆ nmulsub()

template<typename T >
T mckl::nmulsub ( a,
b,
c 
)
inline

Definition at line 691 of file vmf.hpp.

◆ normal_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::normal_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
RealType  mean,
RealType  stddev 
)
inline

Definition at line 83 of file normal_distribution.hpp.

◆ normal_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::normal_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
const typename NormalDistribution< RealType >::param_type &  param 
)
inline

Definition at line 104 of file normal_distribution.hpp.

◆ normal_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::normal_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  mean,
float  stddev 
)
inline

Definition at line 1386 of file mkl.hpp.

◆ normal_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::normal_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  mean,
double  stddev 
)
inline

Definition at line 1394 of file mkl.hpp.

◆ normal_mv_distribution() [1/6]

template<typename RealType , typename RNGType >
void mckl::normal_mv_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
RealType  mean,
RealType  chol 
)
inline

Definition at line 63 of file normal_mv_distribution.hpp.

◆ normal_mv_distribution() [2/6]

template<typename RealType , typename RNGType >
void mckl::normal_mv_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
RealType  mean,
const RealType *  chol 
)
inline

Definition at line 73 of file normal_mv_distribution.hpp.

◆ normal_mv_distribution() [3/6]

template<typename RealType , typename RNGType >
void mckl::normal_mv_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
const RealType *  mean,
RealType  chol 
)
inline

Definition at line 98 of file normal_mv_distribution.hpp.

◆ normal_mv_distribution() [4/6]

template<typename RealType , typename RNGType >
void mckl::normal_mv_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r,
std::size_t  dim,
const RealType *  mean,
const RealType *  chol 
)
inline

Definition at line 111 of file normal_mv_distribution.hpp.

◆ normal_mv_distribution() [5/6]

template<MKL_INT BRNG, int Bits>
void mckl::normal_mv_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
std::size_t  m,
const float *  mean,
const float *  chol 
)
inline

Definition at line 1402 of file mkl.hpp.

◆ normal_mv_distribution() [6/6]

template<MKL_INT BRNG, int Bits>
void mckl::normal_mv_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
std::size_t  m,
const double *  mean,
const double *  chol 
)
inline

Definition at line 1412 of file mkl.hpp.

◆ operator<<() [1/4]

template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_ostream<CharT, Traits>& mckl::operator<< ( std::basic_ostream< CharT, Traits > &  os,
const std::vector< T, Alloc > &  vec 
)
inline

Definition at line 201 of file iostream.hpp.

◆ operator<<() [2/4]

template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_ostream<CharT, Traits>& mckl::operator<< ( std::basic_ostream< CharT, Traits > &  os,
const std::list< T, Alloc > &  lst 
)
inline

Definition at line 215 of file iostream.hpp.

◆ operator<<() [3/4]

template<typename CharT , typename Traits , typename T , std::size_t N>
std::basic_ostream<CharT, Traits>& mckl::operator<< ( std::basic_ostream< CharT, Traits > &  os,
const std::array< T, N > &  ary 
)
inline

Definition at line 187 of file iostream.hpp.

◆ operator<<() [4/4]

template<typename CharT , typename Traits , typename T , MatrixLayout Layout, typename Alloc >
std::basic_ostream<CharT, Traits>& mckl::operator<< ( std::basic_ostream< CharT, Traits > &  os,
const Matrix< T, Layout, Alloc > &  mat 
)
inline

Output operator.

Definition at line 745 of file matrix.hpp.

◆ operator>>() [1/4]

template<typename CharT , typename Traits , typename T , std::size_t N>
std::basic_istream<CharT, Traits>& mckl::operator>> ( std::basic_istream< CharT, Traits > &  is,
std::array< T, N > &  ary 
)
inline

Definition at line 194 of file iostream.hpp.

◆ operator>>() [2/4]

template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_istream<CharT, Traits>& mckl::operator>> ( std::basic_istream< CharT, Traits > &  is,
std::vector< T, Alloc > &  vec 
)
inline

Definition at line 208 of file iostream.hpp.

◆ operator>>() [3/4]

template<typename CharT , typename Traits , typename T , typename Alloc >
std::basic_istream<CharT, Traits>& mckl::operator>> ( std::basic_istream< CharT, Traits > &  is,
std::list< T, Alloc > &  lst 
)
inline

Definition at line 222 of file iostream.hpp.

◆ operator>>() [4/4]

template<typename CharT , typename Traits , typename T , MatrixLayout Layout, typename Alloc >
std::basic_istream<CharT, Traits>& mckl::operator>> ( std::basic_istream< CharT, Traits > &  is,
Matrix< T, Layout, Alloc > &  mat 
)
inline

Input operator.

Definition at line 769 of file matrix.hpp.

◆ pareto_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::pareto_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename ParetoDistribution< RealType >::param_type &  param 
)
inline

Definition at line 60 of file pareto_distribution.hpp.

◆ pareto_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::pareto_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 60 of file pareto_distribution.hpp.

◆ pow() [1/8]

void mckl::pow ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 184 of file vmf.hpp.

◆ pow() [2/8]

void mckl::pow ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 184 of file vmf.hpp.

◆ pow() [3/8]

void mckl::pow ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 185 of file vmf.hpp.

◆ pow() [4/8]

void mckl::pow ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 185 of file vmf.hpp.

◆ pow() [5/8]

void mckl::pow ( std::size_t  n,
const float *  a,
float  b,
float *  y 
)
inline

Definition at line 187 of file vmf.hpp.

◆ pow() [6/8]

void mckl::pow ( std::size_t  n,
const double *  a,
double  b,
double *  y 
)
inline

Definition at line 193 of file vmf.hpp.

◆ pow() [7/8]

void mckl::pow ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float >  b,
std::complex< float > *  y 
)
inline

Definition at line 199 of file vmf.hpp.

◆ pow() [8/8]

void mckl::pow ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double >  b,
std::complex< double > *  y 
)
inline

Definition at line 209 of file vmf.hpp.

◆ pow2o3() [1/3]

void mckl::pow2o3 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 182 of file vmf.hpp.

◆ pow2o3() [2/3]

void mckl::pow2o3 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 182 of file vmf.hpp.

◆ pow2o3() [3/3]

template<typename T >
T mckl::pow2o3 ( a)
inline

Definition at line 737 of file vmf.hpp.

◆ pow3o2() [1/3]

void mckl::pow3o2 ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 183 of file vmf.hpp.

◆ pow3o2() [2/3]

void mckl::pow3o2 ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 183 of file vmf.hpp.

◆ pow3o2() [3/3]

template<typename T >
T mckl::pow3o2 ( a)
inline

Definition at line 745 of file vmf.hpp.

◆ rand() [1/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
LognormalDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 87 of file lognormal_distribution.hpp.

◆ rand() [2/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
ParetoDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 89 of file pareto_distribution.hpp.

◆ rand() [3/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
ExponentialDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 89 of file exponential_distribution.hpp.

◆ rand() [4/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
RayleighDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 90 of file rayleigh_distribution.hpp.

◆ rand() [5/34]

template<typename IntType , typename RNGType >
void mckl::rand ( RNGType &  rng,
BernoulliDistribution< IntType > &  distribution,
std::size_t  N,
IntType *  r 
)
inline

Definition at line 93 of file bernoulli_distribution.hpp.

◆ rand() [6/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
ArcsineDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 93 of file arcsine_distribution.hpp.

◆ rand() [7/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
ExtremeValueDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 94 of file extreme_value_distribution.hpp.

◆ rand() [8/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
ChiSquaredDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 96 of file chi_squared_distribution.hpp.

◆ rand() [9/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
LogisticDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 96 of file logistic_distribution.hpp.

◆ rand() [10/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
UniformRealDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 96 of file uniform_real_distribution.hpp.

◆ rand() [11/34]

template<typename IntType , typename RNGType >
void mckl::rand ( RNGType &  rng,
GeometricDistribution< IntType > &  distribution,
std::size_t  N,
IntType *  r 
)
inline

Definition at line 97 of file geometric_distribution.hpp.

◆ rand() [12/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
CauchyDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 97 of file cauchy_distribution.hpp.

◆ rand() [13/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
FisherFDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 103 of file fisher_f_distribution.hpp.

◆ rand() [14/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
LaplaceDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 105 of file laplace_distribution.hpp.

◆ rand() [15/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
LevyDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 106 of file levy_distribution.hpp.

◆ rand() [16/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
WeibullDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 106 of file weibull_distribution.hpp.

◆ rand() [17/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
StudentTDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 124 of file student_t_distribution.hpp.

◆ rand() [18/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
NormalDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 157 of file normal_distribution.hpp.

◆ rand() [19/34]

template<typename IntType , typename RNGType >
void mckl::rand ( RNGType &  rng,
UniformIntDistribution< IntType > &  distribution,
std::size_t  N,
IntType *  r 
)
inline

Definition at line 202 of file uniform_int_distribution.hpp.

◆ rand() [20/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
U01CanonicalDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 207 of file u01_distribution.hpp.

◆ rand() [21/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
U01CCDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 208 of file u01_distribution.hpp.

◆ rand() [22/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
U01CODistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 209 of file u01_distribution.hpp.

◆ rand() [23/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
U01OCDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 210 of file u01_distribution.hpp.

◆ rand() [24/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
U01OODistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 211 of file u01_distribution.hpp.

◆ rand() [25/34]

template<typename UIntType , typename RNGType >
void mckl::rand ( RNGType &  rng,
UniformBitsDistribution< UIntType > &  distribution,
std::size_t  N,
UIntType *  r 
)
inline

Definition at line 231 of file uniform_bits_distribution.hpp.

◆ rand() [26/34]

template<typename ResultType , typename Generator >
void mckl::rand ( CounterEngine< ResultType, Generator > &  rng,
std::size_t  n,
ResultType *  r 
)
inline

Definition at line 299 of file counter.hpp.

◆ rand() [27/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
StableDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 315 of file stable_distribution.hpp.

◆ rand() [28/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
DirichletDistribution< RealType > &  distribution,
RealType *  r 
)
inline

Definition at line 361 of file dirichlet_distribution.hpp.

◆ rand() [29/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
DirichletDistribution< RealType > &  distribution,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 368 of file dirichlet_distribution.hpp.

◆ rand() [30/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
GammaDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 462 of file gamma_distribution.hpp.

◆ rand() [31/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
NormalMVDistribution< RealType > &  distribution,
RealType *  r 
)
inline

Definition at line 506 of file normal_mv_distribution.hpp.

◆ rand() [32/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
NormalMVDistribution< RealType > &  distribution,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 513 of file normal_mv_distribution.hpp.

◆ rand() [33/34]

template<typename RealType , typename RNGType >
void mckl::rand ( RNGType &  rng,
BetaDistribution< RealType > &  distribution,
std::size_t  N,
RealType *  r 
)
inline

Definition at line 651 of file beta_distribution.hpp.

◆ rand() [34/34]

template<MKL_INT BRNG, int Bits>
void mckl::rand ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
typename MKLEngine< BRNG, Bits >::result_type *  r 
)
inline

Definition at line 1100 of file mkl.hpp.

◆ rayleigh_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::rayleigh_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename RayleighDistribution< RealType >::param_type &  param 
)
inline

Definition at line 61 of file rayleigh_distribution.hpp.

◆ rayleigh_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::rayleigh_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  sigma 
)
inline

Definition at line 61 of file rayleigh_distribution.hpp.

◆ rayleigh_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::rayleigh_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  sigma 
)
inline

Definition at line 1422 of file mkl.hpp.

◆ rayleigh_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::rayleigh_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  sigma 
)
inline

Definition at line 1431 of file mkl.hpp.

◆ rint() [1/2]

void mckl::rint ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 312 of file vmf.hpp.

◆ rint() [2/2]

void mckl::rint ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 312 of file vmf.hpp.

◆ round() [1/2]

void mckl::round ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 310 of file vmf.hpp.

◆ round() [2/2]

void mckl::round ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 310 of file vmf.hpp.

◆ runtime_assert() [1/4]

void mckl::runtime_assert ( bool  cond,
const char *  msg,
bool  soft = false 
)
inline

Definition at line 65 of file assert.hpp.

◆ runtime_assert() [2/4]

void mckl::runtime_assert ( bool  cond,
const std::string &  msg,
bool  soft = false 
)
inline

Definition at line 78 of file assert.hpp.

◆ runtime_assert() [3/4]

template<typename Except >
void mckl::runtime_assert ( bool  cond,
const char *  msg 
)
inline

Definition at line 87 of file assert.hpp.

◆ runtime_assert() [4/4]

template<typename Except >
void mckl::runtime_assert ( bool  cond,
const std::string &  msg 
)
inline

Definition at line 95 of file assert.hpp.

◆ sin() [1/4]

void mckl::sin ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 236 of file vmf.hpp.

◆ sin() [2/4]

void mckl::sin ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 236 of file vmf.hpp.

◆ sin() [3/4]

void mckl::sin ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 237 of file vmf.hpp.

◆ sin() [4/4]

void mckl::sin ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 237 of file vmf.hpp.

◆ sincos() [1/2]

void mckl::sincos ( std::size_t  n,
const float *  a,
float *  y,
float *  z 
)
inline

Definition at line 241 of file vmf.hpp.

◆ sincos() [2/2]

void mckl::sincos ( std::size_t  n,
const double *  a,
double *  y,
double *  z 
)
inline

Definition at line 247 of file vmf.hpp.

◆ sind() [1/2]

void mckl::sind ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 270 of file vmf.hpp.

◆ sind() [2/2]

void mckl::sind ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 270 of file vmf.hpp.

◆ sinh() [1/4]

void mckl::sinh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 286 of file vmf.hpp.

◆ sinh() [2/4]

void mckl::sinh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 286 of file vmf.hpp.

◆ sinh() [3/4]

void mckl::sinh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 287 of file vmf.hpp.

◆ sinh() [4/4]

void mckl::sinh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 287 of file vmf.hpp.

◆ sinpi() [1/2]

void mckl::sinpi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 267 of file vmf.hpp.

◆ sinpi() [2/2]

void mckl::sinpi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 267 of file vmf.hpp.

◆ sqr() [1/2]

void mckl::sqr ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 123 of file vmf.hpp.

◆ sqr() [2/2]

void mckl::sqr ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 123 of file vmf.hpp.

◆ sqrt() [1/4]

void mckl::sqrt ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 177 of file vmf.hpp.

◆ sqrt() [2/4]

void mckl::sqrt ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 177 of file vmf.hpp.

◆ sqrt() [3/4]

void mckl::sqrt ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 178 of file vmf.hpp.

◆ sqrt() [4/4]

void mckl::sqrt ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 178 of file vmf.hpp.

◆ stable_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::stable_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  alpha,
RealType  beta,
RealType  a,
RealType  b 
)
inline

Definition at line 206 of file stable_distribution.hpp.

◆ stable_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::stable_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename StableDistribution< RealType >::param_type &  param 
)
inline

Definition at line 206 of file stable_distribution.hpp.

◆ student_t_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::student_t_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename StudentTDistribution< RealType >::param_type &  param 
)
inline

Definition at line 72 of file student_t_distribution.hpp.

◆ student_t_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::student_t_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  n 
)
inline

Definition at line 72 of file student_t_distribution.hpp.

◆ sub() [1/4]

void mckl::sub ( std::size_t  n,
const float *  a,
const float *  b,
float *  y 
)
inline

Definition at line 121 of file vmf.hpp.

◆ sub() [2/4]

void mckl::sub ( std::size_t  n,
const double *  a,
const double *  b,
double *  y 
)
inline

Definition at line 121 of file vmf.hpp.

◆ sub() [3/4]

void mckl::sub ( std::size_t  n,
const std::complex< float > *  a,
const std::complex< float > *  b,
std::complex< float > *  y 
)
inline

Definition at line 122 of file vmf.hpp.

◆ sub() [4/4]

void mckl::sub ( std::size_t  n,
const std::complex< double > *  a,
const std::complex< double > *  b,
std::complex< double > *  y 
)
inline

Definition at line 122 of file vmf.hpp.

◆ tan() [1/4]

void mckl::tan ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 238 of file vmf.hpp.

◆ tan() [2/4]

void mckl::tan ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 238 of file vmf.hpp.

◆ tan() [3/4]

void mckl::tan ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 239 of file vmf.hpp.

◆ tan() [4/4]

void mckl::tan ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 239 of file vmf.hpp.

◆ tand() [1/2]

void mckl::tand ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 271 of file vmf.hpp.

◆ tand() [2/2]

void mckl::tand ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 271 of file vmf.hpp.

◆ tanh() [1/4]

void mckl::tanh ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 288 of file vmf.hpp.

◆ tanh() [2/4]

void mckl::tanh ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 288 of file vmf.hpp.

◆ tanh() [3/4]

void mckl::tanh ( std::size_t  n,
const std::complex< float > *  a,
std::complex< float > *  y 
)
inline

Definition at line 289 of file vmf.hpp.

◆ tanh() [4/4]

void mckl::tanh ( std::size_t  n,
const std::complex< double > *  a,
std::complex< double > *  y 
)
inline

Definition at line 289 of file vmf.hpp.

◆ tanpi() [1/2]

void mckl::tanpi ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 268 of file vmf.hpp.

◆ tanpi() [2/2]

void mckl::tanpi ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 268 of file vmf.hpp.

◆ tgamma() [1/2]

void mckl::tgamma ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 304 of file vmf.hpp.

◆ tgamma() [2/2]

void mckl::tgamma ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 304 of file vmf.hpp.

◆ trunc() [1/2]

void mckl::trunc ( std::size_t  n,
const double *  a,
double *  y 
)
inline

Definition at line 309 of file vmf.hpp.

◆ trunc() [2/2]

void mckl::trunc ( std::size_t  n,
const float *  a,
float *  y 
)
inline

Definition at line 309 of file vmf.hpp.

◆ u01_canonical_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::u01_canonical_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename U01CanonicalDistribution< RealType >::param_type &   
)
inline

Definition at line 138 of file u01_distribution.hpp.

◆ u01_canonical_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::u01_canonical_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 138 of file u01_distribution.hpp.

◆ u01_cc_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::u01_cc_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename U01CCDistribution< RealType >::param_type &   
)
inline

Definition at line 139 of file u01_distribution.hpp.

◆ u01_cc_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::u01_cc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 139 of file u01_distribution.hpp.

◆ u01_co_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::u01_co_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename U01CODistribution< RealType >::param_type &   
)
inline

Definition at line 140 of file u01_distribution.hpp.

◆ u01_co_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::u01_co_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 140 of file u01_distribution.hpp.

◆ u01_distribution()

template<typename RealType , typename RNGType >
void mckl::u01_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 230 of file u01_distribution.hpp.

◆ u01_oc_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::u01_oc_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename U01OCDistribution< RealType >::param_type &   
)
inline

Definition at line 141 of file u01_distribution.hpp.

◆ u01_oc_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::u01_oc_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 141 of file u01_distribution.hpp.

◆ u01_oo_distribution() [1/2]

template<typename RealType , typename RNGType >
void mckl::u01_oo_distribution ( RNGType &  rng,
std::size_t  n,
RealType *  r 
)
inline

Definition at line 142 of file u01_distribution.hpp.

◆ u01_oo_distribution() [2/2]

template<typename RealType , typename RNGType >
void mckl::u01_oo_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename U01OODistribution< RealType >::param_type &   
)
inline

Definition at line 142 of file u01_distribution.hpp.

◆ uniform_bits_distribution() [1/2]

template<typename UIntType , typename RNGType >
void mckl::uniform_bits_distribution ( RNGType &  rng,
std::size_t  n,
UIntType *  r 
)
inline

Definition at line 81 of file uniform_bits_distribution.hpp.

◆ uniform_bits_distribution() [2/2]

template<typename UIntType , typename RNGType >
void mckl::uniform_bits_distribution ( RNGType &  rng,
std::size_t  n,
UIntType *  r,
const typename UniformBitsDistribution< UIntType >::param_type &   
)
inline

Definition at line 110 of file uniform_bits_distribution.hpp.

◆ uniform_int_distribution() [1/3]

template<typename IntType , typename RNGType >
void mckl::uniform_int_distribution ( RNGType &  rng,
std::size_t  N,
IntType *  r,
const typename UniformIntDistribution< IntType >::param_type &  param 
)
inline

Definition at line 130 of file uniform_int_distribution.hpp.

◆ uniform_int_distribution() [2/3]

template<typename IntType , typename RNGType >
void mckl::uniform_int_distribution ( RNGType &  rng,
std::size_t  N,
IntType *  r,
IntType  a,
IntType  b 
)
inline

Definition at line 130 of file uniform_int_distribution.hpp.

◆ uniform_int_distribution() [3/3]

template<MKL_INT BRNG, int Bits>
void mckl::uniform_int_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
int *  r,
int  a,
int  b 
)
inline

Definition at line 1488 of file mkl.hpp.

◆ uniform_real_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::uniform_real_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 63 of file uniform_real_distribution.hpp.

◆ uniform_real_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::uniform_real_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename UniformRealDistribution< RealType >::param_type &  param 
)
inline

Definition at line 63 of file uniform_real_distribution.hpp.

◆ uniform_real_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::uniform_real_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  a,
float  b 
)
inline

Definition at line 1440 of file mkl.hpp.

◆ uniform_real_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::uniform_real_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  a,
double  b 
)
inline

Definition at line 1448 of file mkl.hpp.

◆ weibull_distribution() [1/4]

template<typename RealType , typename RNGType >
void mckl::weibull_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
RealType  a,
RealType  b 
)
inline

Definition at line 71 of file weibull_distribution.hpp.

◆ weibull_distribution() [2/4]

template<typename RealType , typename RNGType >
void mckl::weibull_distribution ( RNGType &  rng,
std::size_t  N,
RealType *  r,
const typename WeibullDistribution< RealType >::param_type &  param 
)
inline

Definition at line 71 of file weibull_distribution.hpp.

◆ weibull_distribution() [3/4]

template<MKL_INT BRNG, int Bits>
void mckl::weibull_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
float *  r,
float  a,
float  b 
)
inline

Definition at line 1456 of file mkl.hpp.

◆ weibull_distribution() [4/4]

template<MKL_INT BRNG, int Bits>
void mckl::weibull_distribution ( MKLEngine< BRNG, Bits > &  rng,
std::size_t  n,
double *  r,
double  a,
double  b 
)
inline

Definition at line 1464 of file mkl.hpp.

Variable Documentation

◆ ColMajor

constexpr MatrixLayout mckl::ColMajor = MatrixLayout::ColMajor

Definition at line 48 of file defines.hpp.

◆ Multinomial

constexpr ResampleScheme mckl::Multinomial = ResampleScheme::Multinomial

Definition at line 52 of file resample.hpp.

◆ Residual

constexpr ResampleScheme mckl::Residual = ResampleScheme::Residual

Definition at line 55 of file resample.hpp.

◆ ResidualStratified

constexpr ResampleScheme mckl::ResidualStratified
Initial value:
=
constexpr ResampleScheme ResidualStratified
Definition: resample.hpp:56

Definition at line 56 of file resample.hpp.

◆ ResidualSystematic

constexpr ResampleScheme mckl::ResidualSystematic
Initial value:
=
constexpr ResampleScheme ResidualSystematic
Definition: resample.hpp:58

Definition at line 58 of file resample.hpp.

◆ RowMajor

constexpr MatrixLayout mckl::RowMajor = MatrixLayout::RowMajor

Definition at line 47 of file defines.hpp.

◆ Stratified

constexpr ResampleScheme mckl::Stratified = ResampleScheme::Stratified

Definition at line 53 of file resample.hpp.

◆ Systematic

constexpr ResampleScheme mckl::Systematic = ResampleScheme::Systematic

Definition at line 54 of file resample.hpp.