Quelques éléments de comparaison.
Montrer les ressemblances et différences entre les deux populations stellaires en utilisant deux types de représentations graphiques :
J/AJ/122/3219
de la base de données en ligne Vizier, parce qu'il donne accès directement aux données des deux amas globulaires.Remarques:
Vizier.ROW_LIMIT = -1
permet de lire la totalité des lignes du catalogue (sinon il n'en charge que 50 lignes).from astroquery.vizier import Vizier
permet de charger directement depuis la base de données.import matplotlib.pyplot as plt
import csv
import numpy as np
from astroquery.vizier import Vizier
import pylab
# Lectures des indices B-V de M3 et M13
Vizier.ROW_LIMIT = -1
catalog1 = Vizier.get_catalogs('J/AJ/122/3219')
indice1 = catalog1[0]['B-V'] # indices de couleur de M3
indice2 = catalog1[1]['B-V'] # indices de couleur de M13
Le codage d'une fonction est justifié : on aura au moins deux séries de valeurs à convertir.
def B_V_temp(indice):
""" Convertit un indice B-V en température Kelvin """
temp = np.array([])
temp = 4600 * ( (1 / (0.92 * indice + 1.7 ) ) + ( 1 / (0.92 * indice + 0.62) ))
return temp
On effectue successivement la conversion pour M3
puis pour M13
.
indicetempM3 = B_V_temp(indice1)
indicetempM13 = B_V_temp(indice2)
Python, complété par matplotlib et pylab fournit le nécessaire.
fig = plt.figure(1, figsize=(7,12)) # dimensions du cadre
BoxName = ['M3', 'M13']
data = [indicetempM3, indicetempM13]
plt.boxplot(data)
pylab.xticks([1,2,3], BoxName)
axes = plt.gca()
axes.set_xlabel("Populations stellaires")
axes.set_ylabel("Température de surface")
M3
et M13
sont très semblables.M13
, les petits cercles qui représentent les étoiles hors-moyenne paraissent plus nombreux.Partant de la même base de données, l'on va tracer deux diagrammes HR dans un même cadre.
Pour cela, on commence comme plus haut...
import matplotlib.pyplot as plt
import csv
import numpy as np
from astroquery.vizier import Vizier
import pylab
# import scipy.optimize
# Lectures des indices B-V de M3 et M13
Vizier.ROW_LIMIT = -1
catalog1 = Vizier.get_catalogs('J/AJ/122/3219')
print(catalog1)
# [0] = M3
# [1] = M13
indice1 = catalog1[0]['B-V']
vmag1 = catalog1[0]['Vmag']
indice2 = catalog1[1]['B-V']
vmag2 = catalog1[1]['Vmag']
... sauf que l'on ne convertit pas les indices de couleur en températures.
Le code Python utilisé ici est très ressemblant à celui présenté dans divers articles précédents.
fig = plt.figure(1, figsize=(8,12)) # dimensions du cadre
plt.plot(indice1, vmag1, linestyle='none', marker = '+', c = 'black', markersize = 4, label="M3")
plt.plot(indice2, vmag2, linestyle='none', marker = 'x', c = 'red', markersize = 4, label="M13")
axes = plt.gca()
axes.set_xlabel("Couleur : B-V")
axes.set_ylabel("Magnitudes")
axes.invert_yaxis()
plt.legend(loc='right')
Quand j'ai vu apparaître ce double diagramme, j'ai ressenti du plaisir : il était "bavard" (mettait en évidence plusieurs faits).
M13
met en évidence une "barre oblique rouge" qui n'a pas d'équivalent chez M3
.+
qui représente la "branche horizontale" du diagramme de M3
qui existe à peine dans M13
. L'article de Wikipedia consacré à la HB contient ceci :
Il s'agit typiquement d'étoiles de population II, donc âgées et de faible métallicité. Les étoiles de population I, plus jeunes, plus massives et à métallicité plus élevée, n'empruntent pas la branche horizontale après le flash de l'hélium mais tendent plutôt à se regrouper dans le red clump, qui est en quelque sorte le pendant à métallicité élevée de la branche horizontale.
"Population âgée" : terme souvent associé aux amas globulaires.
Ces quelques lignes, rapides et (trop) superficielles devront être complétées.