Function Resource
DEFINITION NOTEBOOK
Function Repository »
Open Sample
Style Guidelines
Tools
Check
Preview
Deploy
▼
Submit to Repository
October 17, 2024
9:01 am
October 17, 2024 9:01 am
✓
No issues found
October 17, 2024 9:36 am
✓
Your resource has been submitted for review.
Submission ID:
5227

BrinkmanPDEComponent

BrinkmanPDEComponent[vars,pars] yields the Brinkman PDE term for porous media flow with variables vars and parameters pars

Definition

In[]:=

Documentation

Usage

BrinkmanPDEComponent[vars,pars]
The vars argument represents the velocity components (u, v in 2D or u, v, w in 3D), pressure (p), and spatial coordinates (x, y in 2D or x, y, z in 3D), while pars contains physical parameters like "DynamicViscosity", "Porosity", "Permeability", "ReynoldsNumber", and "DarcyNumber" required to construct the appropriate partial differential equations for the flow.

Details & Options

▪
BrinkmanPDEComponent models the flow of viscous fluids through porous media under applied constraints.
▪
BrinkmanPDEComponent returns a sum of differential operators to be used as a part of partial differential equations:
BrinkmanPDEComponent[vars,…]〈boundarycondition〉
▪
BrinkmanPDEComponent creates PDE components for stationary parametric analysis.
▪
BrinkmanPDEComponent models fluid flow phenomena with velocities
u
,
v
and
w
in units of[
m/s
] as dependent variables,
x
i
∈
n

as independent variables in units of[
m
].
▪
BrinkmanPDEComponent creates PDE components in two and three space dimensions.
▪
Stationary variables
vars
are
vars={{u[
x
1
,…,
x
n
],v[
x
1
,…,
x
n
],…,p[
x
1
,…,
x
n
]},{
x
1
,…,
x
n
}}
.
▪
BrinkmanPDEComponent creates a system of equations with the vector-valued Brinkman's momentum equation combined with the continuity equation.
▪
The equation of the model BrinkmanPDEComponent with dynamic viscosity μ[s Pa], porosity ϕ, and permeability κ
[
2
m
]
is based on the Brinkman's momentum equation and the continuity equation:
μ
κ
V+∇·(-
μ
ϕ
(∇V))+∇p
=
0
∇·V
=
0
▪
The Reynolds number
ℛℯ
is defined as ℛℯ = ρ
U
L/μ, where
L
[
m
] is a characteristic length and
U
the flow velocity.
▪
The Darcy number  is defined as
=κ
2
ϕL
, where
L
[
m
] is a characteristic length, κ
[
2
m
]
is the permeability, and ϕ is the porosity.
▪
The following parameters pars can be given:
parameter
default
symbol
"DynamicViscosity"
-
μ
, dynamic viscosity [
sPa
]
"Porosity"
-
ϕ
, porosity
"Permeability"
-
κ
, permeability
[
2
m
]
"ReynoldsNumber"
-
ℛℯ
, Reynolds number
"DarcyNumber"
-
,Darcynumber
▪
Dimensionless form of the Brinkman's equations can be obtained by making the substitutions
*
V
=V/ϕU
,
*
p
=p/ρ
2
U
, and
*
x
=x/L
:
1
ℛℯ
V+∇·-
1
ℛℯ
(∇V)+∇p
=0
∇·V
=0
▪
Instead of material parameters, a Reynolds number
ℛℯ
and a Darcy number  can be specified.
▪
BrinkmanPDEComponent uses
"SIBase"
units. The geometry has to be in the same units as the PDE.

Examples

Basic Examples

Define flow PDE through a porous medium:
In[]:=
BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"DynamicViscosity"->μ,"Porosity"->ϕ,"Permeability"->κ|>]//MatrixForm
Out[]//MatrixForm=
μu[x,y]
κ
+
∇
{x,y}
·-
μ
∇
{x,y}
u[x,y]
ϕ
+
(1,0)
p
[x,y]
μv[x,y]
κ
+
∇
{x,y}
·-
μ
∇
{x,y}
v[x,y]
ϕ
+
(0,1)
p
[x,y]
(0,1)
v
[x,y]+
(1,0)
u
[x,y]
Define stationary flow PDE model through porous medium with Reynolds number of 10 and Darcy number of
-4
10
:
In[]:=
BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"ReynoldsNumber"->10,"DarcyNumber"->
-4
10
|>]//MatrixForm
Out[]//MatrixForm=
1000u[x,y]+
∇
{x,y}
·-
1
10
∇
{x,y}
u[x,y]+
(1,0)
p
[x,y]
1000v[x,y]+
∇
{x,y}
·-
1
10
∇
{x,y}
v[x,y]+
(0,1)
p
[x,y]
(0,1)
v
[x,y]+
(1,0)
u
[x,y]

Scope

Specify a flow PDE through porous medium with dynamic viscosity of
-3
10
, porosity of 0.4, and permeability of
-7
10
:
In[]:=
BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"DynamicViscosity"->
-3
10
,"Porosity"->0.4,"Permeability"->
-7
10
|>]//MatrixForm
Out[]//MatrixForm=
10000u[x,y]+
∇
{x,y}
·(-0.0025
∇
{x,y}
u[x,y])+
(1,0)
p
[x,y]
10000v[x,y]+
∇
{x,y}
·(-0.0025
∇
{x,y}
v[x,y])+
(0,1)
p
[x,y]
(0,1)
v
[x,y]+
(1,0)
u
[x,y]
Activate a flow PDE through porous medium with Reynolds number of 0.5 and Darcy number of
-2
10
:
In[]:=
Activate[BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"ReynoldsNumber"->0.5,"DarcyNumber"->
-2
10
|>]]
Out[]=
200.u[x,y]-2.
(0,2)
u
[x,y]+
(1,0)
p
[x,y]-2.
(2,0)
u
[x,y],200.v[x,y]+
(0,1)
p
[x,y]-2.
(0,2)
v
[x,y]-2.
(2,0)
v
[x,y],
(0,1)
v
[x,y]+
(1,0)
u
[x,y]
Specify a symbolic stationary flow PDE through porous medium in two dimensions with dynamic viscosity μ, porosity ϕ, and permeability κ:
In[]:=
BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"DynamicViscosity"->μ,"Porosity"->ϕ,"Permeability"->κ|>]
Out[]=

μu[x,y]
κ
+
∇
{x,y}
·-
μ
∇
{x,y}
u[x,y]
ϕ
+
(1,0)
p
[x,y],
μv[x,y]
κ
+
∇
{x,y}
·-
μ
∇
{x,y}
v[x,y]
ϕ
+
(0,1)
p
[x,y],
(0,1)
v
[x,y]+
(1,0)
u
[x,y]
Specify a symbolic stationary flow PDE through porous medium in three dimensions with dynamic viscosity μ, porosity ϕ, and permeability κ:
In[]:=
BrinkmanPDEComponent[{{u[x,y,z],v[x,y,z],w[x,y,z],p[x,y,z]},{x,y,z}},<|"DynamicViscosity"->μ,"Porosity"->ϕ,"Permeability"->κ|>]
Out[]=

μu[x,y,z]
κ
+
∇
{x,y,z}
·-
μ
∇
{x,y,z}
u[x,y,z]
ϕ
+
(1,0,0)
p
[x,y,z],
μv[x,y,z]
κ
+
∇
{x,y,z}
·-
μ
∇
{x,y,z}
v[x,y,z]
ϕ
+
(0,1,0)
p
[x,y,z],
μw[x,y,z]
κ
+
∇
{x,y,z}
·-
μ
∇
{x,y,z}
w[x,y,z]
ϕ
+
(0,0,1)
p
[x,y,z],
(0,0,1)
w
[x,y,z]+
(0,1,0)
v
[x,y,z]+
(1,0,0)
u
[x,y,z]

Applications

Stationary Analysis

Solve for the velocity and pressure in a porous cavity with antiparallel flow and a source term:
In[]:=
source={If[0.4<=x<=0.6&&0.4<=y<=0.6,100,0],0,0};​​{uVel,vVel,pressure}=NDSolveValue[​​{BrinkmanPDEComponent[{{u[x,y],v[x,y],p[x,y]},{x,y}},<|"ReynoldsNumber"->0.5,"DarcyNumber"->
-2
10
|>]+source=={0,0,0},​​DirichletCondition[{u[x,y]==1,v[x,y]==0},y==1],​​DirichletCondition[{u[x,y]==0,v[x,y]==0},0<y<1],​​DirichletCondition[{u[x,y]==-1,v[x,y]==0},y==0],​​DirichletCondition[p[x,y]==0,x==0&&y==0]},​​{u[x,y],v[x,y],p[x,y]},​​{x,y}∈Rectangle[{0,0},{1,1}],​​Method->{"FiniteElement","InterpolationOrder"->{u->2,v->2,p->1}}];
Visualize the velocity of the fluid:
In[]:=
StreamPlot[{uVel,vVel},{x,y}∈Rectangle[{0,0},{1,1}]]
Out[]=

Possible Issues

Neat Examples

Coupled Free and Porous Media Flow: Combining BrinkmanPDEComponent with FluidFlowPDEComponent

The geometry of the problem is specified as follows:
Load the finite element package:
Generate the computational domain along with the mesh:
Specify the parameters:
Define the coupled flow model:
Specify the boundary conditions:
Set up and solve the PDE without the Forchheimer terms:
Set up and solve the PDE with the Forchheimer terms:
Visualize the solutions:

Source & Additional Information

Safi Ahmed
◼
  • Brinkman Equation
  • ◼
  • Porous Media Flow
  • ◼
  • Reynolds Number
  • ◼
  • Darcy Number
  • ◼
  • PDE Models
  • Brinkman, H.C. A calculation of the viscous force exerted by a flowing fluid on a dense swarm of particles. Appl. Sci. Res. 1, 27–34 (1949). https://doi.org/10.1007/BF02120313
    COMSOL. Forchheimer Flow. COMSOL Multiphysics 5.5 Documentation. Retrieved October 17, 2024, from https://www.comsol.com/model/download/656391/models.porous.forchheimer_flow.pdf
    14.0+
    The BrinkmanPDEComponent was developed as a part of the 2024 Wolfram Summer School. Special thanks to Sotiris Michos, John McNally, Oliver Ruebenkoenig, and Stephen Wolfram for their helpful comments and suggestions.