Skip to main content
Ctrl+K

solprop

  • Introduction
  • User guide
  • Examples
  • Primer
  • Developer’s guide
  • API
  • GitHub
  • Introduction
  • User guide
  • Examples
  • Primer
  • Developer’s guide
  • API
  • GitHub

Section Navigation

  • Setting up a simulation
    • Choosing a propagation model
    • Spatial decompositions
    • Grids and Fourier conventions
    • Input pulses
    • Polarisation and azimuthal modes
    • Running a simulation
  • Waveguide propagation
    • Mode averaging
    • Generalised nonlinear Schrödinger propagation
    • Waveguide modes
    • Multimode capillaries: the coherent wall, tapers and gradients
    • Solid-core fibres: the general modal route
    • Supplying a waveguide
    • Profiles along the fibre
    • Capillary modes and dispersion
    • Mode sets and transverse quadrature
    • Radial nodes for expensive responses
    • Antiresonant tube-lattice fibres
    • Hollow rectangular waveguides
    • Hollow planar waveguides
    • Modes from tabulated data
    • Coherent capillary walls
    • Mode conversion in a capillary taper
    • Vector boundary response
    • Step-index fibres
    • Radial graded-index fibres
    • General modal propagation
    • Vector fields, nonlinear projection and power
    • Circular and coupled modal bases
    • General modal guides that vary along the propagation
    • Electric and magnetic mode fields
    • Channel labels and modal tables
  • Free-space propagation
    • Free space: beams in bulk media
    • The free-space model
    • Energy and flux in a medium
    • Radial Hankel transform
    • Cartesian free-space propagation
  • Materials and nonlinear responses
    • Materials: gases, metals and glasses
    • Selecting and inspecting material data
    • Gas mixtures
    • Nonlinear responses
    • A frequency-dependent electronic response
    • The Raman response
    • Raman response models
    • Polarisation-dependent Raman response
    • Evaluating a Raman response
    • Raman data and validity
    • Strong-field ionisation
    • Carrier-resolved plasma response
    • Envelope plasma: model, derivation and limits
    • Shot noise
    • TDSE response in a helium capillary
  • Numerical methods and accuracy
    • Assessing numerical accuracy
    • The linear operator
    • Varying operators and interpolation accuracy
    • The solver
    • Choosing a stepper
    • The Adams integrator
    • Fixed schedules and repeatable propagation
    • Reproducibility
    • Absorbing boundaries
  • Results and interpretation
    • Power, energy and intensity
    • Accessing and continuing a run
    • Reading the output of a modal run
    • Output: what a run leaves behind
    • Recording and inspecting provenance
    • Resuming a calculation and checking compatibility
    • Starting from a saved interior field
    • Plane statistics
    • Statistics catalogue
    • Definitions of pulse statistics
    • Processing: reading a run back
    • Plotting: the standard figures
  • Design and workflows
    • Design tools: soliton numbers and dispersive-wave phase matching
    • Offline optics and compression
    • Coupling simulations
    • Parameter scans
    • Interactive use: the session namespace
    • Noteworthy differences from Luna
  • Backends and performance
    • Choosing a backend
    • The native backend: fast CPUs and GPUs
    • Building the native backend
    • Execution resources
    • Progress and logging
    • Performance tuning
    • Single precision
  • User guide
  • Setting up a simulation

Setting up a simulation#

Choose the physical description before choosing numerical settings. Start with the comparison of models, then work through the grids, input pulses, and settings of a run. For a first complete calculation, use the introduction.

  • Choosing a propagation model
  • Spatial decompositions
  • Grids and Fourier conventions
  • Input pulses
  • Polarisation and azimuthal modes
  • Running a simulation

previous

User guide

next

Choosing a propagation model

Edit on GitHub
Show Source

© Copyright 2026, John C. Travers and contributors.

Created using Sphinx 9.1.0.

Built with the PyData Sphinx Theme 0.21.0.