TemperatureMap#
-
class VSPEC.gcm.heat_transfer.TemperatureMap(epsilon, t0:
astropy.units.Quantity
)# Bases:
object
A map of the surface temperature.
- Parameters:
epsilon (float) – The thermal inertia.
t0 (astropy.units.Quantity) – The fiducial temperature.
-
eval(lon:
astropy.units.Quantity
, lat:astropy.units.Quantity
, alpha: float)astropy.units.Quantity
# Evaluate the temperature map at a point of points.
- Parameters:
lon (astropy.units.Quantity) – The longitude of the points to evaluate.
lat (astropy.units.Quantity) – The latitude of the points to evaluate.
alpha (float) – The temperature ratio between the pole and the equator
- Returns:
The surface temperature at the desired points.
- Return type:
Notes
The following math was done by Ted Johnson on 2024-01-26. The goal is to add a parameter in to account for latitudinal mixing. Here is my setup for the problem:
\[f(x,\alpha) ~\text{is the temperature as a function of latitude}\]Where \(\alpha\) is defined such that \(f(\pi/2,\alpha) = \alpha f(0,\alpha)\).
The flux at the surface is then \((f(x,\alpha))^4\). Due to the polar coordinate system the relative area is \(\cos{x}\)
We can then say that because of the Stephan-Boltzmann law, the following quantity is invarient:
\[I = \int_{0}^{\pi/2} (f(x,\alpha) \cos{x})^4 dx\]We also know that in the case of no latitudinal mixing, the temperature is:
\[f(x,0) = \cos(x)^{1/4}\]We can plug this in to the integral to see
\[\begin{split}I = \int_{0}^{\pi/2} (\cos(x)^{1/4} \cos{x})^4 dx \\ = \int_{0}^{\pi/2} (\cos{x})^5 dx \\ = \frac{8}{15}\end{split}\]We can then look at the other limit. Let \(T_0\) be the temperature at which the equator and pole are equal. Then the temperature is
\[f(x,1) = T_0\]And the integral is
\[I = \int_{0}^{\pi/2} (T_0 \cos{x})^4 dx = \frac{8}{15}\]With the knowledge that \(\int_{0}^{\pi/2} (\cos{x})^4 dx = \frac{3\pi}{16}\) we find that:
\[\begin{split}T_0 = \left(\frac{2^7}{45\pi}\right)^{1/4} \\ = 0.9754654591261265\end{split}\]We then can create a general equation for the temperature:
\[f(x,\alpha) = T_0 \alpha + (1-\alpha) \cos(x)^{1/4}\]
-
classmethod from_planet(epsilon: float, star_teff:
astropy.units.Quantity
, albedo: float, r_star:astropy.units.Quantity
, r_orbit:astropy.units.Quantity
)# Generate a TemperatureMap given the properties of a planet.
- Parameters:
epsilon (float) – The thermal inertia of the planet.
star_teff (astropy.units.Quantity) – The effective temperature of the host star.
albedo (float) – The Bond albedo of the planet.
r_star (astropy.units.Quantity) – The radius of the host star.
r_orbit (astropy.units.Quantity) – The planet’s orbital radius.