Browse Source

code on python

master
commit
f472e603e4
1 changed files with 40 additions and 0 deletions
  1. +40
    -0
      code.py

+ 40
- 0
code.py View File

@ -0,0 +1,40 @@
from fenics import *
from mshr import *
import numpy as np
finalt = 5 #Final time
steps = 5000 #number of steps
dt = finalt/steps #time steps
# model parameters
mu = 0.001 #dynamic viscosity
rho = 1 #density
#creating mesh
channel = Rectangle(Point(0,0), Point(2.2, 0.41))
cylinder = Circle(Point(0.2,0.2), 0.05)
domain = channel - cylinder
mesh = generate_mesh(domain,64)
#Defining spaces
V = VectorFunctionSpace(mesh,'P', 2)
Q = FunctionSpace(mesh, 'P', 1)
#defining boundaries:
inflow = 'near(x[0], 0)'
outflow = 'near(x[0], 2.2)'
walls = 'near(x[1], 0) || near(x[1], 0.41)'
cylinder = 'on_boundary && x[0]>0.1 && x[0]<0.3 &&x[1]>0.1 && x[1]<0.3'
#defining inflow profile
inflowProfile('4.0*1.5*x[1]*(0.41-x[1])/pow(0.41,2)', '0')
#defining boundary conditions:
bcuInflow = DirichletBC(V,Expression(inflowProfile, degree=2), inflow)
bcuWalls = DirichletBC(V, Constant((0, 0)), walls)
bcuCylinder = DirichletBC(V, Constant((0,0)), cylinder)
bcpOutflow = DirichletBC(Q, Constant(0), outflow)
bcu = [bcuInflow, bcuWalls, bcuCylinder]
bcp = [bcpOutflow]

Loading…
Cancel
Save