INTRODUCTION
After almost two year of work , finally I am introducing WaveMixings.jl, a numerical implementation of the quasi-classical doorway-window approximation, specifically designed for on-the-fly time-resolved pump-probe (TRPP, aka TAPP) spectra simulations
.
What is Doorway-Window approximation?
It is a quantum “representation” of four-wave-mixing signals in nonlinear spectroscopy. However, in WaveMixings.jl, I implement the quasi-classical approximation of third-order four-wave-mixing signals.
How it works?
Basically, one needs to run quasi-classical molecular dynamics (Surface Hopping, Ehrenfest, mapping Hamiltonian approach or any similar algorithm) of a determined system, then parse the output of the simulations with WaveMixings.jl. Once the data is post-processed, one need to pass basic parameters (carrier frequency of the pump laser , carrier frequency of the probe laser
, time delay) to perform the on-the-fly simulations.
Features 
- Integral GSB, SE, and ESA.
- Dispersed GSB, SE, and ESA.
- Fluorescence.
- 2D pump-probe.
- 2D FLEX.
- Strong field simulation.
- Population estimation.
- Basic auxiliary plotting (in dev)
- Fully documented (page and wiki on work)
Basic TRPP plot
Conclusion
Hope some people find this package useful, and please comment, ask, reach out, contribute to the package. Noteworthy, WaveMixings.jl is hosted in Codeberg, thus unfortunately it can not be registered yet. I hope this is solved in the near future. Also, I am open to collaborations
If you have suggestions or examples of how to MPI functions ( or best practices to handle large matrices up to 1000x1000) using only the Standard library or as few dependencies as possible, I would appreciate, cause that is one of my future objectives.