numeric-prelude-0.4.0.3: An experimental alternative hierarchy of numeric type classes

Safe HaskellNone

MathObj.RefinementMask2

Synopsis

Documentation

data T a Source

Instances

Functor T 
Show a => Show (T a) 
(Arbitrary a, C a) => Arbitrary (T a) 

coeffs :: T a -> [a]Source

fromCoeffs :: [a] -> T aSource

fromPolynomial :: C a => T a -> T aSource

Determine mask by Gauss elimination.

R - alternating binomial coefficients L - differences of translated polynomials in columns

p2 = L * R^(-1) * m

R * L^(-1) * p2 = m

toPolynomial :: C a => T a -> Maybe (T a)Source

If the mask does not sum up to a power of 1/2 then the function returns Nothing.

toPolynomialFast :: C a => T a -> Maybe (T a)Source

refinePolynomial :: C a => T a -> T a -> T aSource

convolvePolynomial :: C a => T a -> T a -> T aSource

Convolve polynomials via refinement mask.

(mask x + ux*(-1,1)^degree x) * (mask y + uy*(-1,1)^degree y)