OFFSET
1,1
COMMENTS
The Goode homolosine projection, introduced by John Paul Goode, is a map projection that uses the Mollweide projection above a latitude where the lengths of parallels match, and the sinusoidal projection below it.
For the Mollweide projection, 2*theta + sin(2*theta) = Pi*sin(phi), where theta is the auxiliary angle corresponding to latitude phi.
The condition Pi*cos(phi) = 2*sqrt(2)*cos(theta) matches the half-width of the sinusoidal and Mollweide projections at the transition latitude.
When the equatorial width is normalized to 2, the map height is H = 2*(phi + sqrt(2)*(1 - sin(theta)))/Pi, so the final aspect ratio is 2/H.
FORMULA
Equals Pi/(phi + sqrt(2)*(1 - sin(theta))) where Pi*sin(phi) = 2*theta + sin(2*theta) and Pi*cos(phi) = 2*sqrt(2)*cos(theta).
EXAMPLE
2.307602098422378543380170805130633908558516958648632484266618210...
MATHEMATICA
RealDigits[Pi/(phi + Sqrt[2]*(1-Sin[theta])) /. FindRoot[{Pi*Sin[phi] == 2*theta + Sin[2*theta], Pi*Cos[phi] == 2*Sqrt[2]*Cos[theta]}, {phi, 1/2}, {theta, 1/2}, WorkingPrecision -> 105]][[1]] (* Amiram Eldar, May 16 2026 *)
PROG
(Python)
import mpmath as mp
mp.mp.dps=1000
sol= mp.findroot(lambda ph, th: (2*th+mp.sin(2*th)-mp.pi*mp.sin(ph), mp.pi*mp.cos(ph)/(2*mp.sqrt(2)*mp.cos(th))-1), (0.71, 0.57))
ph=sol[0] # ph is the transition latitude in radians; ph*180/mp.pi is the transition latitude in degrees
th=sol[1] # th is auxiliary angle for Mollweide projection in radians
H=2*(ph + mp.sqrt(2)*(1-mp.sin(th)))/mp.pi
print(str(2/H)[0:200])
CROSSREFS
KEYWORD
nonn,cons
AUTHOR
Donghwi Park, May 04 2026
STATUS
approved
