Safe Haskell | None |
---|---|
Language | Haskell98 |
Synopsis
- parameterCausalA :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T (T a, T a) (ParameterValue n a)
- parameterCausalB :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T (T a, T a) (ParameterValue n a)
- parameterA :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T a -> T a -> CodeGenFunction r (ParameterValue n a)
- parameterB :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T a -> T a -> CodeGenFunction r (ParameterValue n a)
- data ParameterValue n a
- causal :: (PseudoModule v, C v, Scalar v ~ T a, C a, IntegerConstant a, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v
- causalPacked :: (C a, PseudoRing a, IntegerConstant a, Write v, Element v ~ T a, C v, PseudoRing v, IntegerConstant v, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v
- fixSize :: Proxy n -> process (ParameterValue n a, x) y -> process (ParameterValue n a, x) y
Documentation
parameterCausalA :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T (T a, T a) (ParameterValue n a) Source #
n
must be at least one in order to allow amplification
by the first partial filter.
The causal processes should be more efficient
than parameterA
and parameterB
because they use stack-based alloca
instead of malloc
.
parameterCausalB :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T (T a, T a) (ParameterValue n a) Source #
n
must be at least one in order to allow amplification
by the first partial filter.
The causal processes should be more efficient
than parameterA
and parameterB
because they use stack-based alloca
instead of malloc
.
parameterA :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T a -> T a -> CodeGenFunction r (ParameterValue n a) Source #
parameterB :: (Natural n, C a, C a, RationalConstant a, Transcendental a) => (Positive (n :*: SizeOf (Struct a)), Positive (n :*: UnknownSize)) => Proxy n -> Passband -> T a -> T a -> CodeGenFunction r (ParameterValue n a) Source #
data ParameterValue n a Source #
Instances
causal :: (PseudoModule v, C v, Scalar v ~ T a, C a, IntegerConstant a, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v Source #
causalPacked :: (C a, PseudoRing a, IntegerConstant a, Write v, Element v ~ T a, C v, PseudoRing v, IntegerConstant v, Natural n, Positive (n :*: UnknownSize)) => T (ParameterValue n a, v) v Source #
fixSize :: Proxy n -> process (ParameterValue n a, x) y -> process (ParameterValue n a, x) y Source #