"With four parameters I can fit an elephant, and with five I can make him wiggle his trunk."
- Attributed to John von Neumann
BayeSED3 is a general and sophisticated tool for the full Bayesian interpretation of spectral energy distributions (SEDs) of galaxies and AGNs. It performs Bayesian parameter estimation using posteriori probability distributions (PDFs) and Bayesian SED model comparison using Bayesian evidence. BayeSED3 supports various built-in SED models and can emulate other SED models using machine learning techniques.
- Explore the BayeSED3-AI Assistant 🚀 for interactive help and guidance!
- Multi-component SED synthesis and analysis of galaxies and AGNs
- Flexible stellar population synthesis modeling
- Flexible dust attenuation and emission modeling
- Flexible stellar and gas kinematics modeling
- Non-parametric and parametric star formation history options
- Comprehensive AGN component modeling (Accretion disk, BLR, NLR, Torus)
- Intergalactic medium (IGM) absorption modeling
- Handling of both photometric and spectroscopic data
- Bayesian parameter estimation and model comparison
- Machine learning techniques for SED model emulation
- Parallel processing support for improved performance
- User-friendly CLI, Python script and GUI interfaces
-
Clone the repository:
git clone https://github.com/hanyk/BayeSED3.git
-
Install OpenMPI:
cd BayeSED3 wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.6.tar.gz tar xzvf openmpi-4.1.6.tar.gz cd openmpi-4.1.6 ./configure --prefix=$PWD/../openmpi make make install
-
Install Python dependencies:
pip install -r requirements.txt
-
Install HDF5 utilities (optional):
- Ubuntu/Debian:
sudo apt-get install h5utils
- Fedora:
sudo dnf install hdf5-tools
- macOS (with Homebrew):
brew install h5utils
- Ubuntu/Debian:
-
Install tkinter (for GUI):
- Ubuntu/Debian:
sudo apt-get install python3-tk
- Fedora:
sudo dnf install python3-tkinter
- macOS (with Homebrew):
brew install python-tk
- Ubuntu/Debian:
- SDSS spectroscopic SED analysis
python run_test.py gal plot python run_test.py qso plot
- photometric SED analysis
python run_test.py test1 plot python run_test.py test2 plot
- mock CSST photometric and/or spectroscopic SED analysis
python run_test.py test3 phot plot python run_test.py test3 spec plot python run_test.py test3 both plot
jupyter-notebook observation/agn_host_decomp/demo.ipynb
Launch the GUI:
python bayesed_gui.py
The GUI provides an intuitive way to set up complex SED analysis scenarios with meaningful defaults.
bayesed.py
: Main interface class for BayeSED3bayesed_gui.py
: Graphical User Interface for BayeSED3run_test.py
: Script to run BayeSED3 examplesrequirements.txt
: List of Python dependenciesobservation/test/
: Contains test data and configuration filesbin/
: Contains BayeSED3 executables for different platformsnets/
: Contains Fast Artificial Neural Network (FANN) and Approximate K-Nearest Neighbors (AKNN) models for SED emulationdata/
: other data files used by BayeSED3
- Linux: x86_64 architecture
- macOS: x86_64 architecture (ARM supported via Rosetta 2)
- Windows: Supported through Windows Subsystem for Linux (WSL)
This project is licensed under the MIT License. See the LICENSE file for details.
Issues and pull requests are welcome. Please make sure to update tests before submitting a pull request.
The further development of BayeSED needs your support. If BayeSED has been of benefit to you, either directly or indirectly, please consider citing our papers:
- Han, Y., & Han, Z. 2012, ApJ, 749, 123
- Han, Y., & Han, Z. 2014, ApJS, 215, 2
- Han, Y., & Han, Z. 2019, ApJS, 240, 3
- Han, Y., Fan, L., Zheng, X. Z., Bai, J.-M., & Han, Z. 2023, ApJS, 269, 39
- Han, Y., et al. 2024a, in prep.
For more information about MultiNest, please refer to the README_multinest.txt file.