1 | initial version |
FWIW :
sage: x, y = var("x, y")
sage: table([[u, cos(x+I*y).limit(y=oo, algorithm=u)] for u in ["maxima", "sympy", "giac", "fricas", "mathematica_free"]])
maxima limit(cos(x + I*y), y, +Infinity)
sympy +Infinity
giac bounded_function(6)
fricas failed
mathematica_free ComplexInfinity
Curiously, these results do not depend on assumptions on the domain :
sage: with assuming(x, y, "real"): table([[u, cos(x+I*y).limit(y=oo, algorithm=u)] for u in ["maxima", "sympy", "giac", "fricas", "mathematica_free"]])
maxima limit(cos(x + I*y), y, +Infinity)
sympy +Infinity
giac bounded_function(8)
fricas failed
mathematica_free ComplexInfinity
My (rusty) memories of analysis make me think yjat Matheatica's answer is the closest to reality...
BTW :
sage: foo = cos(x+I*y).exponentialize().factor() ; foo
1/2*(e^(2*I*x) + e^(2*y))*e^(-I*x - y)
sage: table([[u, foo.limit(y=oo)] for u in ["maxima", "giac", "fricas", "mathematica_free"]])
maxima Infinity
giac Infinity
fricas Infinity
mathematica_free Infinity
sage: with assuming(x, y, "real"): table([[u, foo.limit(y=oo)] for u in ["maxima", "giac", "fricas", "mathematica_free"]])
maxima Infinity
giac Infinity
fricas Infinity
mathematica_free Infinity
(Sympy fails to compute this limit...).
HTH,
2 | No.2 Revision |
FWIW :
sage: x, y = var("x, y")
sage: table([[u, cos(x+I*y).limit(y=oo, algorithm=u)] for u in ["maxima", "sympy", "giac", "fricas", "mathematica_free"]])
maxima limit(cos(x + I*y), y, +Infinity)
sympy +Infinity
giac bounded_function(6)
fricas failed
mathematica_free ComplexInfinity
Curiously, these results do not depend on assumptions on the domain :
sage: with assuming(x, y, "real"): table([[u, cos(x+I*y).limit(y=oo, algorithm=u)] for u in ["maxima", "sympy", "giac", "fricas", "mathematica_free"]])
maxima limit(cos(x + I*y), y, +Infinity)
sympy +Infinity
giac bounded_function(8)
fricas failed
mathematica_free ComplexInfinity
My (rusty) memories of analysis make me think yjat Matheatica's answer is the closest to reality...
BTW :
sage: foo = cos(x+I*y).exponentialize().factor() ; foo
1/2*(e^(2*I*x) + e^(2*y))*e^(-I*x - y)
sage: table([[u, foo.limit(y=oo)] for u in ["maxima", "giac", "fricas", "mathematica_free"]])
maxima Infinity
giac Infinity
fricas Infinity
mathematica_free Infinity
sage: with assuming(x, y, "real"): table([[u, foo.limit(y=oo)] for u in ["maxima", "giac", "fricas", "mathematica_free"]])
maxima Infinity
giac Infinity
fricas Infinity
mathematica_free Infinity
(Sympy fails to compute this limit...).
EDIT : FWIW, in the gratis Wolfram Engine used from emacs
's wolfram-mode
:
In[17]:= Limit[Abs[Factor[TrigToExp[Cos[x+I*y]]]], y->Infinity]
Out[17]= Infinity
In[18]:= Limit[Arg[Factor[TrigToExp[Cos[x+I*y]]]], y->Infinity]
-I Re[x]
Out[18]= -I Log[E ]
In[19]:= Assuming[Element[x, Reals] && Element[y, Reals], Limit[Abs[Factor[TrigToExp[Cos[x+I*y]]]], y->Infinity]]
Out[19]= Infinity
In[20]:= Assuming[Element[x, Reals] && Element[y, Reals], Limit[Arg[Factor[TrigToExp[Cos[x+I*y]]]], y->Infinity]]
Out[20]= -ArcTan[Tan[x]]
HTH,