Viscous-inviscid interaction
The Viscous-inviscid interaction (VII) method allows to correct inviscid computations by modeling the boundary layer, thus taking into account viscous effects only where they are relevant. The VII method implemented in DART relies on a quasi-simultaneous coupling of the full potential equation to an integral form of the boundary layer equations. The code has been implemented by Amaury Bilocq and is located under viscous. The method is currently restricted to two-dimensional subsonic flows.
Usage
The VVI method can be run using the same plan as described in Use, with minor changes in the pre-processing and solving steps.
Pre-processing
Besides defining the problem as described in Use, the body around which the boundary layer will be modeled and the wake attached to this body must be identified and added to the problem definition
blwb = dart.Blowing(msh, 'body')
blww = dart.Blowing(msh, 'wake')
pbl.add(blwb)
pbl.add(blww)
Solving
Besides defining the invsicid solver as described in Use, a viscous solver as well as a coupler must now be defined. First, the relevant python classes must be imported
import dart.viscous.solver as darts
import dart.viscous.coupler as dartc
Then, the viscous solver must be defined and coupled to the inviscid solver (isolver
)
vsolver = darts.Solver(Re, p, m)
coupler = dartc.Coupler(isolver, vsolver, blwb, blww, tol, gmshWriter)
where Re
is the Reynolds number, p
and m
are the order and the bandwidth of the filter used for smoothing the inviscid variables passed to the viscous solver, and tol
is the tolerance of the viscous solver, expressed as the difference in the drag coefficient between two iterations.
Finally, the coupled computation can be run
coupler.run()
The boundary layer variables will be saved in the workspace in a file named airfoil_viscous.dat
.