Create an airfoil in MATLAB
10 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
%%%%% part 1
t = .18;
tau = .349;
e = .0721;
a = .574;
k = 1.889;
c = 2;
theta = [0:1:360];
r1 = sqrt(((a*cos(theta)-a).^2)+(a.^2)*sin(theta).^2)
r2 = sqrt(((a*cos(theta)-e*a).^2)+(a.^2)*sin(theta).^2)
theta1 = atand((a*sind(theta))./(a*cosd(theta)-a)) + pi
for theta2 = atand((a*sind(theta))./(a*cosd(theta)-e*a)) + n*pi
if theta2 <= 90
n = 0
elseif 90<theta2<=270
n = 1
elseif 270<theta2<360
n = 2
end
end
theta2 = atand((a*sind(theta))./(a*cosd(theta)-e*a)) + n*pi
x = ((r1.^k)/r2.^k-1).*(cos(k*theta1)*cos(k-1).*theta2+sin(k*theta1).*sin(k-1).*theta2)
z = ((r1.^k)/r2.^k-1).*(sin(k*theta1)*cos(k-1).*theta2-cos(k*theta1).*sin(k-1).*theta2)
plot(x,z)
(It should look like this but does not any help would be appreciated)
3 Kommentare
Antworten (1)
Davide Masiello
am 4 Nov. 2022
From the wikipedia page
t = 0.25; % maximum thickness as a fraction of the chord
x0 = 0:0.001:1;
y0 = 5*t*(0.2969*sqrt(x0)-0.1260*x0-0.3516*x0.^2+0.2843*x0.^3-0.1015*x0.^4);
x = [x0,flip(x0)];
y = [y0,flip(-y0)];
plot(x,y)
axis equal
0 Kommentare
Siehe auch
Kategorien
Mehr zu Airfoil tools finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!