Thanks for the reply. In my particular instance, there are a lot of
constants, and the problem looks a bit difficult to automate. Here are
the specifics:

var('x1,x2,x3,x4,k,x,y,z', domain=RR)

# Definition of P = Im[(x1 + i x2)^k]
P(k, x1, x2, x3, x4) = (x1^2 + x2^2)^(k/2)*sin(k*arctan2(x2,x1))

# Definition of Q = Im[(x1 + i x3)^k]
Q(k, x1, x2, x3, x4) = (x1^2 + x3^2)^(k/2)*sin(k*arctan2(x3,x1))

InverseProject(x,y,z) = ((x^2 + y^2 + z^2 -1)/(x^2 + y^2 + z^2 +1),
2*x/(x^2 + y^2 + z^2 +1), 2*y/(x^2 + y^2 + z^2 +1), 2*z/(x^2 + y^2 +
z^2 +1))

nodalSetForP(k,x,y,z) = P(k, InverseProject(x,y,z)[0],
InverseProject(x,y,z)[1], InverseProject(x,y,z)[2],
InverseProject(x,y,z)[3])
nodalSetForQ(k,x,y,z) = Q(k, InverseProject(x,y,z)[0],
InverseProject(x,y,z)[1], InverseProject(x,y,z)[2],
InverseProject(x,y,z)[3])

nodalSet1 = nodalSetForP(3,x,y,z) == 0
nodalSet2 = nodalSetForQ(3,x,y,z) == 0

This yields:

sage: solve([nodalSet1, nodalSet2], x, y, z)
[[x == 0, y == 0, z == c65], #
[x == 0, y == c70, z == -1/3*sqrt(-3*c70^2 + 2*sqrt(3)*c70 +
3)*sqrt(3)], #
[x == 0, y == c71, z == 1/3*sqrt(-3*c71^2 + 2*sqrt(3)*c71 +
3)*sqrt(3)], #
[x == 0, y == c72, z == -1/3*sqrt(-3*c72^2 - 2*sqrt(3)*c72 +
3)*sqrt(3)], #
[x == 0, y == c73, z == 1/3*sqrt(-3*c73^2 - 2*sqrt(3)*c73 +
3)*sqrt(3)], #
[x == c66, y == 0, z == -1/3*sqrt(-3*c66^2 + 2*sqrt(3)*c66 +
3)*sqrt(3)], #
[x == c67, y == 0, z == 1/3*sqrt(-3*c67^2 + 2*sqrt(3)*c67 +
3)*sqrt(3)], #
[x == c68, y == 0, z == -1/3*sqrt(-3*c68^2 - 2*sqrt(3)*c68 +
3)*sqrt(3)], #
[x == c69, y == 0, z == 1/3*sqrt(-3*c69^2 - 2*sqrt(3)*c69 +
3)*sqrt(3)], #
[x == c74, y == c74, z == -1/3*sqrt(-6*c74^2 + 2*sqrt(3)*c74 +
3)*sqrt(3)], #
[x == c75, y == c75, z == 1/3*sqrt(-6*c75^2 + 2*sqrt(3)*c75 +
3)*sqrt(3)], #
[x == c76, y == c76, z == -1/3*sqrt(-6*c76^2 - 2*sqrt(3)*c76 +
3)*sqrt(3)], #
[x == c77, y == c77, z == 1/3*sqrt(-6*c77^2 - 2*sqrt(3)*c77 +
3)*sqrt(3)], #
[x == c78, y == -c78, z == -1/3*sqrt(-6*c78^2 + 2*sqrt(3)*c78 +
3)*sqrt(3)], #
[x == c79, y == -c79, z == 1/3*sqrt(-6*c79^2 + 2*sqrt(3)*c79 +
3)*sqrt(3)], #
[x == c80, y == -c80, z == -1/3*sqrt(-6*c80^2 - 2*sqrt(3)*c80 +
3)*sqrt(3)], #
[x == c81, y == -c81, z == 1/3*sqrt(-6*c81^2 - 2*sqrt(3)*c81 +
3)*sqrt(3)]]

which means there are 81-65 = 16 constants (and this is just for when
k = 3 -- k can be any non-negative integer). Is there no way to
automate the process of taking solutions from solve([nodalSet1,
nodalSet2], x, y, z) and then plotting them?

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to