Message Boards Message Boards

0
|
3920 Views
|
5 Replies
|
0 Total Likes
View groups...
Share
Share this post:

Why these errors with DiscretizeGraphics and "Undefined" for Volume?

Posted 2 years ago

A list of x,y coordinate pairs generates a ListLinePlot and Interpolation of the pair list creates a curve that can be rotated about the x-axis by RevolutionPlot3D. DiscretizeGraphics then generates what appears to be the correct meshed surface, but with a series of error messages about the values of PlotRange? I want the surface area of the resulting body, which is correctly given by Area, but Volume returns "Undefined"?

POSTED BY: Kevin Ulmer
5 Replies

It is probably not defined because the resulting region is a surface rather than a filled body.

POSTED BY: Sander Huisman
Posted 2 years ago

Is there a simple call to convert a surface to the enclosed solid?

POSTED BY: Kevin Ulmer

Is there a simple call to convert a surface to the enclosed solid?

This relates to that discussion, and right after that I asked myself exactly the very same. I did not find a solution. As Sander pointed out, the region in question is not solid - and there are various ways to check that, e.g.:

reg = DiscretizeGraphics[hullForm];
Through[{RegionEmbeddingDimension, RegionDimension, SolidRegionQ}[reg]]
(**  Out:     {3,2,False}  *)

One way to define this as a solid region is doing it implicitly:

regimpl = 
  DiscretizeRegion@ImplicitRegion[0 < x < 108 && y^2 + z^2 <= curve[x]^2, {x, y, z}];

Now you have:

Through[{RegionEmbeddingDimension, RegionDimension, SolidRegionQ}[regimpl]]
Volume[regimpl]
(*  Out:   {3,3,True}  *)
(*  Out:   13042.690  *)
POSTED BY: Henrik Schachner
Posted 2 years ago

Hi Kevin,

Not sure why Volume does not work, perhaps because the discretization has some imperfections. You could just use calculus

Area of surface of revolution about the x axis

2 Pi NIntegrate[curve[x] Sqrt[1 + D[curve[x], x]^2], {x, 0, 108}]
(* 4048.33 *)

Volume

NIntegrate[Pi curve[x]^2, {x, 0, 108}]
(* 13122.5 *)
POSTED BY: Rohit Namjoshi
Posted 2 years ago

Yes, I've done the integral separately. Not a very informative error message. Thanks!

POSTED BY: Kevin Ulmer
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract