diff --git a/docs/src/matrix_free.md b/docs/src/matrix_free.md index c2bb0a7e9..ecc7b1217 100644 --- a/docs/src/matrix_free.md +++ b/docs/src/matrix_free.md @@ -64,7 +64,7 @@ where See the [tutorial](https://jso.dev/tutorials/introduction-to-linear-operators/) and the detailed [documentation](https://jso.dev/LinearOperators.jl/dev/) for more information on `LinearOperators.jl`. -## Examples +## Examples with automatic differentiation In the field of nonlinear optimization, finding critical points of a continuous function frequently involves linear systems with a Hessian or Jacobian as coefficient. Materializing such operators as matrices is expensive in terms of operations and memory consumption and is unreasonable for high-dimensional problems. However, it is often possible to implement efficient Hessian-vector and Jacobian-vector products, for example with the help of automatic differentiation tools, and used within Krylov solvers. We now illustrate variants with explicit matrices and with matrix-free operators for two well-known optimization methods. @@ -153,6 +153,8 @@ opJ = LinearOperator(Float64, 3, 2, false, false, (y, v) -> J(y, v), lsmr(opJ, -F(xk)) ``` +## Example with FFT and IFFT + ### Example 3: Solving the Poisson equation with FFT and IFFT In applications related to partial differential equations (PDEs), linear systems can arise from discretizing differential operators.