2
$\begingroup$

I need to integrate a rather complicated function on an ellipsoidal surface, specifically a prolate spheroid surface.

Im using the mathematica 10 feature of discretize the regions in mesh and pass the discretized region to NIntegrate.

However when i define the ellipsoidal surface region as:

region = BoundaryDiscretizeRegion[ Ellipsoid[{0, 0, 0}, {1, 0.125, 0.125}], MaxCellMeasure -> 0.1] 

and i do

RegionDimension[region] 

the answer is 3 so it is discretizing the whole volume not only the surface.

To confirm what seen above i computed the Integral in the case of a sphere:

NIntegrate[1, {x, y, z} ∈ BoundaryDiscretizeRegion[Ellipsoid[{0, 0, 0}, {1, 1, 1}], MaxCellMeasure -> 0.01]] 

whose result is 4.1798 that is $\approx \frac{4}{3} \pi$ confirming that he is performing the integration over the VOLUME not over the surface...

Am i doing something wrong?

Thanks in advance for the help

$\endgroup$
6
  • $\begingroup$ What you probably want is DiscretizeRegion on the RegionBoundary of your ellipsoid. If you look at BoundaryDiscretizeRegion documentation you can see the result doesn't consist of the boundary alone... it's just that discretization occurs only on it. $\endgroup$ Commented Jul 15, 2015 at 15:51
  • $\begingroup$ I did it, hower when i do DiscretizeRegion[ RegionBoundary[Ellipsoid[{0, 0, 0}, {1, 0.125, 0.125}]], MeshQualityGoal -> 10] the result is the same whatever MeshQualitiGoal or MaxCellMeasure i specify. i don't know why $\endgroup$ Commented Jul 15, 2015 at 15:53
  • $\begingroup$ Related: /86196 $\endgroup$ Commented Jul 15, 2015 at 16:15
  • 1
    $\begingroup$ I solved the problem in the following way: region = RegionBoundary[ BoundaryDiscretizeRegion[Ellipsoid[{0, 0, 0}, {1, 0.125, 0.125}], MaxCellMeasure -> 0.1]] in this way i can specify the mesh quality without any problem $\endgroup$ Commented Jul 15, 2015 at 16:28
  • $\begingroup$ @user3810266 BTW: MaxCellMeasure is not really reliable on pre-v10.2 versions; see mathematica.stackexchange.com/questions/54925/… . Also, you don't really need to perform discretization in many cases at all! $\endgroup$ Commented Jul 15, 2015 at 16:40

1 Answer 1

7
$\begingroup$

After thinking about it, i solved the problem by considering:

region = RegionBoundary[ BoundaryDiscretizeRegion[Ellipsoid[{0, 0, 0}, {1, 0.125, 0.125}], MaxCellMeasure -> 0.1]] 

in this only the surface is discretized and the mesh quality can be specified by MaxCellMeasure.

$\endgroup$

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.