importPour l'utiliser : import Data.Complex
Data.Complex — nombres complexes, paramétrés par le type des composantes
Synopsis
data Complex a = MkComplex a a
Un nombre complexe r :+ im sur un type de composantes a. Paramétré pour que Complex Double donne les nombres complexes flottants habituels et que Complex Rational en donne d'EXACTS (les rationnels de Gauss) — ces derniers satisfont exactement les lois d'anneau/de corps (sans erreur flottante). Complex a hérite de la tour numérique de a : c'est un DivisionRing quand a en est un, et un Field quand a est un Field.
complex : a -> a -> Complex a
realPart : Complex a -> a
imagPart : Complex a -> a
imagUnit : FromNat a => Additive a => Multiplicative a => Complex a
L'unité imaginaire 0 :+ 1 (nécessite un 0 et un 1 du type des composantes).
conjugate : AdditiveGroup a => Complex a -> Complex a
Le conjugué complexe r :+ (-im).
magnitudeSquared : Semiring a => Complex a -> a
Le module au carré r² + im² (une valeur du type des composantes ; évite sqrt, donc valable pour toute composante d'anneau, y compris le Rational exact).
magnitude : Complex Double -> Double
Le module √(r² + im²), pour des composantes flottantes seulement (sqrt est Double).