# Calculating the intersection area for circles on spheres

How would one calculate the intersection area of two circles on the surface of a unit sphere, defined by its direction and angle.

In the pictures there are three possible problems.

One where the circles intersect normally, another where they intersect but the center of one of the circles is inside the other and finally one where the entirety of the circle is inside the bigger one. I need a single formula that can calculate all of these.

• Please see this article on MathSE protocol. As onerous as the article may appear to you, it provides a defense mechanism against the MathSE forum being used as a do my homework forum. In particular, please see the Edit-Tools section of the article, and the portion of the article that discusses showing work. It is irrelevant whether the problem is homework. What counts is whether the protocol is observed. Mar 27, 2023 at 14:00

The following method presupposes familiarity with multivariable calculus and requires some algebraic skills in order to perform stereographic projection to the collection of circles. It applies generally to any collection of circles on the 2D unit sphere.

Let $$R$$ be any region that is bounded by a collection of circles on the sphere. The stereographic projection of $$R$$ as described here will be a region $$R'$$ that is also bounded by some collection of circles on the $$(u,v)$$ projection plane. The boundary of $$R'$$ is some curve $$C$$ that consists of a chain of circular arcs joined end-to-end.

In this curvilinear coordinate system the spherical area element is $$dA= \frac{4\ du \ dv}{(1+u^2+v^2)^2} = 4 d( \frac{ - v du + u dv}{1+u^2+v^2})$$.

Green's Theorem in the plane then gives the formula

Spherical area of region $$R = \int \int_{R'}\ dA=4 \oint_{C} \frac{ - v du + u dv}{1+u^2+v^2}$$

To use this formula as a computational tool, you will need to parametrize each circular arc on $$C$$ and also probably need to evaluate the resulting path integrals numerically.

Transforming spherical circle to the plane via algebra

In general, if the equation in space that slices out a known circle on the sphere is written as $$ax+by+cz=d$$ then in stereographic coordinates after making the substitutions $$x= \frac{2u}{ 1+u^2+v^2}, y= \frac{ 2v}{ 1+ u^2+v^2}, z=\frac{u^2+v^2-1}{u^2+v^2+1}$$this becomes the circle whose equation is $$2a u+ 2 bv + c(u^2+v^2-1)=d(1+u^2+v^2)$$ and of course that can be simplified further with a few more algebraic steps. From this Cartesian description you can deduce the radius the circle. (Beware that stereographic projection maps circles to circles, but generally speaking, usually not centers to centers.)

P.S. For a more elementary variation on this technique that applies to area in the plane (not the sphere) you can consult this related post: What is the area of intersection between two circular sectors? (Where can I find more information?)

It's a question of calculating a surface integral of the type:

$$||\Sigma|| := \iint\limits_{\Sigma} 1\,\text{d}\sigma,$$

$$\Sigma \equiv \left\{(x,y,z) \in \mathbb{R}^3 : x^2+y^2+z^2=1, \; a_ix+\,b_iy+c_iz \ge \cos(\omega_i/2), \; \dots\right\}$$

where $$(a_i,b_i,c_i)$$ are the unit vectors and $$0 \le \omega_i \le \pi$$ are the angles of the $$n$$ spherical sectors.

Therefore, parameterizing this surface in spherical coordinates, we have:

$$||\Sigma|| = \iint\limits_A \sin\varphi\,\text{d}\varphi\,\text{d}\theta,$$

$$A \equiv \left\{(\varphi,\theta) \in [0,\pi] \times [0,2\pi] : a_i\sin\varphi\cos\theta+b_i\sin\varphi\sin\theta+c_i\cos\varphi \ge \cos(\omega_i/2), \; \dots\right\}$$

where this double integral, in general, will have to be approximated using numerical methods.

For example, an elementary way consists of the Monte Carlo method:

{ω1, ω2} = {π/3, π/4};
{a1, b1, c1} = Normalize[{1, 1, 1}];
{a2, b2, c2} = Normalize[{1, 1, 2}];

A = a1 Sin[ϕ] Cos[θ] + b1 Sin[ϕ] Sin[θ] + c1 Cos[ϕ] > Cos[ω1/2] &&
a2 Sin[ϕ] Cos[θ] + b2 Sin[ϕ] Sin[θ] + c2 Cos[ϕ] > Cos[ω2/2];

ParallelTable[m = 0; Do[ϕ = RandomReal[{0, π}];
θ = RandomReal[{0, 2π}];
t = RandomReal[{0, 1}];
If[A && t < Sin[ϕ], ++m], {10^n}];
2π^2. m / 10^n, {n, 7}]


{0., 0., 0.375045, 0.323723, 0.336948, 0.343087, 0.34195}

which is very close to what is numerically estimated by Mathematica:

NIntegrate[Sin[ϕ], {ϕ, θ} ∈ ImplicitRegion[A, {{ϕ, 0, π}, {θ, 0, 2π}}]]


0.341892

I'm afraid you can't have a simple closed formula, sorry.