The first week for the team looking at Metal Poor Stars in the halo of the Milky Way has mainly been getting to grips with the coding language Python, as the minimal coding experience we have is for another programming language. Safe to say this week has been a very steep learning curve but we are improving our coding skills significantly.
The first step of this project was to take a more general approach and look at the spectra of a sample of stars from our own galaxy, but not from the halo. By doing this we could get to grips with analysing spectra and the coding involved. Below is the first plot we made showing the radiative flux of several different stars from the original data (from the European Southern Observatory). (Stars are classified by spectral types; O, B, A , F, G, K, M with O type being the hottest and brightest.)
We then created the same plot but with the typical (if slightly annoying) radiative flux units of ergs/s/cm^2/Å (1 erg is equal to 10e-7 Joules), and used a logarithmic scale to observe the peaks on the spectra more easily (below).
The next step was to download both broad and narrow band filter profiles that allow us to basically ignore the data we don’t want to see and focus on the spectra in the visual wavelengths. A total of 8 filters were used (taken from the COSMOS project), including a narrow band filter NB392, which will be incredibly useful later on in the project when identifying metal poor stars as it focuses on the wavelengths surround the Calcium lines of a spectrum. We had to normalise and interpolate the filters before we could combine them with the spectra of a chosen star (type G2v – a Sun-like star), which effectively maps the spectra of the filters onto the spectrum of the star.
The filters are shaded as we then integrated (found the area under the curve) each filter with respect to the wavelength in order to start calculating the magnitude of the star. From there we could find the average flux density and the central wavelength of each filter to convert the flux into units of per frequency rather than per wavelength, as they have been in throughout. We did this in order to artificially place the star as being 10pc away, which is the distance at which absolute magnitude is taken. The flux is the energy the star is radiating and so we can use this to calculate the magnitude of the star in each filter. We used a Sun-like star in order to be able to test our method and code as we know the magnitude of the Sun.
Our method worked and next week we’ll be moving on to determining the distances of the stars from their apparent magnitudes (absolute magnitudes are from 10pc away but apparent magnitudes are as seen from Earth). We can use this to determine how far into the halo of the Milky Way the metal poor stars we will be looking for are.
The first week of this internship has definitely been more about struggling our way through the basics of Python programming rather than the actual stars, but, while sometimes exhausting and frustrating, it’s necessary in order to be able to analyse stellar spectra and find some metal poor stars.