Page MenuHomec4science

solver.py
No OneTemporary

File Metadata

Created
Wed, May 8, 10:56

solver.py

import numpy as np
import fenics as fen
from airfoil_engine import AirfoilScatteringEngine
verb = 0
####################
homog = True
homog = False
####################
k0 = 5e2 * 2 * np.pi / 340
kappa = 5e2 * 2 * np.pi / 340
theta = np.pi * - 45 / 180.
mesh = fen.Mesh('../data/mesh/airfoil2412_1.xml')
solver = AirfoilScatteringEngine(kappa, theta, verbosity = verb,
degree_threshold = 8,
homogeneized = homog)
uinc = solver.liftDirichletData()
if homog:
uhtot = solver.solve(kappa)[0]
uh = uhtot + uinc
else:
uh = solver.solve(kappa)[0]
uhtot = uh - uinc
print(solver.norm(uh))
print(solver.norm(uhtot))
solver.plot(fen.project(solver.diffusivity[0], solver.V).vector(),
what = 'Real', name = 'a')
solver.plot(uinc, what = 'Real', name = 'u_inc')
solver.plot(uh, what = 'ABS')
solver.plot(uhtot, what = 'ABS', name = 'u + u_inc')
solver.outParaviewTimeDomain(uh, omega = kappa, forceNewFile = False,
filename = "out/out_{}_".format(kappa))
solver.outParaviewTimeDomain(uhtot, omega = kappa, forceNewFile = False,
filename = "out/outT_{}_".format(kappa))

Event Timeline