Skip to main content
1 of 5
Subho
  • 1.5k
  • 1
  • 9
  • 18

Findng solid angle subtended by a closed 2D surface of data points in 3D space

Suppose, I have a closed 2D region of data points.

 𝓡 = 
  DiscretizeRegion[
   ImplicitRegion[(x - 2)^2 + (y - 3)^2 <= 1 && z == 5, {x, y, z}], 
   MaxCellMeasure -> 0.0001];

enter image description here

Now, I want to compute the solid angle subtended by the region so covered at the origin. The formula is: $$\int\int_{\mathcal{R}}\sin \theta \;d\theta\;d \phi$$

I tried three ways:

Integrate[Sin[\[Theta]], 
 Element[{r, \[Theta], \[Phi]}, 
  MeshRegion[pointsInPolar, Point[Range[500]]]]]
 (*472.178*)
Integrate[Sqrt[x^2 + y^2]/
 Sqrt[x^2 + y^2 + z^2], {x, y, z} \[Element] 
  MeshRegion[points, Point[Range[500]]]]
   (*291.617*)
Integrate[Sqrt[x^2 + y^2]/
 Sqrt[x^2 + y^2 + z^2], {x, y, z} \[Element] ConvexHullMesh[points]]

The last one flags an error.

None of them is close to the expected value of:

In[54]:= Integrate[Sqrt[x^2 + y^2]/
 Sqrt[x^2 + y^2 + z^2], {x, y, z} \[Element] \[ScriptCapitalR]]

Out[54]= 1.83707

How to go about doing it?

Subho
  • 1.5k
  • 1
  • 9
  • 18