I am looking for a way to find the surface area of a contour from ContourPlot3D
. Here is an example where I might like to find the area of the contour surface to G
that equals -5:
G[x_, y_, z_] :=
-2 Log[(2 + 2 Sqrt[((y)^2 + (z)^2)^2 + (-1 - Abs[x])^2] + 2 Abs[x])/
(-2 + 2 Sqrt[((y)^2 + (z)^2)^2 + (1 - Abs[x])^2] + 2 Abs[x])] -
2 Log[(1. + 2 Sqrt[((x)^2 + (y)^2)^2 + (-0.5 - Abs[-0.5 + z])^2] +
2 Abs[-0.5 + z])/
(-1. + 2 Sqrt[((x)^2 + (y)^2)^2 + (0.5 - Abs[-0.5` + z])^2] +
2 Abs[-0.5 + z])]
ContourPlot3D[G[x, y, z], {x, -2, 2}, {y, -2, 2}, {z, -2, 2},
Contours -> {-5}]
I would prefer a general method that would work even with more complicated functions than this. I don't know if there is a way to derive the area from the contour plot itself, or some other way accomplish this. Any ideas?