1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Normal distribution and star density in a Galaxy

  1. May 19, 2013 #1
    Hey all.

    I'm working on a personal programming project where I'm attempting to simulate (to a small degree) a galaxy. And I have come across a decent 2D density map for a spiral galaxy. This map (array actually) defines a 128x128 grid of values between 0 and 255 representing the frequency of stars found in that 'sector' of space.

    I want to expand this density map into the 3rd dimension and I figure a good way to do that would be to define the height of the galaxy as being n sectors tall and then use a normal distribution curve to distribute the density value (something between 0 and 255) vertically across those 5 sectors.

    My question is, how would I take a number, say 234, and divide it among n 'boxes' or 'sectors' so that it has a normal curve type distribution?
    I attempted to Google this, but I found that what was coming up did not describe what I was looking for so I'm thinking that I don't currently have the vocabulary to describe this particular intent.
  2. jcsd
  3. May 20, 2013 #2

    Stephen Tashi

    User Avatar
    Science Advisor

    A normal distribution has two parameters, the mean [itex] \mu [/itex] and the standard deviation [itex] \sigma [/itex]. Lets say we have 128 boxes. Imagine the boxes as spaces between a ruler that has marks at 0,1,2,..128. Assuming you want the middle of the distribution to be at the middle of the ruler, set [itex] \mu = 64 [/itex].

    Then you have to decide on a value for [itex] \sigma [/itex]. A normal distribution has non-zero values from [itex] - \infty [/itex] to [itex] +\infty [/itex], so you have to decide what part of the distribution you are going to leave out or you have to settle for a distribution that doesn't exactly match a normal distribution by forcing all of the stars to be within the 128 boxes.

    For most programming languages, you can find a library with a function that give the values of the cumulative normal distibution. Let's assume that such a function is

    [itex] F(\mu,\sigma,x) = \int_{-\infty}^x f(\mu,\sigma,x) dx [/itex] where [itex] f(\mu,\sigma,x) [/itex] is the density of a normal distribution.

    The fraction of stars between marks [itex] A [/itex] and [itex] B [/itex] on the ruler is

    [itex] F(64,\sigma,B) - F(64,\sigma,A) [/itex].

    So the fraction of stars between the 0 and 128 marks is

    [itex] M = F(64,\sigma,128) - F(64,\sigma,0) [/itex]

    The fraction that are outside those marks is [itex] 1 - M [/itex].

    The fraction of stars in the kth box is [itex] s_k = F(64,\sigma,k) - F(64,\sigma,k-1) [/itex]. If you want to "renormalize" so that all the stars fall in the marks between 0 and 128, you can make the fraction of stars in the kth box [itex] \frac{s_k}{1-M} [/itex]

    For 234 total stars, the number of stars in the kth box will be [itex] (s_k)(234) [/itex]. So it won't always be a whole number. To convert to a while number, you'll have to decide how to round things off. (If you want the grand total to remain 234, you'll have to round off in a special way!)

    The above calculations don't determine a unique value for [itex] \sigma [/itex]. You'll have to try various values to find one that you like if your goal is only to have a pleasing picture. If you are doing a physical simulation of moving stars, we'll have to investigate the problem further.
  4. Nov 27, 2013 #3
    Any chance you could post your source for the 2D Density Map you have? I'm looking for exactly that
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook