Page 1 of 1

Estimating mass for non-main sequence stars

Posted: 22.01.2003, 10:06
by dtessman
I have been estimating Radius and Mass from Absolute Magnitude and Temperature. Lots of fun math. Radius is straight forward, but mass only works for Main Sequence Stars, which are generally 3.5 root of the luminosity.

Does anyone have a formula to estimate mass for the non-main sequence luminosity classes?

This is for the DefaultSSD mechanism of the Zelestra SSR. Basically it generates a Star System Definition for any hipparcos catalog number within the Zelestra SSR that isn't allocated for a Simulation. for example: http://www.zelestra.com/servlets/ssdgen?id=32349

Here is the code (java):

Code: Select all

lum = (Math.exp((4.83 - absmag) / 1.085736) * 4E+26);
area = lum / (5.67E-8 * Math.pow(temp,4));
radius = (Math.sqrt(area / (4 * 3.14159)) / 1000);
mass = (Math.pow((lum / 4E+26), (1 / 3.5f)) * 1.99E+30);


Please let me know if you see anything wrong with it.

Thanks,

Posted: 04.02.2003, 05:18
by billybob884
using that formula, its going to take a looooong time to sort through all 100,000 stars (or more for those with 1 million or 2 million packs)

Posted: 25.02.2003, 03:12
by steve_vmwx
Dave

Being but a humble astronomy student I think the answer might be a bit complicated or really easy depending on how you look at it ;)

PMS stars by their nature are an unstable breed of beasties. The fact that they haven't settled into the main sequence makes their base properties variable. T Tauri's (lower end - GKM) spring to mind in particular!

I suggest the short answer for mass it the typical masses quoted for each spectral class (eg. O = 150sm, M = 0.2sm etc etc).

The biggest variable is radius! Are we still collecting gas or about to start fusion :o

Cheers
Steve

Posted: 25.02.2003, 10:02
by Guest
billybob884 wrote:using that formula, its going to take a looooong time to sort through all 100,000 stars (or more for those with 1 million or 2 million packs)

I guess that a row polinomial approximation will be fine for main sequence stars, and can be computed in a fraction of second on GHz class machines.

Major problems can come for red giant and horizonta branch stars.
Perhaps for horizontal branch we can find some dependency of mass from temperature, but nothing like that does exist on the red giant branch: stars on all masses follow nearly the same path.
Mass influences the maximum of luminosity a star can reach, but no one can says that a stars reached its maximum until it leaves the red giant branch delivering its atmosphere as a planetary nebula and rapidly becoming a white dwarf, or exploding as a supernova.

For white dwarfs, mass is simply related to the radius.

Posted: 13.03.2003, 01:51
by dtessman
If someone is interested in supplying an average Mass column to this table, I would be much obliged.

Posted: 11.05.2003, 03:20
by marc
I used this code for my gravity mod of celestia.

Code: Select all

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#ifdef USE_GRAVITY
//star mass info for main sequence stars from tables found on the internet
//http://curriculum.calstatela.edu/courses/builders/lessons/less/les1/StarTables.html
//in units of sols 
//caution if these values are changed then the starlistshould be recreated.

static float massO[10] =
{  //guessed first 4 entries
    210, 180, 150, 120, 90,
    60, 37, 30, 23, 23.3f
};

static float massB[10] =
{
    17.5f, 14.2f, 10.9f, 7.6f, 6.5f, 5.9f, 5.2f, 4.5f, 3.8f, 3.35f
};

static float massA[10] =
{
    2.9f, 2.72f, 2.54f, 2.36f, 2.2f, 2.0f, 1.92f, 1.84f, 1.76f, 1.65f
};

static float massF[10] =
{
    1.6f, 1.56f, 1.52f, 1.48f, 1.44f, 1.4f, 1.34f, 1.26f, 1.19f, 1.10f
};

static float massG[10] =
{
    1.05f, 1.025f, 1.0f, 0.97f, 0.95f, 0.92f, 0.89f, 0.87f, 0.842f, 0.82f
};

static float massK[10] =
{
    0.79f, 0.766f, 0.742f, 0.718f, 0.694f, 0.670f, 0.64f   ,0.606f, 0.575f, 0.55f
};

static float massM[10] =
{
    0.510f, 0.445f, 0.400f, 0.350f, 0.300f, 0.250f, 0.207f, 0.163f, 0.120f, 0.100f
};


#endif //USE_GRAVITY
//`````````````````````````````````````````````````````````````````````````````````````````````````


It needs some work though.