Maple

Hello everyone!

I am confronted with a problem that seems to result from different definition of spherical coordinates in Maple and in Student[VectorCalculus] package.

I want to visualize a vector field defined in spherical coordinates (r,theta,phi).

A simple exampe is < 0, theta, 0 >. If I want to see just one slice of the field in OXY plane, I type:

fieldplot3d(<0, theta, 0>, r = 0 .. 1, theta = 0 .. 2*Pi, phi = 0 .. Pi, coords = spherical, grid = [10, 20, 3], color = black, fieldstrength = fixed(1), arrows = THICK)

And get:

which looks OK more or less but I don't like the nonuniform distribution of arrows. But since the field is defined in spherical coordinates there seems to be no way to produce a uniform distribution with fieldplot3d command.

However VectorField command in Student[VectorCalculus] package seems to do just what I want. But a similar call to it:

SetCoordinates('spherical'[r, theta, phi])

VectorField(<0, theta, 0>, output = plot, view = [-5 .. 5, -5 .. 5, -10 .. 10], fieldoptions = [arrows = THICK, color = black, grid = [10, 10, 3], view = [-5 .. 5, -5 .. 5, -1 .. 1]])  produces quite a different result:

which means that the second argument 'theta' is not the azimuthal angle but the angle from the Z axis, and amounts to Pi/2 since we look at the OXY plane.

The result of: VectorField(<0, 0, theta>, output = plot, view = [-5 .. 5, -5 .. 5, -10 .. 10], fieldoptions = [arrows = THICK, color = black, grid = [10, 10, 3], view = [-5 .. 5, -5 .. 5, -1 .. 1]])  looks better:

but is not correct since the magnitude of the field does not change with the azimutal angle. Finally,

VectorField(<0, 0, phi>, output = plot, view = [-5 .. 5, -5 .. 5, -10 .. 10], fieldoptions = [arrows = THICK, color = black, grid = [10, 10, 3], view = [-5 .. 5, -5 .. 5, -1 .. 1]]) produces almost what I want:

but it's quite different from what you get with fieldplot3d command. Apparently, not only azimuthal angle is now the third argument but it varies from -Pi to Pi, not from 0 to 2Pi as it does in fieldplot3d. I hoped to use both fieldplot3d and VectorField  with my vector fields but I cannot since they are not consistent in the definition of spherical coordinates.

My questions therefore are:

1) Is there a way to redifine spherical coordinates in VectorField command to make them consistent with the rest of Maple?

2) Can I produce a uniform 3D distribution of arrows for a field in spherical coordinates without VectorField command?