How to integrate function along circle on sphere?

3 visualizzazioni (ultimi 30 giorni)
SkyAlliance
SkyAlliance il 20 Ago 2017
Commentato: SkyAlliance il 21 Ago 2017
I need to calculate the mean value of a function along a circle on the surface of a sphere of radius R. The circle is given as the intersection of the sphere and the positive half of a cone of opening half-angle alpha, the axis of which points along (sin A*cos B, sin A*sin B, cos A). The function is given as a function of spherical coordinates f(theta,phi). I have solved the general equation for the intersection of sphere and cone in Cartesian coordinates, so for the points on the circle I know y and z as functions of x and I know the range of x. In other words, I know the x,y,z coordinates of the points on the circle. However, how should I now find the integral of the function over these points? I can't just calculate the function at many points and take the mean as the points won't be spaced evenly if I let x range over the necessary interval. Should I replace theta,phi by their expression in terms of x,y,z and then express y,z as functions of x and integrate with respect to x using something like integral()?
  2 Commenti
John D'Errico
John D'Errico il 20 Ago 2017
So, you cannot represent the curve parametrically in terms of theta? (From what you have said, you can.) Why cannot you just integrate over this parameter?
SkyAlliance
SkyAlliance il 21 Ago 2017
The general equation resulting from intersecting a cone and sphere is rather messy and so are the expressions for y and z as functions of x. I can't really parameterise them in terms of the angle that describes going round the circle (this is not the same as the spherical coordinate theta). I guess since I've got y and z as functions of x, I can use x as my parameter. However, how would I calculate the corresponding line integral in Matlab?

Accedi per commentare.

Risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by