rpn/test/10-complex.txt
2017-06-21 23:00:41 +02:00

697 lines
11 KiB
Text

## COMPLEX
default erase
# entry (1)
(1,2) ( 1,2) (1 ,2) (1, 2) (1,2 )
-> stack should be (1,2), (1,2), (1,2), (1,2), (1,2)
erase
# entry (2)
(1.3,2.444555
-> stack should be (1.3,2.444555)
erase
# entry (3)
(1,
-> stack should be (1,0)
erase
# entry (4)
(nan,+inf)
-> stack should be (nan,inf)
erase
# entry (5)
(0x1234,0x10.10)
-> stack should be (0x1.234p+12,0x1.01p+4)
erase
# entry (6)
(0b11,0b101)
-> stack should be (3,5)
erase
# add (1)
(1.2,2.3) (1,2) +
-> stack should be (2.2,4.3)
erase
# add (2)
(1.2,2.3) (1,2)+
-> stack should be (2.2,4.3)
erase
# add (3)
(1.2,2.3) 3+
-> stack should be (4.2,2.3)
erase
# add (4)
3 (1.2,2.3)+
-> stack should be (4.2,2.3)
erase
# sub (1)
(1.2,2.3) (2,2) -
-> stack should be (-0.8,0.3)
erase
# sub (2)
(1.2,2.3) (1,2)-
-> stack should be (0.2,0.3)
erase
# sub (3)
(1.2,2.3) 1-
-> stack should be (0.2,2.3)
erase
# sub (4)
1 (1.2,2.3) -
-> stack should be (-0.2,2.3)
erase
# mul (1)
(1,2) (3,4) *
-> stack should be (-5,10)
erase
# mul (2)
(3,4) (1,2) *
-> stack should be (-5,10)
erase
# mul (3)
(3,4) 2 *
-> stack should be (6,8)
erase
# mul (3)
2 (3,4) *
-> stack should be (6,8)
erase
# div (1)
(1,2) (3,4) /
-> stack should be (0.44,0.08)
erase
# div (2)
(1,2) 2 /
-> stack should be (0.5,1)
erase
# div (3)
2 (3,4) /
-> stack should be (0.24,-0.32)
erase
# re (1)
(1.2,3.4) re
-> stack should be 1.2
erase
# re (2)
3 re
-> error should be 3
erase
# re (3)
re
-> error should be 2
erase
# im (1)
(1.2,3.4) im
-> stack should be 3.4
erase
# im (2)
3 re
-> error should be 3
erase
# im (3)
re
-> error should be 2
erase
# chs
(3.14,6.28) chs
-> stack should be (-3.14,-6.28)
erase
# neg
(-3.14,-6.28) neg
-> stack should be (3.14,6.28)
erase
# inv (1)
(2,4) inv
-> stack should be (0.1,-0.2)
erase
# inv (2)
(0.1,-0.2) inv
-> stack should be (2,4)
erase
# abs
(3,4) abs
-> stack should be 5
erase
# sign (1)
(1,0) sign
-> stack should be (1,0)
erase
# sign (2)
(0,1) sign
-> stack should be (0,1)
erase
# sign (3)
(3,-4) sign
-> stack should be (0.6,-0.8)
erase
# sq (1)
(12,10) sq
-> stack should be (44,240)
erase
# sqr (1)
(12,10) sq
-> stack should be (44,240)
erase
# arg (1)
(1,1) arg pi 4 / ==
-> stack should be 1
erase
# arg (2)
1000 prec
(-1,1) arg pi 3 * 4 / ==
-> stack should be 1
default
erase
# arg (3)
1000 prec
(1,-1) arg pi chs 4 / ==
-> stack should be 1
default
erase
# arg (4)
1000 prec
(-1,-1) arg pi -3 * 4 / ==
-> stack should be 1
default
erase
# arg (5)
1000 prec
(1,0) arg 0 ==
-> stack should be 1
default
erase
# arg (6)
1000 prec
(0,1) arg pi 2 / ==
-> stack should be 1
default
erase
# arg (7)
1000 prec
(-1,0) arg pi ==
-> stack should be 1
default
erase
# arg (8)
1000 prec
(0,-1) arg pi neg 2 / ==
-> stack should be 1
default
erase
# conj
(1,2) conj dup conj
-> stack should be (1,-2), (1,2)
erase
# r->c (1)
1 2 r->c
-> stack should be (1,2)
erase
# r->c (2)
1 r->c
-> error should be 2
erase
# r->c (3)
r->c
-> error should be 2
erase
# r->c (3)
'1' '2' r->c
-> error should be 3
erase
# c->r (1)
(1,2) c->r
-> stack should be 1, 2
erase
# c->r (2)
c->r
-> error should be 2
erase
# c->r (3)
'4' c->r
-> error should be 3
erase
# r->p (1)
(1,2) r->p
-> stack should be (2.2360679774997896964,1.107148717794090503)
erase
# r->p (2)
1 r->p
-> error should be 3
eras3
# r->p (3)
r->p
-> error should be 3
erase
# r->p (4)
'1' '2' r->p
-> error should be 3
erase
# ^ (1)
(1,2) 2 ^
-> stack should be (-3,4)
erase
# ^ (2)
(1,2) 4 ^
-> stack should be (-7,-24)
erase
# sqrt
(3,4) sqrt
-> stack should be (2,1)
erase
# sin (1)
(1,2) sin
-> stack should be (3.1657785132161681467,1.9596010414216058971)
erase
# sin (2)
(1,-2) sin
-> stack should be (3.1657785132161681467,-1.9596010414216058971)
erase
# sin (3)
(-1,-2) sin
-> stack should be (-3.1657785132161681467,-1.9596010414216058971)
erase
# sin (4)
(-1,2) sin
-> stack should be (-3.1657785132161681467,1.9596010414216058971)
erase
# asin (1)
(1,2) asin
-> stack should be (0.42707858639247612548,1.5285709194809981613)
erase
# asin (2)
(1,-2) asin
-> stack should be (0.42707858639247612548,-1.5285709194809981613)
erase
# asin (3)
(-1,-2) asin
-> stack should be (-0.42707858639247612548,-1.5285709194809981613)
erase
# asin (4)
(-1,2) asin
-> stack should be (-0.42707858639247612548,1.5285709194809981613)
erase
# cos (1)
(1,2) cos
-> stack should be (2.0327230070196655294,-3.0518977991518000575)
erase
# cos (2)
(1,-2) cos
-> stack should be (2.0327230070196655294,3.0518977991518000575)
erase
# cos (3)
(-1,-2) cos
-> stack should be (2.0327230070196655294,-3.0518977991518000575)
erase
# cos (4)
(-1,2) sin
-> stack should be (-3.1657785132161681467,1.9596010414216058971)
erase
# acos (1)
(1,2) acos
-> stack should be (1.1437177404024204938,-1.5285709194809981613)
erase
# acos (2)
(1,-2) acos
-> stack should be (1.1437177404024204938,1.5285709194809981613)
erase
# acos (3)
(-1,-2) acos
-> stack should be (1.9978749131873727447,1.5285709194809981613)
erase
# acos (4)
(-1,2) acos
-> stack should be (1.9978749131873727447,-1.5285709194809981613)
erase
# tan (1)
(1,2) tan
-> stack should be (0.033812826079896690284,1.0147936161466335681)
erase
# tan (2)
(1,-2) tan
-> stack should be (0.033812826079896690284,-1.0147936161466335681)
erase
# tan (3)
(-1,-2) tan
-> stack should be (-0.033812826079896690284,-1.0147936161466335681)
erase
# tan (4)
(-1,2) tan
-> stack should be (-0.033812826079896690284,1.0147936161466335681)
erase
# atan (1)
(1,2) atan
-> stack should be (1.3389725222944935611,0.40235947810852509365)
erase
# atan (2)
(1,-2) atan
-> stack should be (1.3389725222944935611,-0.40235947810852509365)
erase
# atan (3)
(-1,-2) atan
-> stack should be (-1.3389725222944935611,-0.40235947810852509365)
erase
# atan (4)
(-1,2) atan
-> stack should be (-1.3389725222944935611,0.40235947810852509365)
erase
# ln (1)
(1,2) ln
-> stack should be (0.8047189562170501873,1.107148717794090503)
erase
# ln (2)
(1,-2) ln
-> stack should be (0.8047189562170501873,-1.107148717794090503)
erase
# ln (3)
(-1,-2) ln
-> stack should be (0.8047189562170501873,-2.0344439357957027354)
erase
# ln (4)
(-1,2) ln
-> stack should be (0.8047189562170501873,2.0344439357957027354)
erase
# log (1)
(1,2) log
-> stack should be (0.8047189562170501873,1.107148717794090503)
erase
# log (2)
(1,-2) log
-> stack should be (0.8047189562170501873,-1.107148717794090503)
erase
# log (3)
(-1,-2) log
-> stack should be (0.8047189562170501873,-2.0344439357957027354)
erase
# log (4)
(-1,2) log
-> stack should be (0.8047189562170501873,2.0344439357957027354)
erase
# log10 (1)
(1,2) log10
-> stack should be (0.34948500216800940239,0.4808285787842341027)
erase
# log10 (2)
(1,-2) log10
-> stack should be (0.34948500216800940239,-0.4808285787842341027)
erase
# log10 (3)
(-1,-2) log10
-> stack should be (0.34948500216800940239,-0.88354777505760724478)
erase
# log10 (4)
(-1,2) log10
-> stack should be (0.34948500216800940239,0.88354777505760724478)
erase
# log2 (1)
(1,2) log2
-> stack should be (1.1609640474436811739,1.5972779646881088066)
erase
# log2 (2)
(1,-2) log2
-> stack should be (1.1609640474436811739,-1.5972779646881088066)
erase
# log2 (3)
(-1,-2) log2
-> stack should be (1.1609640474436811739,-2.935082177139085003)
erase
# log2 (4)
(-1,2) log2
-> stack should be (1.1609640474436811739,2.935082177139085003)
erase
# exp (1)
(1,2) exp
-> stack should be (-1.1312043837568136384,2.4717266720048189276)
erase
# exp (2)
(1,-2) exp
-> stack should be (-1.1312043837568136384,-2.4717266720048189276)
erase
# exp (3)
(-1,-2) exp
-> stack should be (-0.15309186567422629126,-0.33451182923926224842)
erase
# exp (4)
(-1,2) exp
-> stack should be (-0.15309186567422629126,0.33451182923926224842)
erase
# alog2 (1)
(1,2) alog2
-> stack should be (0.36691394948660335368,1.9660554808224874412)
erase
# alog2 (2)
(1,-2) alog2
-> stack should be (0.36691394948660335368,-1.9660554808224874412)
erase
# alog2 (3)
(-1,-2) alog2
-> stack should be (0.09172848737165083842,-0.49151387020562186029)
erase
# alog2 (4)
(-1,2) alog2
-> stack should be (0.09172848737165083842,0.49151387020562186029)
erase
# alog10 (1)
(1,2) alog10
-> stack should be (-1.0701348355877020772,-9.9425756941378968736)
erase
# alog10 (2)
(1,-2) alog10
-> stack should be (-1.0701348355877020772,9.9425756941378968736)
erase
# alog10 (3)
(-1,-2) alog10
-> stack should be (-0.010701348355877020772,0.099425756941378968736)
erase
# alog10 (4)
(-1,2) alog10
-> stack should be (-0.010701348355877020772,-0.099425756941378968736)
erase
# sinh (1)
(1,2) sinh
-> stack should be (-0.48905625904129367359,1.403119250622040588)
erase
# sinh (2)
(1,-2) sinh
-> stack should be (-0.48905625904129367359,-1.403119250622040588)
erase
# sinh (3)
(-1,-2) sinh
-> stack should be (0.48905625904129367359,-1.403119250622040588)
erase
# sinh (4)
(-1,2) sinh
-> stack should be (0.48905625904129367359,1.403119250622040588)
erase
# asinh (1)
(1,2) asinh
-> stack should be (1.4693517443681852733,1.0634400235777520562)
erase
# asinh (2)
(1,-2) asinh
-> stack should be (1.4693517443681852733,-1.0634400235777520562)
erase
# asinh (3)
(-1,-2) asinh
-> stack should be (-1.4693517443681852733,-1.0634400235777520562)
erase
# asinh (4)
(-1,2) asinh
-> stack should be (-1.4693517443681852733,1.0634400235777520562)
erase
# cosh (1)
(1,2) cosh
-> stack should be (-0.48905625904129367359,1.403119250622040588)
erase
# cosh (2)
(1,-2) cosh
-> stack should be (-0.48905625904129367359,-1.403119250622040588)
erase
# cosh (3)
(-1,-2) cosh
-> stack should be (0.48905625904129367359,-1.403119250622040588)
erase
# cosh (4)
(-1,2) cosh
-> stack should be (0.48905625904129367359,1.403119250622040588)
erase
# acosh (1)
(1,2) acosh
-> stack should be (1.5285709194809981613,1.1437177404024204938)
erase
# acosh (2)
(1,-2) acosh
-> stack should be (1.5285709194809981613,-1.1437177404024204938)
erase
# acosh (3)
(-1,-2) acosh
-> stack should be (-1.5285709194809981613,1.9978749131873727447)
erase
# acosh (4)
(-1,2) acosh
-> stack should be (-1.5285709194809981613,-1.9978749131873727447)
erase
# tanh (1)
(1,2) tanh
-> stack should be (0.5641325612306708055,-0.21793371938466459725)
erase
# tanh (2)
(1,-2) tanh
-> stack should be (0.5641325612306708055,0.21793371938466459725)
erase
# tanh (3)
(-1,-2) tanh
-> stack should be (-0.5641325612306708055,0.21793371938466459725)
erase
# tanh (4)
(-1,2) tanh
-> stack should be (-0.5641325612306708055,-0.21793371938466459725)
erase
# atanh (1)
(1,2) atanh
-> stack should be (0.17328679513998632735,1.1780972450961724644)
erase
# atanh (2)
(1,-2) atanh
-> stack should be (0.17328679513998632735,-1.1780972450961724644)
erase
# atanh (3)
(-1,-2) atanh
-> stack should be (-0.17328679513998632735,-1.1780972450961724644)
erase
# atanh (4)
(-1,2) atanh
-> stack should be (-0.17328679513998632735,1.1780972450961724644)
erase