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

Safe HaskellNone
LanguageHaskell98

Algebra.NormedSpace.Euclidean

Contents

Description

Abstraction of normed vector spaces

Synopsis

Documentation

class (C a, C a v) => Sqr a v where Source #

Helper class for C that does not need an algebraic type a.

Minimal definition: normSqr

Methods

normSqr :: v -> a Source #

Square of the Euclidean norm of a vector. This is sometimes easier to implement.

Instances
Sqr Double Double Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Sqr Float Float Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: Float -> Float Source #

Sqr Int Int Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: Int -> Int Source #

Sqr Integer Integer Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

(Sqr a v, RealFloat v) => Sqr a (Complex v) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: Complex v -> a Source #

Sqr a v => Sqr a [v] Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: [v] -> a Source #

Sqr a b => Sqr a (T b) Source # 
Instance details

Defined in Number.Complex

Methods

normSqr :: T b -> a Source #

Sqr a b => Sqr a (T b) Source # 
Instance details

Defined in Number.Quaternion

Methods

normSqr :: T b -> a Source #

(Sqr a v0, Sqr a v1) => Sqr a (v0, v1) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: (v0, v1) -> a Source #

(Ord i, Eq a, Eq v, Sqr a v) => Sqr a (Map i v) Source # 
Instance details

Defined in MathObj.DiscreteMap

Methods

normSqr :: Map i v -> a Source #

(Sqr a v0, Sqr a v1, Sqr a v2) => Sqr a (v0, v1, v2) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: (v0, v1, v2) -> a Source #

(C a, C a) => Sqr (T a) (T a) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

normSqr :: T a -> T a Source #

Sqr a v => Sqr (T a) (T v) Source # 
Instance details

Defined in MathObj.Wrapper.NumericPrelude

Methods

normSqr :: T v -> T a Source #

normSqrFoldable :: (Sqr a v, Foldable f) => f v -> a Source #

Default definition for normSqr that is based on Foldable class.

normSqrFoldable1 :: (Sqr a v, Foldable f, Functor f) => f v -> a Source #

Default definition for normSqr that is based on Foldable class and the argument vector has at least one component.

class Sqr a v => C a v where Source #

A vector space equipped with an Euclidean or a Hilbert norm.

Minimal definition: norm

Methods

norm :: v -> a Source #

Euclidean norm of a vector.

Instances
C Double Double Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: Double -> Double Source #

C Float Float Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: Float -> Float Source #

C Int Int Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: Int -> Int Source #

C Integer Integer Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: Integer -> Integer Source #

(C a, Sqr a v, RealFloat v) => C a (Complex v) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: Complex v -> a Source #

(C a, Sqr a v) => C a [v] Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: [v] -> a Source #

(C a, Sqr a b) => C a (T b) Source # 
Instance details

Defined in Number.Complex

Methods

norm :: T b -> a Source #

(C a, Sqr a b) => C a (T b) Source # 
Instance details

Defined in Number.Quaternion

Methods

norm :: T b -> a Source #

(C a, Sqr a v0, Sqr a v1) => C a (v0, v1) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: (v0, v1) -> a Source #

(Ord i, Eq a, Eq v, C a, Sqr a v) => C a (Map i v) Source # 
Instance details

Defined in MathObj.DiscreteMap

Methods

norm :: Map i v -> a Source #

(C a, Sqr a v0, Sqr a v1, Sqr a v2) => C a (v0, v1, v2) Source # 
Instance details

Defined in Algebra.NormedSpace.Euclidean

Methods

norm :: (v0, v1, v2) -> a Source #

C a v => C (T a) (T v) Source # 
Instance details

Defined in MathObj.Wrapper.NumericPrelude

Methods

norm :: T v -> T a Source #

defltNorm :: (C a, Sqr a v) => v -> a Source #

Instances for atomic types

Instances for composed types