InversePoisson2DSquareProblem#

Formulation of the inverse Poisson problem in a square domain.

class InversePoisson2DSquareProblem(load=True, data_size=1.0)[source]#

Bases: SpatialProblem, InverseProblem

Implementation of the inverse two-dimensional Poisson problem on the square domain \(\Omega = [-2, 2] \times [-2, 2]\), with unknown parameter domain \(\Theta = [-1, 1] \times [-1, 1]\).

The problem is governed by the parameterized Poisson equation

\[\Delta u = \exp\left( -2(x - \mu_1)^2 -2(y - \mu_2)^2 \right),\]

where \(u = u(x, y)\) is the solution field and \(\mu_1, \mu_2\) are unknown parameters controlling the forcing term.

Homogeneous Dirichlet boundary conditions are imposed on the boundary of the domain:

\[u(x, y) = 0, \qquad (x, y) \in \partial \Omega.\]

The inverse problem aims to infer the unknown parameters \(\mu_1\) and \(\mu_2\) from solution data.

The "data" condition is added only if the required files are downloaded successfully.

Example:
>>> problem = InversePoisson2DSquareProblem()

Initialization of the InversePoisson2DSquareProblem.

Parameters:
  • load (bool) – If True, it attempts to load data from remote URLs. Set to False to skip data loading (e.g., if no internet connection). Default is True.

  • data_size (float) – The fraction of the total data to use for the “data” condition. If set to 1.0, all available data is used. If set to 0.0, no data is used. Default is 1.0.

Raises:
  • ValueError – If data_size is not in the range [0.0, 1.0].

  • ValueError – If data_size is not a float.