Wolfram Language

Geo Computation

How Much Does It Weigh?

The weight of an object in a gravitational field is the product of its mass and the value of the gravitational field at the position of the object. On the surface of the Earth, the gravitational field is not constant, and therefore the same object has a different weight at different locations. This example explores the variability of the magnitude of the gravitational field with elevation and latitude.

GeogravityModelData computes several properties of the Earth's gravitational field at a given location.

In[1]:=
Click for copyable input
GeogravityModelData[GeoPosition[{0, 0}]]
Out[1]=

It uses topographic elevation provided by GeoElevationData.

In[2]:=
Click for copyable input
GeoElevationData[GeoPosition[{0, 0}]]
Out[2]=

Ignoring other effects, the gravitational field is generally smaller for a location with similar latitude but higher elevation.

In[3]:=
Click for copyable input
GeoPosition[Entity["City", {"Quito", "Pichincha", "Ecuador"}]]
Out[3]=
In[4]:=
Click for copyable input
GeoPosition[Entity["City", {"Quito", "Pichincha", "Ecuador"}]]; {GeoElevationData[%, UnitSystem -> "Metric"], GeogravityModelData[%, "Magnitude"]}
Out[4]=

Compute values of the gravitational field magnitude at equidistant points on the equator.

In[5]:=
Click for copyable input
equatorialgravity = GeogravityModelData[{GeoPosition[{0, -180}], GeoPosition[{5, 180}]}, "Magnitude"][[1]]
Out[5]=
In[6]:=
Click for copyable input
ListPlot[equatorialgravity, Joined -> True]
Out[6]=

In the following histogram, there are two main peaks, corresponding to land areas and to the bottom of the oceans.

In[7]:=
Click for copyable input
Histogram[equatorialgravity, 20]
Out[7]=

Overlay the magnitude of the gravitational field on a relief map of the Earth.

In[8]:=
Click for copyable input
equatorialgravityplot = ListPlot[equatorialgravity, Axes -> False, Joined -> True, AspectRatio -> 1/8, PlotRangePadding -> None, ImagePadding -> None, ImageSize -> 400, PlotStyle -> Red];
In[9]:=
Click for copyable input
worldmap = GeoGraphics[GeoPath["Equator"], GeoRange -> "World", ImageSize -> 400, GeoBackground -> "ReliefMap"];
In[10]:=
Click for copyable input
Overlay[{worldmap, equatorialgravityplot}, Alignment -> Center]
Out[10]=

To show the variability with latitude, average the gravity field magnitude over longitude and represent the result against latitude.

In[11]:=
Click for copyable input
gravity = Mean /@ GeogravityModelData[{GeoPosition[{-90, -180}], GeoPosition[{90, 180}]}, "Magnitude"];

Antarctica has an obvious effect for low latitudes, due to the added elevation.

In[12]:=
Click for copyable input
ListPlot[gravity, DataRange -> {-90, 90}]
Out[12]=
In[13]:=
Click for copyable input
MinMax[gravity]
Out[13]=

Therefore, there can be changes of the order of 0.5% in the weight of a given object, depending on where it is measured.

In[14]:=
Click for copyable input
MinMax[gravity]; 1 - First[%]/Last[%]

Related Examples

de es fr ja ko pt-br ru zh