Introduction to Chronostar#

Chronostar is a wonderful tool for identifying and characterising unbound stellar associations and is particular adept at determining kinematic ages.

The next generation of Chronostar prioritises simplicity, flexibility and extensibility. The default behaviour addresses the simplest scenario but the means of extending the capabilties for more complex scenarios is straight forward; by default Chronostar-TNG provides abstract base classes which clearly dictate required interfaces as well as many different example reifications for the most basic scenarios. How one actually extends these example implementations to address complex scenarios is left to the user. ;)

The framework of Chronostar TNG consists of 4 classes. A Driver, a Initial Conditions Pool, a Mixture and a Component.

A graphical representation of how the classes connect.

The goal of Chronostar is to be a flexible framework for fitting Gaussian Mixture Models to astronomical data. This will be achieved by utilising “injected dependencies”. The Driver is composed of a collection of 3 classes (ICPool, Mixture and Component) for which Chronostar provides many implementations. Anyone wishing to modify aspects of Chronostar (e.g. input data, fitting method, models of components) simply needs to provide the driver with their own class that matches the required interface, whether that be by writing the class from scratch, or by using inheritance to extend pre-existing classes. Further details on the base classes and the provided implementations are outlined in General Overview.