4.2.2.1. pde.grids.operators.cartesian module

This module implements differential operators on Cartesian grids

make_laplace

make a laplace operator on a Cartesian grid

make_gradient

make a gradient operator on a Cartesian grid

make_divergence

make a divergence operator on a Cartesian grid

make_vector_gradient

make a vector gradient operator on a Cartesian grid

make_vector_laplace

make a vector Laplacian on a Cartesian grid

make_tensor_divergence

make a tensor divergence operator on a Cartesian grid

make_poisson_solver

make a operator that solves Poisson's equation

make_divergence(grid: CartesianGridBase, backend: str = 'auto') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a divergence operator on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the divergence operator. If backend=’auto’, a suitable backend is chosen automatically.

Returns

A function that can be applied to an array of values

make_gradient(grid: CartesianGridBase, backend: str = 'auto') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a gradient operator on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the gradient operator. If backend=’auto’, a suitable backend is chosen automatically.

Returns

A function that can be applied to an array of values

make_laplace(grid: CartesianGridBase, backend: str = 'auto') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a laplace operator on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the laplace operator. If backend=’auto’, a suitable backend is chosen automatically.

Returns

A function that can be applied to an array of values

make_poisson_solver(bcs: Boundaries, method: str = 'auto') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a operator that solves Poisson’s equation

Parameters
  • bcs (Boundaries) – {ARG_BOUNDARIES_INSTANCE}

  • method (str) – Method used for calculating the tensor divergence operator. If method=’auto’, a suitable method is chosen automatically.

Returns

A function that can be applied to an array of values

make_tensor_divergence(grid: CartesianGridBase, backend: str = 'numba') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a tensor divergence operator on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the tensor divergence operator.

Returns

A function that can be applied to an array of values

make_vector_gradient(grid: CartesianGridBase, backend: str = 'numba') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a vector gradient operator on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the vector gradient operator.

Returns

A function that can be applied to an array of values

make_vector_laplace(grid: CartesianGridBase, backend: str = 'numba') Callable[[numpy.ndarray, numpy.ndarray], None][source]

make a vector Laplacian on a Cartesian grid

Parameters
  • grid (CartesianGridBase) – The grid for which the operator is created

  • backend (str) – Backend used for calculating the vector laplace operator.

Returns

A function that can be applied to an array of values