Logo
  • 1 Getting started
    • 1.1 When (not) to use the package
    • 1.2 Installation
      • 1.2.1 Install using pip
      • 1.2.2 Install using conda
      • 1.2.3 Install from source
        • 1.2.3.1 Required prerequisites
        • 1.2.3.2 Optional packages
        • 1.2.3.3 Downloading py-pde
    • 1.3 Package overview
  • 2 Examples
    • 2.1 Grids and fields
      • 2.1.1 Plot a polar grid
      • 2.1.2 Plotting a vector field
      • 2.1.3 Plotting a scalar field in cylindrical coordinates
      • 2.1.4 Random scalar fields
      • 2.1.5 Visualizing a scalar field
      • 2.1.6 Finite differences approximation
    • 2.2 Simple PDEs
      • 2.2.1 Solving Laplace’s equation in 2d
      • 2.2.2 Solving Poisson’s equation in 1d
      • 2.2.3 Simple diffusion equation
      • 2.2.4 Kuramoto-Sivashinsky - Using PDE class
      • 2.2.5 Spherically symmetric PDE
      • 2.2.6 Diffusion on a Cartesian grid
      • 2.2.7 Stochastic simulation
      • 2.2.8 Setting boundary conditions
      • 2.2.9 Time-dependent boundary conditions
      • 2.2.10 1D problem - Using PDE class
      • 2.2.11 Brusselator - Using the PDE class
      • 2.2.12 Diffusion equation with spatial dependence
      • 2.2.13 Schrödinger’s Equation
    • 2.3 Output and analysis
      • 2.3.1 Storage examples
      • 2.3.2 Logarithmic kymograph
      • 2.3.3 Writing and reading trajectory data
      • 2.3.4 Using simulation trackers
    • 2.4 Advanced PDEs
      • 2.4.1 Post-step hook function
      • 2.4.2 Heterogeneous boundary conditions
      • 2.4.3 Heterogeneous PDE
      • 2.4.4 Kuramoto-Sivashinsky - Using custom class
      • 2.4.5 Custom Class for coupled PDEs
      • 2.4.6 1D problem - Using custom class
      • 2.4.7 Custom noise
      • 2.4.8 Kuramoto-Sivashinsky - Compiled methods
      • 2.4.9 Solver comparison
      • 2.4.10 Post-step hook function in a custom class
      • 2.4.11 Custom PDE class: SIR model
      • 2.4.12 Brusselator - Using custom class
  • 3 User manual
    • 3.1 Mathematical basics
      • 3.1.1 Curvilinear coordinates
        • 3.1.1.1 Polar coordinates
        • 3.1.1.2 Spherical coordinates
        • 3.1.1.3 Cylindrical coordinates
      • 3.1.2 Spatial discretization
      • 3.1.3 Temporal evolution
    • 3.2 Basic usage
      • 3.2.1 Defining the geometry
      • 3.2.2 Initializing a field
      • 3.2.3 Specifying the PDE
      • 3.2.4 Running the simulation
      • 3.2.5 Analyzing the results
    • 3.3 Advanced usage
      • 3.3.1 Boundary conditions
      • 3.3.2 Expressions
      • 3.3.3 Custom PDE classes
      • 3.3.4 Low-level operators
        • 3.3.4.1 Differential operators
        • 3.3.4.2 Field integration
        • 3.3.4.3 Field interpolation
        • 3.3.4.4 Inner products
      • 3.3.5 Numba-accelerated PDEs
      • 3.3.6 Configuration parameters
    • 3.4 Performance
      • 3.4.1 Measuring performance
      • 3.4.2 Improving performance
      • 3.4.3 Multiprocessing using MPI
    • 3.5 Contributing code
      • 3.5.1 Structure of the package
      • 3.5.2 Extending functionality
      • 3.5.3 Design choices
      • 3.5.4 Coding style
      • 3.5.5 Running unit tests
    • 3.6 Citing the package
    • 3.7 Code of Conduct
      • 3.7.1 Our Pledge
      • 3.7.2 Our Standards
      • 3.7.3 Our Responsibilities
      • 3.7.4 Scope
      • 3.7.5 Enforcement
      • 3.7.6 Attribution
  • 4 Reference manual
    • 4.1 pde.fields package
      • 4.1.1 pde.fields.base module
      • 4.1.2 pde.fields.collection module
      • 4.1.3 pde.fields.datafield_base module
      • 4.1.4 pde.fields.scalar module
      • 4.1.5 pde.fields.tensorial module
      • 4.1.6 pde.fields.vectorial module
    • 4.2 pde.grids package
      • 4.2.1 pde.grids.boundaries package
        • 4.2.1.1 Boundary conditions
        • 4.2.1.2 Boundaries overview
        • 4.2.1.3 pde.grids.boundaries.axes module
        • 4.2.1.4 pde.grids.boundaries.axis module
        • 4.2.1.5 pde.grids.boundaries.local module
      • 4.2.2 pde.grids.coordinates package
        • 4.2.2.1 pde.grids.coordinates.base module
        • 4.2.2.2 pde.grids.coordinates.bipolar module
        • 4.2.2.3 pde.grids.coordinates.bispherical module
        • 4.2.2.4 pde.grids.coordinates.cartesian module
        • 4.2.2.5 pde.grids.coordinates.cylindrical module
        • 4.2.2.6 pde.grids.coordinates.polar module
        • 4.2.2.7 pde.grids.coordinates.spherical module
      • 4.2.3 pde.grids.operators package
        • 4.2.3.1 pde.grids.operators.cartesian module
        • 4.2.3.2 pde.grids.operators.common module
        • 4.2.3.3 pde.grids.operators.cylindrical_sym module
        • 4.2.3.4 pde.grids.operators.polar_sym module
        • 4.2.3.5 pde.grids.operators.spherical_sym module
      • 4.2.4 pde.grids.base module
      • 4.2.5 pde.grids.cartesian module
      • 4.2.6 pde.grids.cylindrical module
      • 4.2.7 pde.grids.spherical module
    • 4.3 pde.pdes package
      • 4.3.1 pde.pdes.allen_cahn module
      • 4.3.2 pde.pdes.base module
      • 4.3.3 pde.pdes.cahn_hilliard module
      • 4.3.4 pde.pdes.diffusion module
      • 4.3.5 pde.pdes.kpz_interface module
      • 4.3.6 pde.pdes.kuramoto_sivashinsky module
      • 4.3.7 pde.pdes.laplace module
      • 4.3.8 pde.pdes.pde module
      • 4.3.9 pde.pdes.swift_hohenberg module
      • 4.3.10 pde.pdes.wave module
    • 4.4 pde.solvers package
      • 4.4.1 pde.solvers.adams_bashforth module
      • 4.4.2 pde.solvers.base module
      • 4.4.3 pde.solvers.controller module
      • 4.4.4 pde.solvers.crank_nicolson module
      • 4.4.5 pde.solvers.explicit module
      • 4.4.6 pde.solvers.explicit_mpi module
      • 4.4.7 pde.solvers.implicit module
      • 4.4.8 pde.solvers.scipy module
    • 4.5 pde.storage package
      • 4.5.1 pde.storage.base module
      • 4.5.2 pde.storage.file module
      • 4.5.3 pde.storage.memory module
      • 4.5.4 pde.storage.modelrunner module
      • 4.5.5 pde.storage.movie module
    • 4.6 pde.tools package
      • 4.6.1 pde.tools.cache module
      • 4.6.2 pde.tools.config module
      • 4.6.3 pde.tools.cuboid module
      • 4.6.4 pde.tools.docstrings module
      • 4.6.5 pde.tools.expressions module
      • 4.6.6 pde.tools.ffmpeg module
      • 4.6.7 pde.tools.math module
      • 4.6.8 pde.tools.misc module
      • 4.6.9 pde.tools.modelrunner module
      • 4.6.10 pde.tools.mpi module
      • 4.6.11 pde.tools.numba module
      • 4.6.12 pde.tools.output module
      • 4.6.13 pde.tools.parse_duration module
      • 4.6.14 pde.tools.plotting module
      • 4.6.15 pde.tools.spectral module
      • 4.6.16 pde.tools.typing module
    • 4.7 pde.trackers package
      • 4.7.1 pde.trackers.base module
      • 4.7.2 pde.trackers.interactive module
      • 4.7.3 pde.trackers.interrupts module
      • 4.7.4 pde.trackers.trackers module
    • 4.8 pde.visualization package
      • 4.8.1 pde.visualization.movies module
      • 4.8.2 pde.visualization.plotting module
py-pde
  • Search


© Copyright 2025, Zwicker Group.

Built with Sphinx using a theme provided by Read the Docs.