Skip to main content

MCMC tools for astrophysics

Project description

VegasAfterglow (under construction, stay tuned!)

VegasAfterglow Logo

C++ Version PyPI version Build Status License Platform Python Version Documentation

VegasAfterglow is a high-performance C++ framework with a user-friendly Python interface designed for the comprehensive modeling of gamma-ray burst (GRB) afterglows. It achieves exceptional computational efficiency, enabling the generation of multi-wavelength light curves in milliseconds and facilitating robust Markov Chain Monte Carlo (MCMC) parameter inference in seconds to minutes. The framework incorporates advanced models for shock dynamics (both forward and reverse shocks), diverse radiation mechanisms (synchrotron with self-absorption, and inverse Compton scattering with Klein-Nishina corrections), and complex structured jet configurations.



Table of Contents


Features

Shock Dynamics

  • Forward and Reverse Shock Modeling: Simulates both shocks with arbitrary magnetization levels and shell thicknesses.
  • Relativistic and Non-Relativistic Regimes: Accurately models shock evolution across all velocity regimes.
  • Ambient Medium: Supports uniform Interstellar Medium (ISM), stellar wind environments, and user-defined density profiles.
  • Energy and Mass Injection: Supports user-defined profiles for continuous energy and/or mass injection into the blast wave.

Jet Structure & Geometry

  • Structured Jet Profiles: Allows user-defined angular profiles for energy distribution, initial Lorentz factor, and magnetization.
  • Arbitrary Viewing Angles: Supports off-axis observers at any viewing angle relative to the jet axis.
  • Jet Spreading: Includes lateral expansion dynamics for realistic jet evolution (experimental).
  • Non-Axisymmetric Jets: Capable of modeling complex, non-axisymmetric jet structures.

Radiation Mechanisms

  • Synchrotron Radiation: Calculates synchrotron emission from shocked electrons.
  • Synchrotron Self-Absorption (SSA): Includes SSA effects, crucial at low frequencies.
  • Inverse Compton (IC) Scattering: Models IC processes, including:
    • Synchrotron Self-Compton (SSC) from both forward and reverse shocks.
    • Pairwise IC between forward and reverse shock electron and photon populations (experimental).
    • Includes Klein-Nishina corrections for accurate high-energy IC cooling and emission.


Performance Highlights

VegasAfterglow delivers exceptional computational performance through deep optimization of its core algorithms:

  • Ultra-fast Light Curve Computation: Generates a 100-point single-frequency light curve (forward shock & synchrotron only) in approximately 0.9 milliseconds on an Apple M2 chip with a single core.

  • Rapid MCMC Exploration: Enables parameter estimation with 10,000 MCMC steps for 8 parameters on 20 data points across multi-wavelength light curves and spectra on an 8-core Apple M2 chip in:

    • ~20 seconds for on-axis structured jet scenarios
    • ~2 minutes for off-axis modeling scenarios

This level of performance is achieved through optimized algorithm implementation and efficient memory access patterns, facilitating comprehensive Bayesian inference on standard laptop hardware in seconds to minutes rather than hours or days. The accelerated convergence speed enables rapid iteration through different physical models and makes VegasAfterglow suitable for both detailed analysis of individual GRB events and large-scale population studies.



Installation

VegasAfterglow is available as a Python package with C++ source code also provided for direct use.

Python Installation

To install VegasAfterglow using pip:

pip install VegasAfterglow

This is the recommended method for most users. VegasAfterglow requires Python 3.7 or higher.

Alternative: Install from Source (click to expand/collapse)

For cases where pip installation is not viable or when the development version is required:

  1. Clone this repository:
git clone https://github.com/YihanWangAstro/VegasAfterglow.git
  1. Navigate to the directory and install the Python package:
cd VegasAfterglow
pip install .

Standard development environments typically include the necessary prerequisites (C++20 compatible compiler). For build-related issues, refer to the prerequisites section in C++ Installation.

C++ Installation

For advanced users who need to compile and use the C++ library directly:

Instructions for C++ Installation (click to expand/collapse)
  1. Clone the repository (if not previously done):
git clone https://github.com/YihanWangAstro/VegasAfterglow.git
cd VegasAfterglow
  1. Compile the static library:
make lib
  1. (Optional) Compile and run tests:
make tests

Upon successful compilation, you can create custom C++ problem generators using the VegasAfterglow interfaces. For implementation details, refer to the Creating Custom Problem Generators with C++ section or examine the example problem generators in tests/demo/.

Build Prerequisites (click to expand for dependency information)

The following development tools are required:

  • C++20 compatible compiler:

    • Linux: GCC 10+ or Clang 13+
    • macOS: Apple Clang 13+ (with Xcode 13+) or GCC 10+ (via Homebrew)
    • Windows: MSVC 19.29+ (Visual Studio 2019 16.10+) or MinGW-w64 with GCC 10+
  • Build tools:

    • Make (GNU Make 4.0+ recommended)

Usage

Quick Start

We provide basic example scripts (script/quick.ipynb and script/mcmc.ipynb) that demonstrate how to set up and run afterglow simulations. This section shows how to calculate light curves and spectra for a simple GRB afterglow model without the need for observational data and perform MCMC parameter fitting with observational data. The notebook can be run using either Jupyter Notebook or VSCode with the Jupyter extension.

To avoid conflicts when updating the repository in the future, make a copy of the example notebook in the same directory and work with the copy instead of the original.

Light Curve & Spectrum Calculation

The example below walks through the main components needed to model a GRB afterglow, from setting up the physical parameters to producing light curves and spectra.

Model Setup (click to expand/collapse)

First, let's set up the physical components of our afterglow model, including the environment, jet, observer, and radiation parameters:

import numpy as np
import matplotlib.pyplot as plt
from VegasAfterglow import ISM, TophatJet, Observer, Radiation, Model

# 1. Define the circumburst environment (constant density ISM)
medium = ISM(n_ism=1) #in cgs unit

# 2. Configure the jet structure (top-hat with opening angle, energy, and Lorentz factor)
jet = TophatJet(theta_c=0.1, E_iso=1e52, Gamma0=300) #in cgs unit

# 3. Set observer parameters (distance, redshift, viewing angle)
obs = Observer(lumi_dist=1e26, z=0.1, theta_obs=0) #in cgs unit

# 4. Define radiation microphysics parameters
rad = Radiation(eps_e=1e-1, eps_B=1e-3, p=2.3)

# 5. Combine all components into a complete afterglow model
model = Model(jet=jet, medium=medium, observer=obs, forward_rad=rad)
Light Curve Calculation (click to expand/collapse)

Now, let's compute and plot multi-wavelength light curves to see how the afterglow evolves over time:

# 1. Create logarithmic time array from 10² to 10⁸ seconds (100s to ~3yrs)
times = np.logspace(2, 8, 200)  

# 2. Define observing frequencies (radio, optical, X-ray bands in Hz)
bands = np.array([1e9, 1e14, 1e17])  

# 3. Calculate the afterglow emission at each time and frequency
results = model.specific_flux(times, bands)

# 4. Visualize the multi-wavelength light curves
plt.figure(figsize=(4.8, 3.6),dpi=200)

# 5. Plot each frequency band 
for i, nu in enumerate(bands):
    exp = int(np.floor(np.log10(nu)))
    base = nu / 10**exp
    plt.loglog(times, results['syn'][i,:], label=fr'${base:.1f} \times 10^{{{exp}}}$ Hz')

def add_note(plt):
    plt.annotate('jet break',xy=(3e4, 1e-26), xytext=(3e3, 5e-28), arrowprops=dict(arrowstyle='->'))
    plt.annotate(r'$\nu_m=\nu_a$',xy=(6e5, 3e-25), xytext=(7.5e4, 5e-24), arrowprops=dict(arrowstyle='->'))
    plt.annotate(r'$\nu=\nu_a$',xy=(1.5e6, 4e-25), xytext=(7.5e5, 5e-24), arrowprops=dict(arrowstyle='->'))

add_note(plt)   
plt.xlabel('Time (s)')
plt.ylabel('Flux Density (erg/cm²/s/Hz)')
plt.legend()
plt.title('Light Curves')
plt.savefig('assets/quick-lc.png',dpi=300)
Afterglow Light Curves

Running the light curve script will produce this figure showing the afterglow evolution across different frequencies.

Spectrum Analysis (click to expand/collapse)

We can also examine how the broadband spectrum evolves at different times after the burst:

# 1. Define broad frequency range (10⁵ to 10²² Hz) 
frequencies = np.logspace(5, 22, 200)  

# 2. Select specific time epochs for spectral snapshots 
epochs = np.array([1e2, 1e3, 1e4, 1e5 ,1e6, 1e7, 1e8])

# 3. Calculate spectra at each epoch
results = model.spectra(frequencies, epochs)


# 4. Plot broadband spectra at each epoch
plt.figure(figsize=(4.8, 3.6),dpi=200)
colors = plt.cm.viridis(np.linspace(0,1,len(epochs)))

for i, t in enumerate(epochs):
    exp = int(np.floor(np.log10(t)))
    base = t / 10**exp
    plt.loglog(frequencies, results['syn'][i,:], color=colors[i], label=fr'${base:.1f} \times 10^{{{exp}}}$ s')

# 5. Add vertical lines marking the bands from the light curve plot
for i, band in enumerate(bands):
    exp = int(np.floor(np.log10(band)))
    base = band / 10**exp
    plt.axvline(band,ls='--',color='C'+str(i))

plt.xlabel('frequency (Hz)')
plt.ylabel('flux density (erg/cm²/s/Hz)')
plt.legend(ncol=2)
plt.title('Synchrotron Spectra')
plt.savefig('assets/quick-spec.png',dpi=300)
Broadband Spectra

The spectral analysis code will generate this visualization showing spectra at different times, with vertical lines indicating the frequencies calculated in the light curve example.

These examples demonstrate the core functionality of VegasAfterglow for modeling GRB afterglows. The code is designed to be highly efficient, allowing for rapid exploration of parameter space and comparison with observational data.

MCMC Parameter Fitting

We provide some example data files in the data folder. Remember to keep your copy in the same directory as the original to ensure all data paths work correctly.

1. Preparing Data and Configuring the Model (click to expand/collapse)
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import corner
from VegasAfterglow import ObsData, Setups, Fitter, ParamDef, Scale

VegasAfterglow provides flexible options for loading observational data through the ObsData class. You can add light curves (specific flux vs. time) and spectra (specific flux vs. frequency) in multiple ways.

# Create an instance to store observational data
data = ObsData()

# Method 1: Add data directly from lists or numpy arrays

# For light curves
t_data = [1e3, 2e3, 5e3, 1e4, 2e4]  # Time in seconds
flux_data = [1e-26, 8e-27, 5e-27, 3e-27, 2e-27]  # Specific flux in erg/cm²/s/Hz
flux_err = [1e-28, 8e-28, 5e-28, 3e-28, 2e-28]  # Specific flux error in erg/cm²/s/Hz
data.add_light_curve(nu_cgs=4.84e14, t_cgs=t_data, Fnu_cgs=flux_data, Fnu_err=flux_err)

# For spectra
nu_data = [...]  # Frequencies in Hz
spectrum_data = [...] # Specific flux values in erg/cm²/s/Hz
spectrum_err = [...]   # Specific flux errors in erg/cm²/s/Hz
data.add_spectrum(t_cgs=3000, nu_cgs=nu_data, Fnu_cgs=spectrum_data, Fnu_err=spectrum_err)
# Method 2: Load from CSV files

data = ObsData()
# Define your bands and files
bands = [2.4e17, 4.84e14, 1.4e14]  # Example: X-ray, optical R-band
lc_files = ["data/ep.csv", "data/r.csv", "data/vt-r.csv"]

# Load light curves from files
for nu, fname in zip(bands, lc_files):
    df = pd.read_csv(fname)
    data.add_light_curve(nu_cgs=nu, t_cgs=df["t"], Fnu_cgs=df["Fv_obs"], Fnu_err=df["Fv_err"])

times = [3000] # Example: time in seconds
spec_files = ["data/ep-spec.csv"]

# Load spectra from files
for t, fname in zip(times, spec_files):
    df = pd.read_csv(fname)
    data.add_spectrum(t_cgs=t, nu_cgs=df["nu"], Fnu_cgs=df["Fv_obs"], Fnu_err=df["Fv_err"])

Note: The ObsData interface is designed to be flexible. You can mix and match different data sources, and add multiple light curves at different frequencies as well as multiple spectra at different times.

The Setups class defines the global properties and environment for your model. These settings remain fixed during the MCMC process.

cfg = Setups()

# Source properties
cfg.lumi_dist = 3.364e28    # Luminosity distance [cm]  
cfg.z = 1.58               # Redshift

# Physical model configuration
cfg.medium = "wind"        # Ambient medium: "wind", "ism" (Interstellar Medium) or "user" (user-defined)
cfg.jet = "powerlaw"       # Jet structure: "powerlaw", "gaussian", "tophat" or "user" (user-defined)

These settings affect how the model is calculated but are not varied during the MCMC process.

2. Defining Parameters and Running MCMC (click to expand/collapse)

The ParamDef class is used to define the parameters for MCMC exploration. Each parameter requires a name, prior range, and sampling scale:

mc_params = [
    ParamDef("E_iso",      1e50,  1e54,  Scale.LOG),       # Isotropic energy [erg]
    ParamDef("Gamma0",        5,  1000,  Scale.LOG),       # Lorentz factor at the core
    ParamDef("theta_c",     0.0,   0.5,  Scale.LINEAR),    # Core half-opening angle [rad]
    ParamDef("theta_v",     0.0,   0.0,  Scale.FIXED),     # Viewing angle [rad]
    ParamDef("p",             2,     3,  Scale.LINEAR),    # Shocked electron power law index
    ParamDef("eps_e",      1e-2,   0.5,  Scale.LOG),       # Electron energy fraction
    ParamDef("eps_B",      1e-4,   0.5,  Scale.LOG),       # Magnetic field energy fraction
    ParamDef("A_star",     1e-3,     1,  Scale.LOG),       # Wind parameter
    ParamDef("xi",         1e-3,     1,  Scale.LOG),       # Electron acceleration fraction
]

Scale Types:

  • Scale.LOG: Sample in logarithmic space (log10) - ideal for parameters spanning multiple orders of magnitude
  • Scale.LINEAR: Sample in linear space - appropriate for parameters with narrower ranges
  • Scale.FIXED: Keep parameter fixed at the initial value - use for parameters you don't want to vary

Parameter Choices: The parameters you include depend on your model configuration:

  • For "wind" medium: use A_star parameter
  • For "ISM" medium: use n_ism parameter instead
  • Different jet structures may require different parameters

Initialize the Fitter class with your data and configuration, then run the MCMC process:

# Create the fitter object
fitter = Fitter(data, cfg)

# Run the MCMC fitting
result = fitter.fit(
    param_defs=mc_params,          # Parameter definitions
    total_steps=10000,             # Total number of MCMC steps
    burn_frac=0.3,                 # Fraction of steps to discard as burn-in
    thin=1                         # Thinning factor
)

The result object contains:

  • samples: The MCMC chain samples (posterior distribution)
  • labels: Parameter names
  • best_params: Maximum likelihood parameter values
3. Analyzing Results and Generating Predictions (click to expand/collapse)

Check the best-fit parameters and their uncertainties:

# Print best-fit parameters (maximum likelihood)
print("Best-fit parameters:")
for name, val in zip(result.labels, result.best_params):
    print(f"  {name}: {val:.4f}")

# Compute median and credible intervals
flat_chain = result.samples.reshape(-1, result.samples.shape[-1])
medians = np.median(flat_chain, axis=0)
lower = np.percentile(flat_chain, 16, axis=0)
upper = np.percentile(flat_chain, 84, axis=0)

print("\nParameter constraints (median and 68% credible intervals):")
for i, name in enumerate(result.labels):
    print(f"  {name}: {medians[i]:.4f} (+{upper[i]-medians[i]:.4f}, -{medians[i]-lower[i]:.4f})")

Use the best-fit parameters to generate model predictions

# Define time and frequency ranges for predictions
t_out = np.logspace(2, 9, 150)
bands = [2.4e17, 4.84e14, 1.4e14] 

# Generate light curves with the best-fit model
lc_best = fitter.light_curves(result.best_params, t_out, bands)

nu_out = np.logspace(6, 20, 150)
times = [3000]
# Generate model spectra at the specified times using the best-fit parameters
spec_best = fitter.spectra(result.best_params, nu_out, times)

Now you can plot the best-fit model:

def draw_bestfit(t, lc_fit, nu, spec_fit):
    # Create figure with two subplots
    fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(4.5, 7.5))
    
    # Plot light curves
    shifts = [1, 1, 200]
    colors = ['blue', 'orange', 'green']
    
    for i in range(len(lc_files)):
        df = pd.read_csv(lc_files[i])
        ax1.errorbar(df["t"], df["Fv_obs"] * shifts[i], df["Fv_err"] * shifts[i], 
                    fmt='o', color=colors[i], label=lc_files[i])
        ax1.plot(t, np.array(lc_fit[i]) * shifts[i], color=colors[i], lw=1)

    # Plot spectra
    for i in range(len(spec_files)):
        df = pd.read_csv(spec_files[i])
        ax2.errorbar(df["nu"], df["Fv_obs"] * shifts[i], df["Fv_err"] * shifts[i], 
                    fmt='o', color=colors[i], label=spec_files[i])
        ax2.plot(nu, np.array(spec_fit[0]) * shifts[i], color=colors[i], lw=1)

    # Configure axes
    for ax, xlabel, ylabel in [(ax1, 't [s]', r'$F_\nu$ [erg/cm$^2$/s/Hz]'),
                              (ax2, r'$\nu$ [Hz]', r'$F_\nu$ [erg/cm$^2$/s/Hz]')]:
        ax.set_xscale('log'); ax.set_yscale('log')
        ax.set_xlabel(xlabel); ax.set_ylabel(ylabel)
        ax.legend()

    plt.tight_layout()

draw_bestfit(t_out, lc_best, nu_out, spec_best)

Corner plots are essential for visualizing parameter correlations and posterior distributions:

def plot_corner(flat_chain, labels, filename="corner_plot.png"):
    fig = corner.corner(
        flat_chain,
        labels=labels,
        quantiles=[0.16, 0.5, 0.84],  # For median and ±1σ
        show_titles=True,
        title_kwargs={"fontsize": 14},
        label_kwargs={"fontsize": 14},
        truths=np.median(flat_chain, axis=0),  # Show median values
        truth_color='red',
        bins=30,
        smooth=1,
        fill_contours=True,
        levels=[0.16, 0.5, 0.68],  # 1σ and 2σ contours
        color='k'
    )
    fig.savefig(filename, dpi=300, bbox_inches='tight')

# Create the corner plot
flat_chain = result.samples.reshape(-1, result.samples.shape[-1])
plot_corner(flat_chain, result.labels)

Documentation

Comprehensive documentation is available at Documentation including:

  • Installation Guide: Detailed instructions for setting up VegasAfterglow
  • Examples: Practical examples showing common use cases
  • Python API Reference: Complete documentation of the Python interface
  • C++ API Reference: Detailed documentation of C++ classes and functions
  • Contributing Guide: Information for developers who wish to contribute

The documentation is regularly updated with the latest features and improvements.


Contributing

If you encounter any issues, have questions about the code, or want to request new features:

  1. GitHub Issues - The most straightforward and fastest way to get help:

    • Open an issue at Issues
    • You can report bugs, suggest features, or ask questions
    • This allows other users to see the problem/solution as well
    • Can be done anonymously if preferred
  2. Pull Requests - If you've implemented a fix or feature:

    • Fork the repository
    • Create a branch for your changes
    • Submit a pull request with your changes

We value all contributions and aim to respond to issues promptly.


License

VegasAfterglow is released under the BSD-3-Clause License.

The BSD 3-Clause License is a permissive open source license that allows you to:

  • Freely use, modify, and distribute the software in source and binary forms
  • Use the software for commercial purposes
  • Integrate the software into proprietary applications

Requirements:

  • You must include the original copyright notice and the license text
  • You cannot use the names of the authors or contributors to endorse derived products
  • The license provides no warranty or liability protection

For the full license text, see the LICENSE file in the repository.


Citation

If you use VegasAfterglow in your research, please cite the relevant paper(s):

If you use specific modules or features that are described in other publications, please cite those as well according to standard academic practice.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vegasafterglow-0.1.7.tar.gz (12.7 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vegasafterglow-0.1.7-cp313-cp313-win_arm64.whl (178.9 kB view details)

Uploaded CPython 3.13Windows ARM64

vegasafterglow-0.1.7-cp313-cp313-win_amd64.whl (220.5 kB view details)

Uploaded CPython 3.13Windows x86-64

vegasafterglow-0.1.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp313-cp313-macosx_11_0_arm64.whl (180.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp313-cp313-macosx_10_13_x86_64.whl (201.1 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

vegasafterglow-0.1.7-cp312-cp312-win_arm64.whl (178.9 kB view details)

Uploaded CPython 3.12Windows ARM64

vegasafterglow-0.1.7-cp312-cp312-win_amd64.whl (220.6 kB view details)

Uploaded CPython 3.12Windows x86-64

vegasafterglow-0.1.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (241.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp312-cp312-macosx_11_0_arm64.whl (180.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp312-cp312-macosx_10_13_x86_64.whl (201.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

vegasafterglow-0.1.7-cp311-cp311-win_arm64.whl (180.3 kB view details)

Uploaded CPython 3.11Windows ARM64

vegasafterglow-0.1.7-cp311-cp311-win_amd64.whl (218.3 kB view details)

Uploaded CPython 3.11Windows x86-64

vegasafterglow-0.1.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (242.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp311-cp311-macosx_11_0_arm64.whl (181.0 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp311-cp311-macosx_10_9_x86_64.whl (201.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

vegasafterglow-0.1.7-cp310-cp310-win_arm64.whl (179.7 kB view details)

Uploaded CPython 3.10Windows ARM64

vegasafterglow-0.1.7-cp310-cp310-win_amd64.whl (216.9 kB view details)

Uploaded CPython 3.10Windows x86-64

vegasafterglow-0.1.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (242.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp310-cp310-macosx_11_0_arm64.whl (179.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp310-cp310-macosx_10_9_x86_64.whl (199.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

vegasafterglow-0.1.7-cp39-cp39-win_arm64.whl (177.9 kB view details)

Uploaded CPython 3.9Windows ARM64

vegasafterglow-0.1.7-cp39-cp39-win_amd64.whl (215.0 kB view details)

Uploaded CPython 3.9Windows x86-64

vegasafterglow-0.1.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (242.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp39-cp39-macosx_11_0_arm64.whl (179.7 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp39-cp39-macosx_10_9_x86_64.whl (200.0 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

vegasafterglow-0.1.7-cp38-cp38-win_amd64.whl (216.7 kB view details)

Uploaded CPython 3.8Windows x86-64

vegasafterglow-0.1.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (242.0 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp38-cp38-macosx_11_0_arm64.whl (179.4 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

vegasafterglow-0.1.7-cp38-cp38-macosx_10_9_x86_64.whl (199.6 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

vegasafterglow-0.1.7-cp37-cp37m-win_amd64.whl (217.0 kB view details)

Uploaded CPython 3.7mWindows x86-64

vegasafterglow-0.1.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (244.9 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

vegasafterglow-0.1.7-cp37-cp37m-macosx_10_9_x86_64.whl (198.7 kB view details)

Uploaded CPython 3.7mmacOS 10.9+ x86-64

File details

Details for the file vegasafterglow-0.1.7.tar.gz.

File metadata

  • Download URL: vegasafterglow-0.1.7.tar.gz
  • Upload date:
  • Size: 12.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vegasafterglow-0.1.7.tar.gz
Algorithm Hash digest
SHA256 24276572a978b60b28e35d369be48b9ad0e41402a9cefe82eaa8ae0e8598a4c4
MD5 17cfe27f1a2caff5e0161612cc1de8b4
BLAKE2b-256 2a2cc3a670610c9bcb62043ff8845bb181936ab0cccbe2bb6b839df0cecc5bb6

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 983b890f70c5d1a7bf6851e68586cb66be7ddb06ff7413f59a84ae6dc0903a8a
MD5 aca1e1d05043182bb0aa24e466e68290
BLAKE2b-256 61c1dc48e64f672c37b951be5a0867ed41f08c7a70dd942efc541fac8d7751a8

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 53894622b1d6a7c0bd07b8aa9dc70baaf83974b76c1af7cb3a15a29e9fb5f17e
MD5 bbe246b3d3ab488ce4590f2efa507891
BLAKE2b-256 f7dcd29cd62f7f202825944204ba19fe5b5b181709813abedc6dd88324a56cae

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 04e94ab472c9ab4a94c50debcfe688a39da8f41d455f75148f857c238ecc4faf
MD5 0283f01dfdcf4d3289eb4de82f4fc7f8
BLAKE2b-256 340dc8d3be4b4934364d0589dbb50026fee14de2d0c76db8212a1473a7580681

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93f13501a0f540d0aff7a144fb930f0580ee1d8cc6af3162ebb6e0a4ad633d77
MD5 78ce1ba8b8a38b88211f3f97ee28d89f
BLAKE2b-256 491d0954f3bfb7858a908225eb97cfcfbc5a4f230bb1a1bc72f6896a1e3579cd

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2592c59ef327548dc0c3913555849973649dd7eff8cb362dbe0722d98c84d7e6
MD5 f47d138d4964742074d755d416f79569
BLAKE2b-256 dfc7dc27299ba7b3093f2d200fa8f0cfced4e9bf1f579f414daacc758ff76be7

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 b4c7e98f7d1c5bddba3856e855beb8ecc0265a83482a577aef40d7cdfffe2ed6
MD5 0920f54c384c07cfdeb46a2de6b8557f
BLAKE2b-256 9d8d3345b63a22de8544685d8813cbbad27a109cb5343e9bc952eb017e0908f9

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 43c87c80a0eb4249fe69d32bdb8f2ed4852587cc4f396be3462d59949236b323
MD5 8ce9355ff1af68ccc5a67cc0689444ac
BLAKE2b-256 f7b22172c115be28b913319d8d50467bdd732a5a1169be2009ce71a5c2870dfc

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8f980c21ab72df79fc4db340ff2248ed13a4ff4cad50d96365728cd4684125e3
MD5 9da97d0e3de34528efb8755f329a560c
BLAKE2b-256 dd7c0dec706f7cf27df35927533328b7d54d2a715f58cdeb0d7ba61ee244e5ac

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b75d4e964bd2b5a28b49e6bef5dfd5d284d1c40e3e07028c707f77dbc1e5a701
MD5 7c9cd103ead1ff779a010f4f2cdb69e7
BLAKE2b-256 015772b5aeba50b5d304cb95c4ac832870399eac16df285d684fc20af182e6ca

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 254bab6f53099e779ef97c286dc9da8c4edb882e6d089544ec448dc80024001a
MD5 4b41133b43fbf1ba9e0cf0ba48795f02
BLAKE2b-256 1195d7f627e1fca32e9b53e3bb59a2d650d4571716457a86c538479447f467cc

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 6317243e73ab566af801419267a75b9d850249541c6d3748b74c160dce926015
MD5 a1ffca1d57a8408075c07aaefabfbec5
BLAKE2b-256 fae52f91a38017ba27632d35fb14061eff2d17c68ddcdb0cca85a10fbfab5070

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 88d048255a73eb92ea6a0af3457af6979c488c7fe6969783e81fd617bde2d39c
MD5 1d35e6cc4dfafbbd0a24d2d2984a49be
BLAKE2b-256 a94c15a329715ba0ae387bbeed6d128699f395e4bfd9202fbac8265d560a01b1

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6df0330b728a637f59b778795d6476c152614255f29aae3302a76ab1e364bcc4
MD5 8a616f49a6c1da594a858e0fcf3f1129
BLAKE2b-256 262b3b1c14357f1a3ff50ed4a331149025ac05ec401c4fd3a92c5987e0032656

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 136eeb45a44aaace821bdcdc1fcf0b910cd66618652279022c05b3d8f7f5897b
MD5 9fef31cd059286e2eeafbb13eb5f5b70
BLAKE2b-256 98d6b06098d7fa1ad353251fb93e0fb4a8cad6823d8c2fab812eb9f0bf2c2092

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 42c64b6ad1ff693098c3c6e2b52a2db7b8e50ce74860f5fb2aa8b7bf40804c9c
MD5 1b03066d597ed126c4abecd85b3e4564
BLAKE2b-256 1f46278e5aaab357a05ef17ddd5c52e43ba01d2d2638ab27541eea475e029ae4

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp310-cp310-win_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp310-cp310-win_arm64.whl
Algorithm Hash digest
SHA256 9aa31ebf70afae2a075db0db77fafa441450d0522fca3bbfcd56b0b76071b78e
MD5 e2a3964fa275699cef2cb4f54275b5d6
BLAKE2b-256 4e24ee3d445e239189802b39d6bab5afd9df6c8f85aa9abde03ffcf70827695c

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6f42ad14b859c8e2501cd7c2a3f212468e0ecf89967e46c8848fe9e916d44311
MD5 ad8a686bb0b48e5b43f04eb42e5dbaa5
BLAKE2b-256 10870beb66aad91e4b46663a75a6f7192d03970391ec7b1c4f0a6fc7272b869e

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7dd038319c16711179e15ee7f39a0d944dd0c4acbe79c5a63286f313d97bb369
MD5 3d5aa84e4561077067cbf8fdbfc8739b
BLAKE2b-256 5d312c0c6de18357ea5467e658643f294add445ca19813a96856e88727147fd1

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 102863c6e883f889accb5fd1e637e3f09c5f55dd28770a249ccfd7dec3edb6fe
MD5 5a3aac8379fbf88152c54dd40b3581d6
BLAKE2b-256 bad53c3e2265e05df1669079a5b6af7a94a20f37b9130d5974c7e23d06a84710

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 67dc1af4a36f0dfcc066ead8a60c9ee0baddf00786f021875e92ccd64a5c11bf
MD5 aa4593159bc20e7d1944d77db93cadb6
BLAKE2b-256 5c1bec75fc9d9f8953e090fcdcdfdfca5f48e23c7ee9f0046afb2fb1e182fb6f

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp39-cp39-win_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp39-cp39-win_arm64.whl
Algorithm Hash digest
SHA256 0efdcb7350deb7d5e9f61b2a8cb9993a835326b29376127727bf0e96b68c559d
MD5 44ccdfa29088a9d70a62a0a8261d3d42
BLAKE2b-256 79ee9c326d7ce242eea57b8ef4714a524e588af5c5ffc63888c4a526cc7bafd1

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3d4b40bea663f78fc8dba1d9583a82fefe3ea46f5087d4eca788daa3aed59e3b
MD5 f48929d93261cfc6b4fd22e9ea4ce62c
BLAKE2b-256 e70a6619a8289d6d7b039582b79f105ab92446fda2bf69ffe06f87bfb59e50fc

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4fbae6b340cda964b27ef89463b881d9edd34195980e133c6b79c4d3c958e6c4
MD5 3dcf7929e85f3a297338606f2994dd30
BLAKE2b-256 1df9d20b1adcefdf3cb871c3765d106947dfc2a8d499db32330c53e1c15b451a

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 62860b8fc84536876e7c9dc90a236a64a6a4807474baa9a6e8058771fce2602c
MD5 9be303b734aa742cfbcd6a06ccbbf326
BLAKE2b-256 a0f58d33794213c023fd8580baac4d5d9d7fed7226bd40f3ab9fea970b51f024

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8d853b9adcb709b31b5a745355a419743659ee80ce20efa249ffa0ddc77a8d72
MD5 131d5c24fe3b731f393fe0cbc1543582
BLAKE2b-256 0f5bcc3a7621ac370be5b82e3a96c9ba4518dedf6b54f5e15e3c85b826af7ab5

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 e4bf7433eb86ca0d3bf0c3f2e40a30b02bc74783ae9aa08c6699dce92288a1da
MD5 5853b9d7bd7691fe93ffb28e8f3455e2
BLAKE2b-256 99cb0fdf428f8c629094b1e834e093247c9db1cc359001215d47a9be93a3055a

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9c8ec3d11bbae012498290b54ae242e5b2b3849097b326027a753ed74fe79fca
MD5 ae8de2ed0f96862d3871bd8bd7e8b1fa
BLAKE2b-256 32a3dae6a4a1bd39d05718c63ff3f01af3761e2eeee67e0c6825eb2ea5b62dff

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0b0ba0f8eead50330a2c2aa6d79c9067bb49bc61bf53483e7f2e30aff0390d1c
MD5 8281bf7cd6382395bc07f30611ea4786
BLAKE2b-256 29a46e6d36364836311567d7446a3c53bea455dee5f0c9677a5bb8d4f096e60c

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 586a05f3b7b347b218cd4080df462c041d1f64fdd9b6a87da30543816d3dbdd2
MD5 543733fd720d2fe536b25cd20d25ffa4
BLAKE2b-256 b115c3322937931cfdb586d5da5653117b59848c1c783548714591ab30650ad1

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 b6fcb74c5d4e02989430f9e26b66966fc2586cc065ac034dc07a77e43b2307d9
MD5 aba3d85501ac435fe7d053b693b3af8c
BLAKE2b-256 57bc843fac015f232e18f1cbc30b77a0fae6c48e2585f3eadc403f22138d0e4e

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b9ebd8af91b7dc91831b7594a210228eb2a86849c75e82902098368f12d00f04
MD5 0a29a3aa891a3a9512cbe2deaad72748
BLAKE2b-256 e7f5dc112a4831113985c8465eebd9ae9f4edd626abb7d1446fa0b2c74e5bdf5

See more details on using hashes here.

File details

Details for the file vegasafterglow-0.1.7-cp37-cp37m-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for vegasafterglow-0.1.7-cp37-cp37m-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3d0aa136767dc993791f169af4dba5ac4f14439372890cb7bbb77a01533d81ac
MD5 4aa08c619229fbd4a864d15e60614fc0
BLAKE2b-256 611f1adbdf69274fbef2282b1ede25717d04b9581835b734dd1dfb4f420820c3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page