Package Organization

In pyNLO, object-oriented programming is used to mimic the physics of nonlinear interactions. Whenever possible, each physical entity with intrinic properties – for example an optical pulse or nonlinear fiber – is mapped to a single Python class. These classes keep track of the objects’ properties, calculate interactions between them and other objects, and provide simple calculator-type helper functions.