Spec-Zone.ru › Haskell 8

Data.Complex

Авторские права (c) Университет Глазго 2001
Лицензия BSD-стиль (см. файл libraries/base/LICENSE)
Поддержка libraries@haskell.org
Стабильность предварительная
Переносимость переносимая
Безопасный Haskell Надежный
Язык Haskell2010

Содержание

  • Прямоугольная форма
  • Полярная форма
  • Сопряженное число

Описание

Комплексные числа.

Прямоугольная форма

data Complex a Исходный код

Комплексные числа являются алгебраическим типом.

Для комплексного числа z, abs z является числом с модулем z, но ориентированным в положительном направлении действительной оси, тогда как signum z имеет фазу z, но единичный модуль.

Инстансы Foldable и Traversable проходят через действительную часть в первую очередь.

Обратите внимание, что инстансы Complex наследуют недостатки от параметра типа. Например, инстанс Complex Float Ord имеет аналогичные проблемы, как и у Float.

Конструкторы

!a :+ !a infix 6

формирует комплексное число из его действительной и мнимой прямоугольных составляющих.

Экземпляры
Подробности об экземплярах
Monad Complex

Since: base-4.9.0.0

Подробности об экземпляре

Определено в Data.Complex

Методы

(>>=) :: Complex a -> (a -> Complex b) -> Complex b Source

(>>) :: Complex a -> Complex b -> Complex b Source

return :: a -> Complex a Source

Functor Complex

Since: base-4.9.0.0

Подробности об экземпляре

Определено в Data.Complex

Методы

fmap :: (a -> b) -> Complex a -> Complex b Source

(<$) :: a -> Complex b -> Complex a Source

Applicative Complex

Since: base-4.9.0.0

Подробности об экземпляре

Определено в Data.Complex

Методы

pure :: a -> Complex a Source

(<*>) :: Complex (a -> b) -> Complex a -> Complex b Source

liftA2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c Source

(*>) :: Complex a -> Complex b -> Complex b Source

(<*) :: Complex a -> Complex b -> Complex a Source

Foldable Complex

Since: base-4.9.0.0

Подробности об экземпляре

Определено в Data.Complex

Методы

fold :: Monoid m => Complex m -> m Source

foldMap :: Monoid m => (a -> m) -> Complex a -> m Source

foldMap' :: Monoid m => (a -> m) -> Complex a -> m Source

foldr :: (a -> b -> b) -> b -> Complex a -> b Source

foldr' :: (a -> b -> b) -> b -> Complex a -> b Source

foldl :: (b -> a -> b) -> b -> Complex a -> b Source

foldl' :: (b -> a -> b) -> b -> Complex a -> b Source

foldr1 :: (a -> a -> a) -> Complex a -> a Source

foldl1 :: (a -> a -> a) -> Complex a -> a Source

toList :: Complex a -> [a] Source

null :: Complex a -> Bool Source

length :: Complex a -> Int Source

elem :: Eq a => a -> Complex a -> Bool Source

maximum :: Ord a => Complex a -> a Source

minimum :: Ord a => Complex a -> a Source

sum :: Num a => Complex a -> a Source

product :: Num a => Complex a -> a Source

Traversable Complex

Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Методы

traverse :: Applicative f => (a -> f b) -> Complex a -> f (Complex b) Source

sequenceA :: Applicative f => Complex (f a) -> f (Complex a) Source

mapM :: Monad m => (a -> m b) -> Complex a -> m (Complex b) Source

sequence :: Monad m => Complex (m a) -> m (Complex a) Source

Eq a => Eq (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Методы

(==) :: Complex a -> Complex a -> Bool Source

(/=) :: Complex a -> Complex a -> Bool Source

RealFloat a => Floating (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Методы

pi :: Complex a Source

exp :: Complex a -> Complex a Source

log :: Complex a -> Complex a Source

sqrt :: Complex a -> Complex a Source

(**) :: Complex a -> Complex a -> Complex a Source

logBase :: Complex a -> Complex a -> Complex a Source

sin :: Complex a -> Complex a Source

cos :: Complex a -> Complex a Source

tan :: Complex a -> Complex a Source

asin :: Complex a -> Complex a Source

acos :: Complex a -> Complex a Source

atan :: Complex a -> Complex a Source

sinh :: Complex a -> Complex a Source

cosh :: Complex a -> Complex a Source

tanh :: Complex a -> Complex a Source

asinh :: Complex a -> Complex a Source

acosh :: Complex a -> Complex a Source

atanh :: Complex a -> Complex a Source

log1p :: Complex a -> Complex a Source

expm1 :: Complex a -> Complex a Source

log1pexp :: Complex a -> Complex a Source

log1mexp :: Complex a -> Complex a Source

RealFloat a => Fractional (Complex a)

Since: base-2.1

Instance details

Определено в Data.Complex

Методы

(/) :: Complex a -> Complex a -> Complex a Source

recip :: Complex a -> Complex a Source

fromRational :: Rational -> Complex a Source

Data a => Data (Complex a)

Since: base-2.1

Instance details

Определено в Data.Complex

Методы

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Complex a -> c (Complex a) Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Complex a) Source

toConstr :: Complex a -> Constr Source

dataTypeOf :: Complex a -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Complex a)) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Complex a)) Source

gmapT :: (forall b. Data b => b -> b) -> Complex a -> Complex a Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Complex a -> r Source

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Complex a -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Complex a -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Complex a -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Complex a -> m (Complex a) Source

RealFloat a => Num (Complex a)

Since: base-2.1

Instance details

Определено в Data.Complex

Методы

(+) :: Complex a -> Complex a -> Complex a Source

(-) :: Complex a -> Complex a -> Complex a Source

(*) :: Complex a -> Complex a -> Complex a Source

negate :: Complex a -> Complex a Source

abs :: Complex a -> Complex a Source

signum :: Complex a -> Complex a Source

fromInteger :: Integer -> Complex a Source

Read a => Read (Complex a)

Since: base-2.1

Подробности экземпляра

Определено в Data.Complex

Методы

readsPrec :: Int -> ReadS (Complex a) Исходный код

readList :: ReadS [Complex a] Исходный код

readPrec :: ReadPrec (Complex a) Исходный код

readListPrec :: ReadPrec [Complex a] Исходный код

Show a => Show (Complex a)

С момента: base-2.1

Подробности экземпляра

Определено в Data.Complex

Методы

showsPrec :: Int -> Complex a -> ShowS Исходный код

show :: Complex a -> String Исходный код

showList :: [Complex a] -> ShowS Исходный код

Generic (Complex a)

С момента: base-4.9.0.0

Подробности экземпляра

Определено в Data.Complex

Связанные типы

type Rep (Complex a) :: Type -> Type Исходный код

Методы

from :: Complex a -> Rep (Complex a) x Исходный код

to :: Rep (Complex a) x -> Complex a Исходный код

Storable a => Storable (Complex a)

С момента: base-4.8.0.0

Подробности экземпляра

Определено в Data.Complex

Методы

sizeOf :: Complex a -> Int Исходный код

alignment :: Complex a -> Int Исходный код

peekElemOff :: Ptr (Complex a) -> Int -> IO (Complex a) Исходный код

pokeElemOff :: Ptr (Complex a) -> Int -> Complex a -> IO () Исходный код

peekByteOff :: Ptr b -> Int -> IO (Complex a) Исходный код

pokeByteOff :: Ptr b -> Int -> Complex a -> IO () Исходный код

peek :: Ptr (Complex a) -> IO (Complex a) Исходный код

poke :: Ptr (Complex a) -> Complex a -> IO () Исходный код

Generic1 Complex

С момента: base-4.9.0.0

Подробности экземпляра

Определено в Data.Complex

Связанные типы

type Rep1 Complex :: k -> Type Исходный код

Методы

from1 :: forall (a :: k). Complex a -> Rep1 Complex a Исходный код

to1 :: forall (a :: k). Rep1 Complex a -> Complex a Исходный код

type Rep (Complex a)
Подробности экземпляра

Определено в Data.Complex

type Rep (Complex a) = D1 ('MetaData "Complex" "Data.Complex" "base" 'False) (C1 ('MetaCons ":+" ('InfixI 'NotAssociative 6) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))
type Rep1 Complex
Подробности экземпляра

Определено в Data.Complex

type Rep1 Complex = D1 ('MetaData "Complex" "Data.Complex" "base" 'False) (C1 ('MetaCons ":+" ('InfixI 'NotAssociative 6) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1 :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) Par1))

realPart :: Complex a -> a Исходный код

Извлекает действительную часть комплексного числа.

imagPart :: Complex a -> a Исходный код

Извлекает мнимую часть комплексного числа.

Полярная форма

mkPolar :: Floating a => a -> a -> Complex a Исходный код

Формирует комплексное число из полярных компонент модуля и фазы.

cis :: Floating a => a -> Complex a Исходный код

cis t — это комплексное значение с модулем 1 и фазой t (по модулю 2*pi).

polar :: RealFloat a => Complex a -> (a, a) Исходный код

Функция polar принимает комплексное число и возвращает пару (модуль, фаза) в канонической форме: модуль неотрицателен, а фаза в диапазоне (-pi, pi]; если модуль равен нулю, то и фаза равна нулю.

magnitude :: RealFloat a => Complex a -> a Исходный код

Неотрицательный модуль комплексного числа.

phase :: RealFloat a => Complex a -> a Исходный код

Фаза комплексного числа в диапазоне (-pi, pi]. Если модуль равен нулю, то и фаза равна нулю.

Сопряжённое

conjugate :: Num a => Complex a -> Complex a Исходный код

Сопряжённое комплексное число.

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.10.2/docs/html/libraries/base-4.14.1.0/Data-Complex.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API