Skip to content

MichaelSeifert/cosmic_anisotropy

Repository files navigation

# cosmic_anisotropy

## Project Description
This repository contains the files related to the development of a codebase in Python which performs a simple Monte Carlo simulation to determine best fit parameters in an anisotropic model of the universe. It was a join effort between Wyatt Carbonell and Azadé Modaressi, replicated a Mathematica file developed by Michael Seifert, and uses simulated data generated by Chloe Stults and Tori Plaskon. Our goal is to document our work sufficiently so that a future researcher can improve upon our Monte Carlo. Many thanks to Yale University and the CAREERS Cyberteam program for their funding and computing resources.

## Contents of Folders
The following folders are available in this repository, and contain the listed information:
 * Data - 10 example outputs of running the simulation for a few hundred thousand Monte Carlo steps
 * Mathematica Files - Mathematica Notebooks including the original Monte Carlo which was replicated (MCMC Distribution ...) as well as a few quality control checks for comparison against our Python code (...TestABvacmetric0.nb and ...chi-squared testing code.nb) and a csv of results which can be loaded into the Python for comparison's sake
 * Simulation Files - Python code which implements the simulation, as well as the simulated data csv used. For more information about each file, see their respective docstrings and the Organization section.
 * Slurm Out Files - Generated by the Grace cluster at Yale during simulation execution

The remaining files include information about the miniconda environment used to execute the simulation (both human readable and explicit), and a bash script used to submit jobs to Grace.

 ## Dependencies
 - Numpy
 - Scipy
 - Matplotlib
 - Pandas
 - Argparse

 ## Organization
 This is organized from the top down, so files at the top depend on the files below. Levels are indicated by a number of *.

 *SingleMCMCRun.py will run a single Monte Carlo simulation for an inputed number of steps
 **MonteCarloSimulation.py will perform Monte Carlo steps one by one
 ***ChiSquared.py will calculate chi squared for a given set of parameters, as compared to a dataset object
 ****LoadingDataFromCSV.py will load in data from a csv into a dataset object
 ****DistanceModulus.py computes the predicted distance modulus for a given set of parameters
 *****HelperFunctions.py calculates the useful functions t, q, and psi
 ******ABvacmetric0.py calculates the functions A, B, C = A', and D = B', which are representative of cosmological expansion

 HelperGrapher.py was created solely to assist in debugging, and compares to the original Mathematica
 GeneratePoints.py can be used to generate a large number of start points at once, and remains untested as it was never used for anything.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •