Extrasolar Planets (updated catalogue)

The home for finished/released addons.
Avatar
EarthSolar
Posts: 12
Joined: 30.12.2016
With us: 3 years 8 months

Post #81by EarthSolar » 12.09.2020, 05:08

I think all IAU-approved proper names should be put in front of the designations so they show up in the name tag. Currently this is true for stars, in line with the default stars, but not the planets.

Avatar
DrJMOS
Posts: 29
Joined: 08.08.2020
With us: 1 month 22 days
Contact:

Post #82by DrJMOS » 12.09.2020, 05:14

I've seen other problem, lot of gas giants that are class 2 appear as class 1 or 3

Avatar
Topic author
Sirius_Alpha
Posts: 96
Joined: 21.03.2019
With us: 1 year 6 months

Post #83by Sirius_Alpha » 15.09.2020, 20:24

DrJMOS wrote:I've seen other problem, lot of gas giants that are class 2 appear as class 1 or 3

Planet temperatures are calculated by the following.
Spoiler

Code: Select all

// Get sudarsky class + albedo.
double L_star = CalculateLuminosity();
for (int i = 0; i < PlanetList.Count; i++)
{
    // Determine planet equilibrium temperature.
    Planet P = PlanetList[i];
    if (!PlanetList[i].Param.Temp.Measured || PlanetList[i].MoonList.Count > 0)
    {
        double numerator = (L_star);
        if (PlanetList[i].Param.BondAlbedo.Measured)
      numerator *= (1 - PlanetList[i].Param.BondAlbedo.value);
        double denominator = 16 * Constants.σ * Math.PI * Math.Pow(PlanetList[i].Param.Orbit.a.ConvertTo(Unit.Meter), 2);
        double Teq = Math.Pow(numerator / denominator, 1.0 / 4.0);
        if (!P.Param.Temp.Measured)
      P.Param.Temp = new Measurement(Teq.ToString(), Unit.Kelvin);

        // Add it for moons now.
        for (int j = 0; j < PlanetList[i].MoonList.Count; j++)
        {
      if (!PlanetList[i].MoonList[j].Param.Temp.Measured)
             PlanetList[i].MoonList[j].Param.Temp = new Measurement(Teq.ToString(), Unit.Kelvin);
        }
    }
 }
 

Stellar luminosity is calculated by
Spoiler

Code: Select all

        public double CalculateLuminosity()
        {
            double R = Param.Radius.ConvertTo(Unit.Kilometer) * 1000; // meters.
            double T = Param.Temp.value; // K.
            double L = 4 * Math.PI * Math.Pow(R, 2) * Constants.σ * Math.Pow(T, 4);
            return L;
        }

Then, giant planet textures are assigned through the following, respecting the temperature transitions given by Sudarsky, et al (2000).
Spoiler

Code: Select all

if (Param.Mass.Measured && Param.Mass.ConvertTo(Unit.EarthMass) > 3000) // Only if we have measured the mass.
{
    return SudarskyClass.BrownDwarf;
}
if (Param.Temp.ConvertTo(Unit.Kelvin) > 1500)
{
    if (!Param.GeometricAlbedo.Measured)
        Param.GeometricAlbedo = new Measurement("0.5"); // Celestia Default.
    return SudarskyClass.V;     // Metal/silicate clouds.
}
if (Param.Temp.ConvertTo(Unit.Kelvin) > 900)
{
    if (!Param.GeometricAlbedo.Measured)
        Param.GeometricAlbedo = new Measurement("0.05"); // Celestia Default.
    return SudarskyClass.IV;    // Alkali clouds.
}
if (Param.Temp.ConvertTo(Unit.Kelvin) > 350)
{
    if (!Param.GeometricAlbedo.Measured)
        Param.GeometricAlbedo = new Measurement("0.1"); // Celestia Default.
    return SudarskyClass.III;   // Cloudless.
}
if (Param.Temp.ConvertTo(Unit.Kelvin) > 250)
{
    if (!Param.GeometricAlbedo.Measured)
        Param.GeometricAlbedo = new Measurement("0.75"); // Celestia Default.
    return SudarskyClass.II;    // Water clouds.
}
if (!Param.GeometricAlbedo.Measured)
    Param.GeometricAlbedo = new Measurement("0.5"); // Celestia Default for Class I.
return SudarskyClass.I;         // Ammonia clouds.

If you find an error in my code, or that the orbit parameters I am using for a particular extrasolar planet are incorrect. Definitely let me know. Another potential source of error would be a bad value for the luminosity of the star -- likely due to an incorrect radius or temperature input. The latter would unfortunately not manifest in the .stc file unfortunately.
Exoplanet nerd. I maintain a monthly-updated exoplanet catalogue here:
https://celestia.space/forum/viewtopic.php?f=23&t=18705


Return to “Add-on releases”

Who is online