- #1
Barnak
- 63
- 0
I'm not sure this is the right thread to post my problem :
I'm trying to define a uniform distribution on the toroidal surface associated to a dipolar magnetic field (or electric). More specifically, the surface (in 3D euclidian space) is parametrised as this, using the usual polar coordinates :
[itex]x(\theta, \phi) = \sin^3{\theta} \; \cos{\phi},[/itex]
[itex]y(\theta, \phi) = \sin^3{\theta} \; \sin{\phi},[/itex]
[itex]z(\theta) = \sin^2{\theta} \; \cos{\theta}.[/itex]
The surface element is this :
[itex]dS(\theta, \phi) = \sin^7{\theta} \; d\theta \; d\phi.[/itex]
For a simple sphere, we get
[itex]dS_{sphere}(\theta, \phi) = \sin{\theta} \; d\theta \; d\phi = du \; d\phi,[/itex]
where [itex]u = \cos \theta[/itex] is the natural variable to define the uniform distribution on the sphere.
In the case of my toroidal surface defined above, the "natural" variable (if I'm not doing a mistake) is really complicated :
[itex]u = \cos{\theta} - \cos^3{\theta} + \tfrac{3}{5} \cos^5{\theta} - \tfrac{1}{7}\cos^7{\theta},[/itex]
so [itex]dS(u, \phi) = du \; d\phi[/itex]. This is the variable I should use to define an uniform distribution of points on the surface.
However, how should I define the three parametric coordinates [itex]x(u, \phi)[/itex], [itex]y(u, \phi)[/itex], [itex]z(u)[/itex] ? I'm unable to invert the function above to give [itex]\cos \theta = f(u) = ?[/itex]
Help please !
I'm using Mathematica to do my calculations.
I'm trying to define a uniform distribution on the toroidal surface associated to a dipolar magnetic field (or electric). More specifically, the surface (in 3D euclidian space) is parametrised as this, using the usual polar coordinates :
[itex]x(\theta, \phi) = \sin^3{\theta} \; \cos{\phi},[/itex]
[itex]y(\theta, \phi) = \sin^3{\theta} \; \sin{\phi},[/itex]
[itex]z(\theta) = \sin^2{\theta} \; \cos{\theta}.[/itex]
The surface element is this :
[itex]dS(\theta, \phi) = \sin^7{\theta} \; d\theta \; d\phi.[/itex]
For a simple sphere, we get
[itex]dS_{sphere}(\theta, \phi) = \sin{\theta} \; d\theta \; d\phi = du \; d\phi,[/itex]
where [itex]u = \cos \theta[/itex] is the natural variable to define the uniform distribution on the sphere.
In the case of my toroidal surface defined above, the "natural" variable (if I'm not doing a mistake) is really complicated :
[itex]u = \cos{\theta} - \cos^3{\theta} + \tfrac{3}{5} \cos^5{\theta} - \tfrac{1}{7}\cos^7{\theta},[/itex]
so [itex]dS(u, \phi) = du \; d\phi[/itex]. This is the variable I should use to define an uniform distribution of points on the surface.
However, how should I define the three parametric coordinates [itex]x(u, \phi)[/itex], [itex]y(u, \phi)[/itex], [itex]z(u)[/itex] ? I'm unable to invert the function above to give [itex]\cos \theta = f(u) = ?[/itex]
Help please !
I'm using Mathematica to do my calculations.