SKIRT / SKIRT9

SKIRT version 9 -- advanced radiative transfer in dusty systems
http://www.skirt.ugent.be
GNU Affero General Public License v3.0
36 stars 30 forks source link

Support FSPS-generated SED families #2

Closed petercamps closed 4 years ago

petercamps commented 5 years ago

Description Support SED families based on custom SED templates generated by the user through the stellar population synthesis code FSPS.

Context SKIRT 8 included support for a particular FSPS SED family. This feature was not carried forward to SKIRT 9 because it seemed fairly specific to a particular research project. The goal here is to find a more generic mechanism that supports any custom-generated FSPS SED family.

petercamps commented 4 years ago

With commit #23 we added support for two workflows related to FSPS-generated SED families:

  1. The SKIRT FSPSSEDFamily class offers built-in FSPS SED families generated using the default MIST isochrones and the default MILES spectral libraries, excluding dust attenuation and emission as well as nebular emission, for each of the Salpeter, Chabrier and Kroupa IMFs. If one of these built-in SED families suits your use case, you don't need workflow 2.

  2. Users who need one or more FSPS SED families generated with other settings than the built-in families can use the SKIRT FileSSPSEDFamily class, as follows:

    • Download the FSPS code from https://github.com/cconroy20/fsps and follow the installation instructions.
    • Adjust the compile-time options and the main program to your needs; more details are provided in the documentation of the 'storedtable/do/fsps_to_stored_table.py' script in PTS
    • Compile and run your adjusted program; this should output a separate ".spec" output file for each metallicity value.
    • Run the PTS 'fsps_to_stored_table' script to convert the set of ".spec" files into a single SKIRT stored table file (".stab").
    • Place the stored table file in the SKIRT input directory or in some common location.
    • Configure a FileSSPSEDFamily instance in the SKIRT parameter file with the appropriate file name or path

This should address the needs described in this issue.

petercamps commented 4 years ago

Forgot to mention: after pulling the new code and building, you also need to perform the `downloadResources.sh' shell script to download the extra built-in resources.