Metadata-Version: 1.1
Name: mosfit
Version: 0.2.3
Summary: Maximum likelihood analysis for fitting semi-analytical model predictions to observed astronomical transient data.
Home-page: https://github.com/guillochon/mosfit
Author: James Guillochon & Matt Nicholl
Author-email: guillochon@gmail.com
License: MIT
Download-URL: https://github.com/guillochon/mosfit/tarball/0.2.3
Description: <p align="center"><img src="logo.png" align="left" alt="MOSFiT" width="300"/></p>
        [![Build Status](https://img.shields.io/travis/guillochon/MOSFiT.svg)](https://travis-ci.org/guillochon/MOSFiT)
        [![Coverage Status](https://coveralls.io/repos/github/guillochon/MOSFiT/badge.svg?branch=master)](https://coveralls.io/github/guillochon/MOSFiT?branch=master)
        [![Python Version](https://img.shields.io/badge/python-2.7%2C%203.4%2C%203.5%2C%203.6-blue.svg)](https://www.python.org)
        [![PyPI version](https://badge.fury.io/py/mosfit.svg)](https://badge.fury.io/py/mosfit)
        
        `MOSFiT` (**M**odular **O**pen-**S**ource **Fi**tter for **T**ransients) is a Python 2.7/3.x package that performs maximum likelihood analysis to fit semi-analytical model predictions to observed transient data. Data can be provided by the user, or can be pulled automatically from the [Open Supernova Catalog](https://sne.space) by its name, and thus the code can be used to fit *any* supernova within that database, or any database that shares the format described in the [OSC schema](https://github.com/astrocatalogs/supernovae/blob/master/SCHEMA.md) (such as the [Open TDE Catalog](https://tde.space) or the [Open Nova Catalog](https://opennova.space)).<br clear="all">
        
        ##Getting Started
        
        To install `MOSFiT` into your Python environment, clone the package and then run the `setup.py` file:
        
        ```bash
        git clone https://github.com/guillochon/MOSFiT.git
        cd MOSFiT
        python setup.py install
        ```
        
        Once installed, MOSFiT can be run from any directory, and it's typically convenient to make a new directory for your project.
        
        ```bash
        mkdir mosfit_runs
        cd mosfit_runs
        ```
        
        Then, to run `MOSFiT`, pass an event name to the program via the `-e` flag (the default model is a simple Nickel-Cobalt decay with diffusion):
        
        ```bash
        python -m mosfit -e LSQ12dlf
        ```
        
        Multiple events can be fit in succession by passing a list of names separated by spaces (names containing spaces can be specified using quotation marks):
        
        ```bash
        python -m mosfit -e LSQ12dlf SN2015bn "SDSS-II SN 5751"
        ```
        
        MOSFiT is parallelized and can be run in parallel by prepending `mpirun -np #`, where `#` is the number of processors in your machine +1 for the master process. So, if you computer has 4 processors, the above command would be:
        
        ```bash
        mpirun -np 5 python -m mosfit -e LSQ12dlf
        ```
        
        MOSFiT can also be run without specifying an event, which will yield a collection of light curves for the specified model described by the priors on the possible combinations of input parameters specified in the `parameters.json` file. This is useful for determining the range of possible outcomes for a given theoretical model:
        
        ```bash
        mpirun -np 5 python -m mosfit -i 0 -m magnetar
        ```
        
        The code outputs JSON files for each event/model combination that each contain a set of walkers that have been relaxed into an equilibrium about the combinations of parameters with the maximum likelihood. This output is visualized via an example Jupyter notebook (`mosfit.ipynb`) included with the software in the main directory, which by default shows output from the last `MOSFiT` run.
        
Keywords: astronomy,fitting,monte carlo,modeling
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Astronomy
Classifier: Topic :: Scientific/Engineering :: Physics
