ASTR323/423 HW #2


1. Luminosity Functions

The Shechter function gives the number of galaxies per unit luminosity, Phi(L)dL. Rewrite this using the connection between absolute magnitude and luminosity to give the number of galaxies per unit magnitude, Phi(M)dM. Mathematically derive the slope of the faint end when plotted logarithmically, ie d(logPhi)/dM, and show that alpha=-1 corresponds to a flat faint end slope in this representation.

Then use the SDSS local galaxy sample you downloaded in Homework #1 to make a luminosity function. Work with r-band magnitudes and plot the logN vs Mr in bins of absolute magnitude that run from -24 to -15 in steps of 0.25 mag. Compare the shape of your LF to that of the Montero-Dorta & Prada "All Galaxies" LF shown in class. On your LF, sketch where the Montero-Dorta & Prada value for M* lies (making sure to correct their M*-5logh value for the Hubble constant you've used in your analysis). Does this M* seem to be reasonable for your LF? In general, describe how well or how poorly your LF follows the approximate shape of a Schechter function -- where does it look reasonable, where does it not? It's probably helpful for this part to think about how you selected the galaxies that make up your sample....

Now choose a range of absolute magnitude over which to fit the faint end power law slope, justify that choice, and then fit a straight line to log(N) vs M over that range to derive alpha. Plot your fit over your data to make sure your fit looks reasonable. Compare your value for alpha to values discussed in class, and discuss any systematic uncertainties that might be affecting your derived value for alpha.
(Note: for our purposes, we will consider log(Phi) and log(N) to be pretty similar, as long as we are not considering very faint galaxies where you have to make corrections to N to account for the galaxies you may have missed in your sample because they are so faint. But in your discussion you should think about this assumption and how it may be affecting your value for alpha...)

2. Thick and thin disks (courtesy Sparke & Gallagher)

In the questions below, Equation 2.8 describes the density of an exponential disk as a function of radius (R), vertical height (z), and spectral type (S) and is given as:



Use that expression to do the following two problems:








3. Photometric Selection (courtesy Sparke & Gallagher)

The histogram below shows the density of stars near the North Galactic Pole (NGP) as a function of B-V color, in a sample of stars chosen to have apparent magnitudes in the range mV=19-20. The dashed lines shows the prediction of a star count model for stars in the thin disk (red), thick disk (green), halo (blue) of the Galaxy, while the black line shows the sum of those components. Note how the thin disk and halo populations separate out nicely by color in this magnitude range. In this problem you will see why this works.



Use the Hipparcos color-magnitude diagram below as your model for thin disk stars, and the color-magnitude diagram for the metal-poor globular cluster M92 as your model for halo stars. (Note you can click/view them to see them larger)

Hipparcos CMD
Globular Cluster CMDs
(Use the calibrated M92 CMD at bottom right!)


 
4. Gaia and stellar kinematics

I have pulled down a Gaia dataset that contains proper motion and distance data for stars with parallaxes >5 milliarcsec that also live within 10 degrees of the disk plane. It's big enough that its best to store it as a binary fits table, which you can read in python by saying:

from astropy.table import Table
import os
filename='Gaia_bLT10_pGT5.fits'
if not os.path.isfile(filename):
   gaia_data=Table.read('http://burro.case.edu/Academics/Astr323/HW/HW2/'+filename)
   gaia_data.write(filename)
else:
   gaia_data=Table.read(filename)

There are close to 300,000 stars in that database, and if you say gaia_data.colnames, you will see the information contained in the table. The file contains:

And remember you access the data by saying for example gaia_data['parallax']. If you wanted the parallax data only for RGB stars, you could say

want = gaia_data['star_type']==2
p = gaia_data['parallax'][want]

First, calculate the distance to each star from the parallax, convert the apparent magnitude to absolute magnitude, and then make a color magnitude plot to make sure things look sensible. There are too many stars to plot each one as a dot, so use this little code snippet to make a binned density plot.

Now, combine the distance and the proper motion in the b direction (Galactic latitude) to calculate each star's W velocity -- the velocity up/down out of the plane.

Do the following for each of the following three samples: All MS starsRGB stars, blue MS stars with Bp-Rp<0.5:

Give a good astronomical discussion of why the values are different or not between the different samples, and compare your numbers to the values given in class.


5. Gaia and the vertical structure of the disk

Here we are going to compute the scale height of the thin disk using Gaia data. Before tackling the data, though, work this out: if the density of stars follows an exponential like rho ~ exp(-z/hz), if you plot log10(rho) versus z, how does the slope of the line relate to the scale height hz?

I pulled down another Gaia dataset for stars within 10 degrees of the North or South Galactic Pole (in other words, straight up or down out of the disk). For this sample, I didnt require that they be within 200 pc of the Sun, but I did make sure they had good parallaxes. So in this sample, there is no hard distance limit, but faint stars drop out of the sample because its hard to get a good parallax for faint stars.

You can read the file the same way as you did above, but this time use filename='Gaia_NSGP.fits'. Like the first dataset, there are about 300,000 stars in that database.

Like before, calculate the distance and apparent magnitude and make a CMD to make sure everything looks good.

Then do the following for the following two samples: All MS stars, red clump stars in the RGB. You should be able to spot the red clump in your CMD; select RGB stars which have an absolute magnitude that within 0.5mag of the clump center.

Count the number of stars in bins of distance, and convert that into a density of stars as function of distance from the plane. Use this code to do that:
N,edges=np.histogram(distance,bins=100,range=[0,4000])
vol=edges**3
dvol=np.diff(vol)
logdens=np.log10(N/dvol)
bincent=0.5*(edges[1:]+edges[:-1])
plt.scatter(bincent,logdens)

In your writeup, explain line-by-line what that code snippet is doing. I want you to understand the code, not just run it!

Fit a straight line to the data for bins <= 1 kpc distant, where the thin disk dominates. Overplot that fit, and use it to derive the thin disk scale height.

After you've done that for each sample, compare the two numbers. How well do they compare to each other, and how well do they compare to values given in class? The red clump stars should give a better estimate for the scale height than the All MS sample. Explain why. Think about the luminosity spread of the two samples, and how that connects to the numbers of stars you observe as a function of distance.

How well does your fit work over the whole range of distances on your plot (not just where you fit)? Explain any differences you see between your fit and the shape of the data points.


6. The mass density of the disk

The scale height and vertical velocity dispersion are tracing the surface mass density of the disk. A rough approximation for how they are related was given in class and is:



Use values for hz and W velocity dispersion that you calculated for RGB stars in the previous two prolem to solve for the surface mass density (in Msun/pc2) of the Galactic disk. PLEASE DON'T WORK IN SI UNITS!!

Grad Student problem #1 (courtesy Heather Morrison):

Assume that you are observing stars in a square degree at the NGP, that the thick disk has a scale height of 1 kpc and the thin disk 300 pc, and the halo has an r^-3 density distribution. Furthermore, assume that the ratio of thin to thick to halo stars at the Sun is 1000:100:1 and that the local density of your tracers (halo giants) is 35 per kpc^3. Draw plots of the number of stars per square degree as a function of z height out to 15 kpc. At what distance will the counts of thick disk stars peak? halo stars? (You will need to account for the variation in volume element along the line of sight as well as the variation in star density.)

Grad Student problem #2:

Let's go back to the solar motion problem and work out the U and V solar motion as well.

First, if we restrict our analysis to stars in the disk plane (small b), the observed velocity of stars projected onto Galactic longitude is a simple linear combination of trig functions that looks like this:



Work out what the trig functions are and make the plus/minus decision. It's easiest just to do this with geometry and common sense: make a sketch, draw vectors, think. Explain how you arrived at your answer.

Now make plots of vl versus l for two samples (seperately): RGB stars, blue MS stars with Bp-Rp<0.5. For each sample, fit that function to the data (make sure you also overplot your fit) to derive Usun and Vsun for two samples:

This is a nonlinear fit you are making, which can be tricky. Use scipy.optimize.curve_fit, and as an input guess give it the values for Usun and Vsun that I gave in class.
Discuss your fitted values for Usun and Vsun, and how well each one matches the solar motion values given in class. Describe differences between the values derived for the two samples.