body Z z body Y y body X x b dz dy dx k j i F U S V ds V s n d.. Why Airplanes an t Fly
Physics of an Flow Over a Wing Werle, 974, NAA 00,.5 o, AR=4, Re=0000 Wake descends roughly on an extension of the chord line Bippes, lark Y, Rectangular Wing 9 o, AR=.4, Re=00000 Head, 98, Rectangular Wing, 4 o, Re=00000
Physics of Flow Over a Wing l, Lift varies across span -s s y irculation is shed (Helmholz thm) p u <p l pu p l Vortical wake Vortical wake induces downwash on wing Downwash changing angle of attack just enough to produce variation of lift across span Including a model of the vortical wake is thus critical to model a wing in ideal flow
Induced Drag l, The continuous generation of the vortical wake requires energy input (even in ideal flow) -s s y This energy is supplied by the wing doing work against an inviscid drag force. p u <p l pu p l This induced drag (induced by the wake on the wing) is still consistent with ideal flow because, with the vortical wake, the wing is no longer an isolated body in an otherwise undisturbed ideal flow. Downwash So, ideal flow pressures acting on a 3D wing shouldn t balance in the streamwise direction, when that wing is generating lift
Kutta ondition for 3D Wedge trailing edge flow stops in cross-sectional view, but can still move along trailing edge LE p =0 TE 0 usp trailing edge Velocity magnitude (and pressure) same on both sides, but direction can be different u u In both cases this is equivalent to requiring that the surface vorticity parallel to the t.e. p be zero. In practice, enforcing this will require (by Helmholtz theorem) that streamwise vorticity to be shed from the trailing edge. This is how we get our vortical wake.
Wing Nomenclature Areas and Lengths z x Taper assumed linear from zero to root, unless otherwise specified. y Average chord c A S / b Aspect ratio AR b / ca b / S V iu jv kw
Wing Nomenclature z Angles x Positive twist increases, and is termed wash-in. Negative twist is termed wash-out. Assumed to linearly increase from zero at root, unless otherwise specified. Twist y Sweep Angle of attack arctan( w / u ) Also sideslip angle arctan( v / u) (zero as pictured)
pitch Wing Nomenclature Forces and oments roll F x F z yaw D L oment conventions Us Ind. std pitch yaw roll N L Y P R N L F y y z V V u v w Angle of Attack L V S D D V S V S c L
pitch Wing Nomenclature Forces and oments roll F x F z yaw D L oment conventions Us Ind. std pitch yaw roll N L Y P R L N F y y z V V u v w Angle of Attack L V S D D V S V S c L
omputing Forces and oments L V S V S c L p nds=da -y z Planform area Total Force as coefficients Total moment about origin of r as coefficients F F S F U F i F x roll s U s y S i F Sc j F k pitch k. n ds k. da z x i j F R y yaw i j k P k z j Y x pnds k S p pr nds Sc pda da p r da r pr da easured from ¼ chord at root, so moments about this point L and D obtained by rotating z and x by the angle of attack
Ideal Flow ethods for Wings Panel ethods Lifting ethods Vortex Lattice ethod Lifting line theory See Katz and Plotkin for complete descriptions and prescriptions
Doublet Panel ethod for Wings. Treat wing like non-lifting body over wing with N panels. Determine panel strengths by requiring no flow through surface at N control points Solution will result in non zero filament strength along the trailing edge (Kutta condition not satisfied) V
Doublet Panel ethod for Wings. Add panels in wake to cancel t.e. vorticity The new wake panels have no control point requirements we simply require that they cancel the t.e. vorticity so that W = L - U. This gives new equation for every wake panel we have, so we still have a solvable set. The sides of these panels then represent the shed vortex sheet. Ideally wake panels extend to. In practice a big distance (50c?) is enough. Extend wake panels downstream in the plane of the root chord (but with any side slip of the free stream) Wake panel strength W Upper panel strength U Lower panel strength L V
3D Wing ode Same as 3D Panel ode for non-lifting bodies except: Specify different geometry Extend influence coefficient matrix to include strength relation for each wake panel W = L - U, rather than a control point relation Add code to compute forces and moments Wing code at http://www.aoe.vt.edu/aoe504
%3D doublet panel method for lifting wings. clear all; vinf=[cos(8*pi/80);0;sin(8*pi/80)]; %free stream velocity %Specify wing geometry (NAA 00 section) xp=[ 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.5 0. 0.5 0. 0.075 0.05 Specify 0.05 free 0.05 0 zp=[0 0.0448 0.063 0.03664 0.04563 0.0594 0.05803 0.0600 0.0594 0.05737 0.05345 0.0468 nb=5;b=.5;sweep=30;dihedral=5;twist=0;taper=.5; stream and [r,rc,nw,sw,se,ne,no,we,so,ea,wp,bp]=wing(xp,zp,b,nb,vinf,sweep,dihedral,twist,taper); geometry xl=-;xh=;yl=-.5;yh=.5;zl=-;zh=;cl=-;ch=; % plotting limits % determine surface area and outward pointing normal vectors at control points (assumes counte ac=0.5*v_cross(r(:,sw)-r(:,ne),r(:,se)-r(:,nw));nc=ac./v_mag(ac); %determine influence coefficient matrix npanels=length(rc(,:));coef=zeros(npanels); for nn=:length(bp) ompute n=bp(nn); influence cmn=ffil(rc(:,n),r(:,nw),r(:,sw))+ffil(rc(:,n),r(:,sw),r(:,se))+ffil(rc(:,n),r(:,se),r(:,n coef(n,:)=nc(,n)*cmn(,:)+nc(,n)*cmn(,:)+nc(3,n)*cmn(3,:); coefficients end for nn=:length(wp) n=wp(nn); coef(n,ea(n))=;coef(n,we(n))=-;coef(n,n)=; end %determine result matrix rm=(-nc(,:)*vinf()-nc(,:)*vinf()-nc(3,:)*vinf(3))'; ompute result rm(wp)=0;coef(end+,bp)=;rm(end+)=0; %prevents singular matrix - sum of panel strengths on c ga=coef\rm; %Determine velocity and pressure at control points ga=repmat(ga',[3 ]); for n=:npanels %Determine velocity at each c.p. without principal ompute value surface cmn=ffil(rc(:,n),r(:,nw),r(:,sw))+ffil(rc(:,n),r(:,sw),r(:,se))+ffil(rc(:,n),r(:,se),r(:,n v(:,n)=vinf+sum(ga.*cmn,); velocity at c.p.s, end %Determine principle value of velocity at each c.p., add -grad(ga)/ principal gg=v_cross((rc(:,we)-rc(:,no)).*(ga(:,we)+ga(:,no))+(rc(:,so)-rc(:,we)).*(ga(:,so)+ga(:,we))+( te=find([:npanels]'==ea(:));gg(:,te)=gg(:,te)/;te=find([:npanels]'==we(:));gg(:,te)=gg(:,te v=v-gg/; %velocity vector cp=-sum(v.^)/(vinf'*vinf); %pressure matrix and solve value
Different Geometry %Specify wing geometry (NAA 00 section) xp=[ 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.5 0. 0.5... zp=[0 0.0448 0.063 0.03664 0.04563 0.0594... nb=5;b=.5;sweep=30;dihedral=5;twist=0;taper=.5; [r,rc,nw,sw,se,ne,no,we,so,ea,wp,bp]=wing(xp,zp,b,nb,vinf,sweep,dihedral,twist,taper) xl=-;xh=;yl=-.5;yh=.5;zl=-;zh=;cl=-;ch=; % plotting limits Airfoil coordinates, starting at the trailing and progressing along the upper surface, the leading is at xp=0, trailing edge at xp=. Repeat t.e. point at end. nb is number of points to put across the span b is span (compared to root chord) sweep, dihedral, twist (at tip) are in deg. taper is taper ratio wing() generates shape needs vinf, to position wake panels, gives panel and control point position vectors (r and rc) and indices (nw, sw ) also gives indices of panels in the wake (wp) and on the body of the wing (bp) x no ea we so -y z
under the hood Function [r,rc,nw,sw,se,ne,no,we,so,ea,wp,bp]=wing(xp,zp,b,nb,vinf,sweep,dihedral,twist,taper) sweep=sweep*pi/80;dihedral=dihedral*pi/80;twist=twist*pi/80; %Define vertices of panels yp=([0:nb+]-)/(nb-)*b-b/; %evenly spaced points spanwise, extra points akes used flat to untwisted close tips x=repmat(xp,[nb+ ])-0.5; %grid of x points, shift quarter chord rectangular to origin wing of y=repmat(yp',[ length(xp)]); correct span, origin z=repmat(zp,[nb+ ]); z(,:)=0;z(end,:)=0;y(,:)=y(,:);y(end,:)=y(end-,:); %close tips at ¼ chord z=z.*(+*(taper-)/b*abs(y)); %apply linear taper x=x.*(+*(taper-)/b*abs(y)); lt=(twist**abs(y)/b); %apply linear twist z=z.*cos(lt)-x.*sin(lt); x=x.*cos(lt)+z.*sin(lt); x=x;z=z; z=z+abs(y).*tan(dihedral); %apply dihedral x=x+abs(y).*tan(sweep); %apply sweep x=x+.5; %return leading edge to origin Applies taper, twist, dihedral and sweep and returns origin to l.e. %Add wake panels for trailing edge Kutta condition. Wake panels end up as last array column xwakelength=50; % number of chordlengths to extend wake panels downstrem of t.e. mvinf=sqrt(vinf()^+vinf()^); x(:,end+)=x(:,end)+vinf()/mvinf*wakelength; %Extend wake in the plane of the root chord y(:,end+)=y(:,end)+vinf()/mvinf*wakelength; %(but with any side slip of the free stream) z(:,end+)=z(:,end); all that indexing stuff down here Adds wake panels
Same Indexing we nw no sw ne n c se ea For wake panels the east and west indices are used to identify the two trailing edge panels Wake panel strength W W = L - U we ( U ) r c r so ea ( L ) %determine influence coefficient matrix npanels=length(rc(,:));coef=zeros(npanels); for nn=:length(bp) n=bp(nn); cmn=ffil(rc(:,n),r(:,nw),r(:,sw))+ffil(rc(:,n)... coef(n,:)=nc(,n)*cmn(,:)+nc(,n)*cmn(,:)... end for nn=:length(wp) n=wp(nn); coef(n,ea(n))=;coef(n,we(n))=-;coef(n,n)=; end x no ea we so -y z
%ompute forces and moments cp=repmat(cp,[3 ]);area=sum(abs(ac(3,bp)))/;cbar=area/b;alpha=atan(vinf(3)/vinf()); rc=rc;rc(,:)=rc(,:)-0.5; omputing %ompute moments about and quarter chord oments f=sum(-cp(:,bp).*ac(:,bp),)/area; %Forces are the -Integral(pressure d(area vector)) m=sum(-cp(:,bp).*v_cross(rc(:,bp),ac(:,bp)),)/area/cbar; %oments are the - Integral(pressure position x d(area vector)) l=f(3)*cos(alpha)-f()*sin(alpha);d=f(3)*sin(alpha)+f()*cos(alpha); Planform area S k. n ds k. da p r nds=da -y z Total Force as coefficients Total moment about origin of r as coefficients F F F i F x roll F U s y S i F U s Sc j F k pitch z x i j F R y yaw i pnds j k k P z j Y x k S pda p pr nds Sc da p r da pr da easured from ¼ chord at root, so moments about this point L and D obtained by rotating z and x by the angle of attack
Presenting Forces and oments Lift coefficient as a function of angle of attack for a symmetric section, plane wing with a quarter chord sweep of 45 degrees and a taper of 0.5. argason et al. (985). Note that the lift curve slope is less that, and decreases with reducing aspect ratio and taper. This is mostly because the tips generate less lift than an equivalent D section
Presenting Forces and oments
Presenting Forces and oments D L AR urve for minimum drag (elliptical wing) D L (tan 0lift ) urve assuming wing only generates force normal to chord
Hints on using the code Ignore the divide by zero and rank deficient warnings. These are a consequence of there being a couple of panels (at the t.e. tips) with zero size, and don t seem to cause any problems. Try to pick numbers of spanwise and chordwise points so aspect ratio of panels doesn t get extreme - grid independence is most easily checked by increasing or decreasing the number of spanwise points. Don t overkill the number of points (e.g. 00 airfoil points or span points) unless you want to wait to 0 for results. Remember the solution time goes up as the square of the total number of panels. ake sure your airfoil profile specifies leading and trailing edge points. Have fun trying out weird configurations, with this and the non-lifting code, and resulting streamline/pressure patterns..