Skip to content

Investigating what the Robin conditions in PorePy actually are

Notifications You must be signed in to change notification settings

IngridKJ/robin_investigation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

robin_investigation

Investigating the Robin conditions in PorePy.

Setup

All the simulations have a west Dirichlet boundary of value 1. The other boundaries are either:

  • All zero Dirichlet
  • All zero Neumann
  • All zero Robin in the limit case Dirichlet or Neumann

The Robin conditions are on the form: sigma * n + alpha * u = G. The limit case where alpha goes to infinity is a Dirichlet condition, and when alpha goes to zero it is a Neumann condition.

The intention is to check if the Robin condition implementation honors these limit cases as expected.

  • In the case of a huge alpha (I chose 5e12), we should see similar simulation results as when Dirichlet conditions are chosen for the remaining boundaries. See here for simplex and here for cartesian grid.

  • In the case of a small alpha (I chose alpha = 0 for simplex grids, and alpha = 0 and alpha = 0.000001 for cartesian grids), we should see similar simulation results as when Neumann are chosen for the remaining boundaries. Alpha = 0 worked nicely for simplex grids, and not as well for cartesian. See here for simplex, here for cartesian (alpha = 0) and here for cartesian (alpha = 0.000001).

    Note: The cartesian grid with alpha = 0 seemingly only runs for cell_size = 0.05 and bigger in a unit square. Matrix is reported singular for e.g. 0.025.

About

Investigating what the Robin conditions in PorePy actually are

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages