Handbook
Glossary
complex
Factor handbook
»
The language
»
Numbers
»
Complex numbers
Next:
real-part ( z -- x )
Vocabulary
math
Class description
The class of complex numbers with non-zero imaginary part.
Definition
IN:
math
TUPLE:
complex
{
real
real
read-only
initial:
0
}
{
imaginary
real
read-only
initial:
0
}
;
Methods
USING:
kernel
math
math.complex.private
;
M:
complex
*
[
*re
-
]
[
*im
+
]
2bi
rect>
;
inline
USING:
math
math.complex.private
;
M:
complex
+
[
+
]
complex-op
;
inline
USING:
math
math.complex.private
;
M:
complex
-
[
-
]
complex-op
;
inline
USING:
math
math.complex.private
;
M:
complex
/
[
/
]
complex/
;
inline
USING:
math
math.complex.private
;
M:
complex
/f
[
/f
]
complex/
;
inline
USING:
math
math.complex.private
;
M:
complex
/i
[
/i
]
complex/
;
inline
USING:
arrays
math
prettyprint.custom
;
M:
complex
>pprint-sequence
>rect
2array
;
USING:
kernel
math
;
M:
complex
>rect
[
real-part
]
[
imaginary-part
]
bi
;
inline
USING:
math
math.functions.private
;
M:
complex
^n
(^n)
;
USING:
math
math.functions
;
M:
complex
abs
absq
sqrt
;
inline
USING:
kernel
math
math.functions
;
M:
complex
absq
>rect
[
sq
]
bi@
+
;
inline
USING:
math
math.functions
;
M:
complex
atan
i*
atanh
i*
;
inline
USING:
alien.data
kernel
math
;
M:
complex
binary-zero?
>rect
[
binary-zero?
]
both?
;
inline
USING:
kernel
math
math.functions
math.libm
;
M:
complex
cos
>float-rect
[
[
fcos
]
[
fcosh
]
bi*
*
]
[
[
fsin
neg
]
[
fsinh
]
bi*
*
]
2bi
rect>
;
USING:
kernel
math
math.functions
math.libm
;
M:
complex
cosh
>float-rect
[
[
fcosh
]
[
fcos
]
bi*
*
]
[
[
fsinh
]
[
fsin
]
bi*
*
]
2bi
rect>
;
USING:
kernel
math
math.functions
;
M:
complex
e^
>rect
[
e^
]
dip
polar>
;
inline
USING:
compiler.tree.propagation.info
kernel
math
;
M:
complex
eql?
over
complex?
[
=
]
[
2drop
f
]
if
;
USING:
kernel
math
math.complex.private
;
M:
complex
equal?
over
complex?
[
[
=
]
complex=
]
[
2drop
f
]
if
;
inline
USING:
kernel
math
;
M:
complex
hashcode*
nip
>rect
[
hashcode
]
bi@
bitxor
;
inline
USING:
accessors
math
;
M:
complex
imaginary-part
imaginary>>
;
inline
USING:
kernel
math
math.functions
math.libm
;
M:
complex
log
>polar
[
flog
]
dip
rect>
;
inline
USING:
math
math.functions
;
M:
complex
log10
log
10
log
/
;
inline
USING:
kernel
layouts
math
math.bitwise
math.hashcodes
;
M:
complex
number-hashcode
>rect
[
number-hashcode
]
bi@
1000003
*
+
cell-bits
on-bits
bitand
dup
-1
=
[
drop
-2
]
when
;
USING:
math
math.complex.private
;
M:
complex
number=
[
number=
]
complex=
;
inline
USING:
kernel
math
math.text.english
sequences
;
M:
complex
number>text
>rect
[
number>text
]
[
[
0
<
" minus "
" plus "
?
]
[
abs
number>text
" i"
append
]
bi
]
bi*
3append
;
USING:
math
prettyprint.custom
;
M:
complex
pprint*
pprint-object
;
USING:
kernel
math
prettyprint.custom
;
M:
complex
pprint-delims
drop
\
C{
\
}
;
USING:
accessors
kernel
math
math.parser
present
sequences
;
M:
complex
present
[
real>>
number>string
]
[
imaginary>>
[
number>string
]
[
0
>=
[
"+"
prepend
]
when
]
bi
]
bi
"j"
3append
;
USING:
accessors
math
;
M:
complex
real-part
real>>
;
inline
USING:
kernel
math
math.functions
;
M:
complex
signum
dup
abs
/
;
USING:
kernel
math
math.functions
math.libm
;
M:
complex
sin
>float-rect
[
[
fsin
]
[
fcosh
]
bi*
*
]
[
[
fcos
]
[
fsinh
]
bi*
*
]
2bi
rect>
;
USING:
kernel
math
math.functions
math.libm
;
M:
complex
sinh
>float-rect
[
[
fsinh
]
[
fcos
]
bi*
*
]
[
[
fcosh
]
[
fsin
]
bi*
*
]
2bi
rect>
;
USING:
kernel
math
math.functions
;
M:
complex
sqrt
>polar
[
sqrt
]
[
2.0
/
]
bi*
polar>
;
inline
USING:
kernel
math
math.functions
;
M:
complex
tan
[
sin
]
[
cos
]
bi
/
;
USING:
kernel
math
math.functions
;
M:
complex
tanh
[
sinh
]
[
cosh
]
bi
/
;