AstroSubpoint[astro]
returns the geo location on Earth that currently has the given astro at its zenith.
AstroSubpoint[astro,date]
returns the geo location on Earth that has astro on its zenith on the given date.
AstroSubpoint[astro,{body,date}]
returns the astro subpoint on a given celestial body as observed on the given date.
AstroSubpoint
AstroSubpoint[astro]
returns the geo location on Earth that currently has the given astro at its zenith.
AstroSubpoint[astro,date]
returns the geo location on Earth that has astro on its zenith on the given date.
AstroSubpoint[astro,{body,date}]
returns the astro subpoint on a given celestial body as observed on the given date.
Details
- The subpoint of an astronomical object is the location on a given body from which that object would be observed with altitude of 90 degrees.
- The astro subpoint of the Sun is called the subsolar point. The astro subpoint of the Moon is called the sublunar point.
- In AstroSubpoint[astro,…], the astro object is any astronomical body, such as Entity["Star","Sun"] or Entity["Planet","Mars"], a named astro location, like the solar system barycenter "SSB", or a GeoPosition location near the surface of an astronomical body.
- The line from the observed astronomical object to the subpoint is perpendicular to the horizontal plane at the subpoint and will generally not intersect the center of the celestial body unless it is spherical.
- AstroSubpoint[astro,{body,date}] returns a geo location of the form GeoPosition[{lat,lon},body].
- For a given celestial body, AstroSubpoint[astro,body] is equivalent to AstroSubpoint[astro,{body,Now}].
Examples
open all close allBasic Examples (4)
Find the current subsolar point:
AstroSubpoint[Entity["Star", "Sun"]]Compute the sublunar point on this date:
AstroSubpoint[Entity["PlanetaryMoon", "Moon"], DateObject[{2000, 1, 1, 0, 0, 0}]]Find which point on Earth has Mars on its zenith on this date:
date = DateObject[{2023, 15, 9, 16, 0, 0}]sp = AstroSubpoint[Entity["Planet", "Mars"], date]Check that the altitude of Mars, as observed from this location on that date, is 90 degrees:
AstroPosition[Entity["Planet", "Mars"], {sp, date}]["Altitude"]Find the subsolar point on Mars on this date:
AstroSubpoint[Entity["Star", "Sun"], {Entity["Planet", "Mars"], DateObject[{2000, 1, 1, 0, 0, 0}]}]Scope (3)
Use AstroSubpoint with any astronomical entity:
AstroSubpoint[Entity["Star", "Sun"]]AstroSubpoint[Entity["Star", "Betelgeuse"]]Compute the current subpoint of the solar system barycenter:
AstroSubpoint["SSB"]Compute the subpoint of a location on the surface of the Moon:
date = DateObject[{2023, 5, 13, 16, 50, 4.9221}, "Instant", "Gregorian", -5.];AstroSubpoint[GeoPosition[{0, 0}, Entity["PlanetaryMoon", "Moon"]], date]Compare to the sublunar point, the subpoint of the center of the Moon:
AstroSubpoint[Entity["PlanetaryMoon", "Moon"], date]GeoDistance[%, %%]Applications (1)
Properties & Relations (5)
Compute the subpoint of an astronomical object for a given date:
date = Nowsp = AstroSubpoint[Entity["Planet", "Neptune"], date]That object will have an altitude of 90 degrees when observed from that location on that date:
AstroPosition[Entity["Planet", "Neptune"], {sp, date}]The subpoint of the star Polaris is close to the North Pole:
AstroSubpoint[Entity["Star", "Polaris"], DateObject[{2023, 9, 22}]]For a given date, compute the equatorial coordinates and the subpoint of an astronomical object:
date = Now;ap = AstroPosition[Entity["Star", "Antares"], {"Equatorial", date}]gp = AstroSubpoint[Entity["Star", "Antares"], date]The declination of the object coincides with the latitude of its subpoint:
{ap["Declination"], gp["Latitude"]}The right ascension of the object does not coincide directly with the longitude of its subpoint:
{ap["RightAscension"], gp["Longitude"]}The difference is given by Greenwich Sidereal Time:
{Subtract@@%, QuantityMagnitude[SiderealTime[GeoPosition[{0, 0}], date], "AngularDegrees"]}The latitude limits of the subsolar point define the Tropics of Cancer and Capricorn:
Plot[Latitude[AstroSubpoint[Entity["Star", "Sun"], DateObject[{2023, 1, d, 0, 0, 0}]]], {d, 1, 365}]Compute the subsolar point on a given date:
date = RandomDate[]ssp = AstroSubpoint[Entity["Star", "Sun"], date]The solar time at that moment from that location is always noon:
SolarTime[ssp, date]Related Guides
Text
Wolfram Research (2024), AstroSubpoint, Wolfram Language function, https://reference.wolfram.com/language/ref/AstroSubpoint.html (updated 2026).
CMS
Wolfram Language. 2024. "AstroSubpoint." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2026. https://reference.wolfram.com/language/ref/AstroSubpoint.html.
APA
Wolfram Language. (2024). AstroSubpoint. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/AstroSubpoint.html
BibTeX
@misc{reference.wolfram_2026_astrosubpoint, author="Wolfram Research", title="{AstroSubpoint}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/AstroSubpoint.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_astrosubpoint, organization={Wolfram Research}, title={AstroSubpoint}, year={2026}, url={https://reference.wolfram.com/language/ref/AstroSubpoint.html}, note=[Accessed: 13-June-2026]}