bkloppenborg / simtoi

The SImulation and Modeling Tool for Optical Interferometry
GNU General Public License v3.0
7 stars 6 forks source link

Add SATLAS stellar models #67

Open bkloppenborg opened 11 years ago

bkloppenborg commented 11 years ago

The [http://arxiv.org/abs/0809.1870](Spherical ATLAS) stellar modeling software can produce surface intensity profiles as output. These files provide theoretical estimates of the limb darkening profiles of stars. Because these estimates come from discrete models, there may need to be some interoperability between the shader, model, data, and minimization engine. For example, MultiNest's mode separation will need to be disabled to support the discrete steps in the stellar models.

Here are the obvious issues with supporting this type of limb darkening and a little discussion to go with it?

  1. How do we read in the model parameters for the models? Use a consistent naming convention for the files. In the shader configuration file specify the lower bound and upper bound for files to import then use regular expressions when parsing a "shaders/satlas_broadband" directory. While p
  2. How does one convert the parameters from the minimizer to the model grid parameters?
  3. How/where do we do the wavelength -> photometric band conversion in SIMTOI? Both photometric and interferometric data have this property. I think the generic data interface should define photometric bands (UBVRIHJ,NONE) with corresponding wavelength ranges.
  4. Do we only support broadband photometry, or do we want to support spectrally dispersed models? Broadband only for the moment. Call the SATLAS limb darkening "satlas_broadband" to permit future expansion.
  5. How do we implement the limb darkening? We could use an OpenGL shader as all other methods of limb darkening, but we'll need to convert mu values to array indicies. If we do the conversion on the CPU, we would need to implement a new spherical model, reducing the utility/speed offered by shaders. I think the shader is the way to go. Use array_index = floor(mu*n_mu_values) to determine which intensity to use.
  6. Assuming we end up with a few thousand SATLAS limb darkening files, how do we limit what files are read into memory? If we use the bounds in the shader configuration file, do we reload the data every time things are changed? This could result in significant disk access/unnecessary transfer to/from the GPU.