Laguerre polynomials
Loading...
Searching...
No Matches
ExtendedFunctions.h File Reference
#include <cmath>
#include <numbers>
#include <vector>
#include <complex>
#include <iostream>
#include <algorithm>
#include <iomanip>

Go to the source code of this file.

Namespaces

namespace  Laguerre
 

Functions

template<typename ... T>
bool Laguerre::anynotfinite (T &&... t)
 Check if at least one number is not finite.
 
template<typename T >
bool Laguerre::complexnotfinite (complex< T > a, T big)
 Check if a complex number contains NaN or Inf values.
 
template<typename ... T>
bool Laguerre::anycomplex (T &&... t)
 Check if at least one complex number has imaginary part.
 
template<typename T >
bool Laguerre::anycomplex (vector< complex< T > > vec)
 Check if at least one number in complex vector has imaginary part.
 
template<typename number >
int Laguerre::sign (number val)
 Sign.
 
template<typename number >
number Laguerre::fms (number a, number b, number c, number d)
 Fused multiply-substract a*b+(-d*c)+d*c+(-d*c)
 
template<typename number >
complex< numberLaguerre::fms (std::complex< number > a, std::complex< number > b, std::complex< number > c, std::complex< number > d)
 Fused multiply-substract for complex numbers.
 
template<typename number >
complex< numberLaguerre::fma (complex< number > a, complex< number > b, complex< number > c)
 Fused multiply-add for complex numbers.
 
template<typename number >
complex< numberLaguerre::fma (std::complex< number > a, std::complex< number > b, number c)
 Fused multiply-substract for complex&real numbers.
 
template<typename number >
complex< numberLaguerre::fma (complex< number > a, number b, complex< number > c)
 Fused multiply-substract for complex&real numbers.
 
template<typename number >
complex< numberLaguerre::fma (number a, number b, complex< number > c)
 Fused multiply-substract for complex&real numbers.
 
template<typename number >
complex< numberLaguerre::fma (complex< number > a, number b, number c)
 Fused multiply-substract for complex&real numbers.
 
template<typename number >
void Laguerre::printVec (vector< number > vec)
 Print out vector.
 
template<typename number , typename T >
vector< numberLaguerre::castVec (vector< T > vec)
 Convert vector<T> to vector<number>
 
template<typename T >
vector< T > Laguerre::diff (vector< T > coeffs, int deg=1)
 Diff vector.
 
template<typename T >
void Laguerre::divide (vector< T > dividend, vector< T > divisor, vector< T > &quotient, vector< T > &remainder)
 Divide vectors (coefficients of polynomials)
 
template<typename T >
void Laguerre::getRemainder (vector< T > dividend, vector< T > divisor, vector< T > &remainder)
 Divide vectors (coefficients of polynomials)