Skip to content

Releases: timothydmorton/isochrones

v2.1 -- enabling population generation

05 Feb 08:38
Compare
Choose a tag to compare

The biggest update in this release is the addition of the populations submodule (thanks to the request by and collaboration of @andersdot), which streamlines simulating observed populations of stars (see docs).

Other minor updates:

  • An update to the Gaia bandpasses from https://arxiv.org/abs/1808.02820 (thanks @segasai)
  • Updated summary.py (used in starfit-summarize) to use BasicStarModel objects.
  • Fixed a bug with .generate() method that would cause it to hang indefinitely if given an out-of-bounds parameter.
  • Enabled pre-packaged priors (e.g., SalpeterPrior, ChabrierPrior, AVPrior) to receive custom bounds.
  • Refactored logging (thanks @dfm)
  • Enabled .generate() to take an all_As keyword argument, which if true creates columns with specific extinctions in each band (to allow, e.g., for de-reddening a simulated population of stars).

v2.0.1

26 Jun 21:47
Compare
Choose a tag to compare
  • Fixed a bug with building the samples dataframes for BinaryStarModel and TripleStarModel.
  • Add some functionality to write a large number of star.ini files at once.

Version 2.0 --- major update

10 May 21:26
Compare
Choose a tag to compare

Isochrones 2.0 contains the following major updates and improvements:

  • All-new documentation: https://isochrones.readthedocs.io
  • Major re-implementation of most of the core objects.
  • Grids are now interpolated using "equivalent evolutionary phase," or EEP, which enables fitting evolved stars.
  • Two kinds of interpolation grids may be used; either isochrone grids, for which the grid parameters are (EEP, age, [Fe/H]), or evolution track grids, for which the grid parameters are (mass, EEP, [Fe/H]).
  • Evolutionary model grid interpolation and bolometric correction interpolation are explicitly separated. The use of bolometric correction grids also means that treatment of extinction is much more accurate than in isochrones v1.x.
  • Addition of a new .generate() method for the model grids that explicitly allows generation of synthetic stellar properties, as a function of (mass, age, [Fe/H])---even though the properties are interpolated using EEP.
  • New, faster-fitting StarModel objects for simple specialized fitting cases (i.e. single stars and fully blended multiples): SingleStarModel, BinaryStarModel, and TripleStarModel.

If you are upgrading from isochrones 1.x, you will need to delete your ~/.isochrones (or $ISOCHRONES) directory to start fresh.

Note that isochrones 2.0 currently implements only the MIST models (and the MIST bolometric correction grids). But hopefully we can incorporate other new models grids soon!

Minor updates

25 Apr 16:31
Compare
Choose a tag to compare

Note, this is the final incremental release of the isochrones v1.x series implementing some very minor fixes/improvements; the next release will be a major release with v2.0 that will bring many changes and improvements.

This incremental release contains the following changes:

  • Make density an allowed stellar property to work with
  • Allows starfit script to add additional bandpasses to the samples it writes via the --bands argument
  • Adds DECam filters to filter list
  • Adds TESS & gaia bands to default MIST filters

Fix starfit bug

17 Jul 15:14
Compare
Choose a tag to compare

This release fixes a bug in which photometric bands were sometimes not getting loaded appropriately by starfit. It also adds a unit test for the starfit function in starfit.py.

v1.2: Updating to MIST models v1.1

01 Jun 22:59
Compare
Choose a tag to compare

This release both makes MIST version 1.1 default (notably including the new Gaia G, BP, and RP bands, as well as the TESS bandpass) and simplifies how isochrones downloads model grids. Before, it had downloaded pre-packaged grids for both Dartmouth and MIST that were gzipped tar files of selected photometric systems. Now, individual tarballs are downloaded as those bands are requested. And if you really want to use MIST 1.0 still, you may still initialize it with a version=1.0 argument. You may also try out a the MIST grids with v/vcrit = 0.4 (rather than the default non-rotating v/vcrit = 0) by initializing your MIST isochrone with the vvcrit=0.4; e.g. mist = get_ichrone('mist', vvcrit=0.4).

When you upgrade to this version, I recommend that you remove your current ~/.isochrones (or $ISOCHRONES) directory so you can start fresh and clean. This will clear out all the pre-calculated/formatted HDF grids, so you can be sure of actually using MIST 1.1 instead of reading in the old HDF files.

v1.1.1

12 May 05:40
Compare
Choose a tag to compare

Changes/bugfixes

  • Makes sure HDF files do not remain open after StarModel.load_hdf.
  • Adds parallax (if present) to the information displayed with StarModel.print_ascii.
  • Adds support of pickling StarModel objects.
  • Corrects bug with Isochrone being called with different length arguments.
  • Includes correct test data to allow unit tests to run.
  • Adds Gaia DR2 query support.

Known issues

  • Documentation is not yet fully updated.
  • Treatment of extinction is still not appropriate for very large bandpasses. Do not fit to Gaia G band.
  • Isochrone interpolation is still unreliable for evolved stars, especially with the MIST grid interpolation as currently implemented. Be suspicious if fitting subgiants or giants.

Version 1.1: vespa compatibility; py3; fix dartmouth; better testing

10 Oct 15:24
Compare
Choose a tag to compare

This version will now be compatible with vespa, after vespa's next upgrade.

Also this release fixes a major issue with the dartmouth.tri file that was breaking with scipy 0.19. Everything should also now be python 3-compatible.

To use 1.1, you will have to delete the dartmouth tables in your .isochrones (or $ISOCHRONES) directory, and then let the code re-download them for you.

Documentation has still not been updated, but will be with the next release. This is a functional quick-fix for the major issues, and documentation will follow.

v1.0 Initial release

17 Oct 11:38
Compare
Choose a tag to compare

First release of version 1.0. Significant changes from previous versions.

  • MIST models are now available (much broader coverage in mass, age, and metallicity), in addition to Dartmouth.
  • Book-keeping is much more organized with the new ModelGrid object, which takes the model grids exactly as published and does all the parsing as part of the package. This should make it easier to extend to using other model grids.
  • BinaryStarModel and TripleStarModel no longer exist; now you can just provide an N=2 keyword argument to StarModel.
  • Support for non-trivial collection of photometric bands for multiple stars: e.g., pair of stars unresolved in 2MASS but resolved in high-resolution imaging.
  • Isochrone object can now predict density, nu_max, and delta_nu, to help support transit host stars and asteroseismic stars, where such data is available.

MultiNest fitting; unit tests

15 May 14:18
Compare
Choose a tag to compare

Big changes to how StarModel fits happen now---fitting now defaults to using MultiNest via PyMultiNest. To take advantage of this change, you must install MultiNest and PyMultiNest. If you don't have these packages, you can follow these directions to install them.

MultiNest does a much better job than emcee of exploring the stellar model parameter space when only photometry is being used as observational constraints, because the posterior can be quite multi-modal. As a result, you must use MultiNest if you want a fair fit when you're just using photometry.

The way to fit a StarModel now is using the .fit() method, which will default to .fit_multinest() if MultiNest is available, and will otherwise default back to using emcee via .fit_mcmc(). Please let me know if you have any troubles with this.

The starfit command-line script should work the same as before; again defaulting to MultiNest if available.

In addition, I have finally included unit tests: type nosetests isochrones on the command line to run them. If all goes well, everything should be OK.

Another note---- I have also fixed a bug in the dartmouth triangulation file used for interpolation; if you have been using isochrones before with the Dartmouth grids, you should get an error now when you try to load them, asking you to delete and re-download the dartmouth.tri file. Again, let me know if you have a problem with this.