Skip to content

pnkjsyngh/diffusionNet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

4f4e2b4 · Sep 25, 2023
Sep 13, 2023
Sep 16, 2023
Sep 12, 2023
Sep 25, 2023

Repository files navigation

 Solution of 1D transient diffusion PDE using Neural Networks


Problem defintion

The governing PDE for 1D diffusion is given by ,

T t = D 2 T x 2 + s ( x , t )

This PDE is valid for,

x ( 0 , l )  and  0 < t < t r a n g e

The initial condition for this PDE is,

T ( x , 0 ) = i ( x )

The boundary conditions for this PDE are,

T x | ( 0 , t ) = a ( x , t )  and  T | ( l , t ) = b ( x , t )

where,
s ( t ) is the source term,
i ( x ) is the initial temperature distribution on the domain,
a ( t ) and b ( t ) are time dependent boundary conditions terms at x = 0 and l respectively.


Numerical Solution

The numerical solution for this problem is obtained using py-pde for following set of system parameters,

  • D = 0.1
  • l = 1
  • t r a n g e = 2 π

The specified functions are as follows,

  • s ( x , t ) = 0
  • i ( x ) = 0
  • a ( t ) = 0
  • b ( t ) = s i n ( t )


Physics Informed Neural Networks (PINNs) with unweighted loss function

We define the fully physics based loss function as follows for training our neural network,

L = L IC + L BC + L PDE

where,
L is the overall loss,
L IC is the loss from initial conditions at t = 0 over the domain,
L BC is the loss from boundary conditions at boundaries ( x = 0 and 1 ) over time,
L PDE is the loss from PDE at collocation points.

As it can be noted, we have presented the loss as simple sum of losses coming from IC, BC and PDE. The implementation can be found in the PINNs unweighted loss folder.


Coming Soon

  • Constant weights for loss components
  • hyperparameter tuning
  • self adaptive weights
  • Curriculum learning
  • Seq2Seq learning

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published