gUPPEcore is a simulation framework for femtosecond nonlinear optics. It implements
the generalized unidirectional pulse propagation equation [Physical Review E 86 (3), 036706 (2012)].
While the core capabilities target simulations in the field of optical filamentation
[http://www.filamentation.org/], it is applicable
to many more general situations, including nonlinear optics in waveguides.
The most typical filamentaion scenarios do not require any modifications, and the simulator
can be utilized "as is." However, gUPPEcore is not meant to be an "application,"
or an all-encomapasing simulation engine for femtosecond pulse propagation. Instead, it is left
to the user to define specific features of his/her simulation, such as initial conditions
and nonlinear medium response models. Yet, these modifications, or user-addons as we call them,
should not require extensive coding experience, as gUPPEcore provides an easy to use interface to do this.
[view: gUPPEcore structure]
gUPPElab is a collection of worked-out examples using gUPPEcore. These start from the very basics of controlling inputs and outputs, and then gradually add complexity to illustrate usage of the framework in typical nonlinear optical pulse-propagation problems. The lab also contains examples of user-defined intial confitions, operators, medium-response plugins, and linear propagators.
Get started: gUPPElab guide
There are quite a few nonlinear-optics scenarios that can be modeled with gUPPEcore, and there are many more that it is not suitable for. It is important to keep in mind that this framework does not implement any sanity checks, and we made no attempt to make it "fool-proof." It is therefore the user's responsibility to make sure that the objective of the simulation is compatible with the gUPPEcore capabilities, and that the simulation is numerically sound. We strongly encourage interested users to get in contact with the authors. Questions, comments, bug-reports, ... should be directed to guppecore@gmail.com
gUPPEcore/lab created with funding from AFOSR