Stellar ages

Below, algorithms for estimating stellar ages based on rotation and chromopsheric activity are given.

Gyrochronological age

PyAstronomy.pyasl.gyroAgeBarnes(p, bv)

Calculate gyrochronological age according to Barnes 2007.

The gyrochronological age is calculated according to Eq. 3 in Barnes 2007 (ApJ 669, 1167). The derivation of the error follows Eq. 16.


Stellar rotation period [d].


B-V color [mag]. Supported range is 0.4-1.6 mag.

Stellar agefloat

The gyrochronological age [Ga].

Age errorfloat

The error on the age [Ga].


from __future__ import print_function, division
from PyAstronomy import pyasl

# Parameters of the Sun (Barnes 2007, p 1174)
bv = 0.642
p = 26.09

# Obtain solar age ...
age = pyasl.gyroAgeBarnes(p, bv)
# ... and print it
print("Solar age: {0:4.2f} +/- {1:4.2f} Ga".format(*age))

Chromospheric age


Calculate the chromospheric age according to Donahue 1998.

Donahue 1998 (ASPC 154, 1235) give a relation between chromospheric activity as measured by the R’HK index and the age of late-type stars (Eq. 1).

As the level of stellar activity undergoes continuous change, Donahue cautions that individual measurements of the activity level yield notoriously poor age estimates. As an example, the spread in chromospheric solar age resulting from the 11 yr activity cycle is given, which amounts to about 2.5 Ga. This gives an idea of the accuracy of the estimates.


Chromospheric activity index log10(R’HK).


Stellar age [Ga].


from __future__ import print_function, division
from PyAstronomy import pyasl

# Approximate chromospheric age of the Sun
print("Solar age: {0:4.2f} Ga".format(pyasl.chromoAgeRHK(-4.95)))