HI Rotation Curve


Observed curve

In order to plot the rotation curve, we need the radius of the orbit of each cloud to go along with the orbital velocities you just calculated. We start with the Galactic Longitude glon of each cloud (from the filename of each observation):

glon = [17 21 ... 65];

Make sure the order of longitudes in your array matches the order in which you measured your frequencies in freq. Now calculate the orbital radius of the cloud, knowing that sine of the angle glon is the orbital radius of the cloud R divided by the orbital radius of the Sun R_sun. Note that the sin function in MATLAB assumes that angles are given in radians instead of degrees:

R_sun = ... ;  % in kpc
R = R_sun*sin( ... );

If you followed the directions in Orbital velocity of the cloud, you should now have an array freq of the smallest frequencies from all 13 files. To include the Sun's orbital radius and velocity, add a 14th element to the arrays:

vorb(14) = v_sun;  % in km/s
R(14) = R_sun;  % in kpc

If you haven't saved the orbital velocity and orbital radius of the Sun as v_sun and R_sun, then just use the values 220 and 8.5.

Now let's see what the rotation curve looks like:

figure(2); clf;
plot( ... );

Theoretical curve

The distribution of luminous matter in the Galaxy suggests that most of the Galaxy's mass is in the center, so we expect Keplerian motion (i.e. decreasing velocity with increasing distance, like in our Solar System) of objects beyond the center; This gives a rotation curve with $v_{orb} \propto \sqrt{R}$ in the small radii (the inner 800 pc or so), and $v_{orb} \propto 1/\sqrt{R}$ if R is large. The file TheoCurve.dat on the lab website is an example of the disk rotation curve:

curve = load('TheoCurve.dat');

We can compare the observational results with the theoretical curve:

hold on
plot( ... )
ylim([0 300])
legend( ... ,'Location','Best')

Now you should see why people believe there must be dark matter somewhere in the Galaxy!