jonathanfishbein1 / elm-numbers / Imaginary

A module for Imaginary numbers

Types


type Imaginary i
    = Imaginary (Real i)

Imaginary number

Values

i : Imaginary number

i

zero : Imaginary number

zero

negativeI : Imaginary number

i

Arithmetic operations on imaginary numbers

imaginary : Imaginary a -> Real a

Extracts the value of an Imaginary number

negate : Imaginary number -> Imaginary number

Negate an Imaginary number

round : Basics.Int -> Imaginary Basics.Float -> Imaginary Basics.Float

Round Imaginary Number

Binary operations

multiply : Imaginary number -> Imaginary number -> Imaginary number

Multiply two complex numbers together

Semigroup, Monoid, Group, Ring, Field, Functor, Applicative Functor, and Monad

map : (a -> b) -> Imaginary a -> Imaginary b

Map over anImaginary Imaginary number

pure : a -> Imaginary a

Place a value in the minimal Imaginary context

andMap : Imaginary a -> Imaginary (a -> b) -> Imaginary b

Apply for Imaginary representaiton applicative

andThen : (a -> Imaginary b) -> Imaginary a -> Imaginary b

Monadic bind for Imaginary Number representaiton

equal : Typeclasses.Classes.Equality.Equality (Imaginary Basics.Float)

Equal type for Imaginary.

Read and Print

parseImaginary : Parser (Imaginary Basics.Float)

Parse Imaginary

print : Imaginary Basics.Float -> String

Print Imaginary Number

printNotationWithRounding : (Basics.Float -> String) -> Imaginary Basics.Float -> String

Print Real i notation with rounding function