Skip to content

Tensor-Based Loss Calculation for 2D Poisson Equation

Overview

This module implements an efficient tensor-based approach for calculating variational residuals in 2D Poisson problems. It leverages TensorFlow's tensor operations for fast computation of weak form terms.

Key Functions

  • pde_loss_poisson2d: Computes the domain-based PDE loss.

Note:
The implementation is based on the FastVPINNs methodology for efficient computation of variational residuals of PDEs.


Function: pde_loss_poisson2d

Description

Calculates residuals for the 2D Poisson problem using the Physics-Informed Neural Networks (PINNs) methodology.
The weak form includes: - Diffusion term: -ε∇²(u) - where ε is a known diffusion coefficient.

Arguments

  • pred_nn (tf.Tensor): Neural network solution at quadrature points.
    Shape: (N_points, 1)
  • pred_grad_x_nn (tf.Tensor): x-derivative of the neural network solution at quadrature points.
    Shape: (N_points, 1)
  • pred_grad_y_nn (tf.Tensor): y-derivative of the neural network solution at quadrature points.
    Shape: (N_points, 1)
  • pred_grad_xx_nn (tf.Tensor): Second-order x-derivative of the neural network solution at quadrature points.
    Shape: (N_points, 1)
  • pred_grad_yy_nn (tf.Tensor): Second-order y-derivative of the neural network solution at quadrature points.
    Shape: (N_points, 1)
  • forcing_function (callable): Right-hand side forcing term.
  • bilinear_params (dict): A dictionary containing:
  • eps: Diffusion coefficient.

Returns

  • tf.Tensor: Cell-wise residuals averaged over test functions.
    Shape: (1,)

Notes

  • The diffusion term is computed as -ε(∇²u) using second-order derivatives in the x and y directions.