After quite some searching I did not succeed to find documentation for sage 
functions to work with complex numbers as much as I would like. 
For example  if I have a complicated rational expression,  how can I tell 
Sage "bring this to the form a + bi".      It seems real() and imag()  only 
work
if no pre-processing is needed.   How about "multiply numerator and 
denominator by denominator.conjugate()" ?  There's probably a chapter in 
the documentation about this,  could someone please point me to it,  I seem 
to be incompetent at finding it, sorry.  

Since people want something concrete to look at, not just a general 
question,  here is some code.   You'll see that it computes a certain 
complex function (actually two of them)
with integer parameters N and M,  the solution(s) of a certain equation.   
I'd like to compute that the absolute value of those expressions must be 1. 
  The 
code below computes it numerically  for some more or less random values of 
N and M,  and it is 1.0000  for those values, but I can't figure out how to 
compute it symbolically.   Also,  if there's a better way to do polynomial 
division than I've used below,  please tell me.

def nov13b():
var('p,q,r,N,M,x')
a = sqrt(3)/2
b = (x-x^(-1))/(2*i)
c = (sqrt(3)/2)* (x+x^(-1))/2 + (1/2)*(x-x^(-1))/(2*i)
X = (M/3)*(a+b+c)
f = 24*(X^2-N*b*c)*x^2
g = (f.maxima_methods().divide(x+1)[0]).full_simplify()
print(g.full_simplify())
print("")
t = exp(-pi*i/3)
print(g(x=t).full_simplify())
print("")
h = (g.maxima_methods().divide(x-t)[0]).full_simplify()
print("h = ")
print(h)
print("")
answers = solve(h,x)
assume(N,'integer')
assume(M,'integer')
for u in answers:
print("")
ans = u.rhs().simplify()
for k in range(230,245):
ans_numerical = abs(ans.substitute(M=11,N=243)).simplify()
print(n(ans_numerical))





-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to