Basic Usage

Ionization Probability for Hydrogen

from gasfir import create_pulse, get_parameters, get_diabatic_ionization_probability

laser = create_pulse(800, 1e14, 0, 30)   # 800 nm, 1e14 W/cm², 30 optical cycles
params = get_parameters("Hydrogen_SFA")
prob = get_diabatic_ionization_probability(pulse=laser, param_dict=params)
print(f"P = {prob:.6e}")

Time-Resolved Rate

from gasfir import get_diabatic_ionization_rate
import matplotlib.pyplot as plt

t = laser.get_tgrid(dt=0.25)
rate = get_diabatic_ionization_rate(t_grid=t, pulse=laser, param_dict=params)

plt.semilogy(t, rate)
plt.xlabel("Time (a.u.)")
plt.ylabel("Ionization rate (a.u.)")
plt.tight_layout()
plt.show()

Quasi-Static Rates

from gasfir import get_quasi_static_rate_for_field
import numpy as np

fields = np.linspace(0.02, 0.18, 80)
rates  = get_quasi_static_rate_for_field(fields, params)