-
Notifications
You must be signed in to change notification settings - Fork 0
/
NACAmpxx.m
28 lines (28 loc) · 838 Bytes
/
NACAmpxx.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
mt = 0.12;
xleading = 0.03;
xdelta = 0.005;
x = [[0:0.05:1].^2*xleading (xleading+xdelta):xdelta:1]';
len = length(x);
xs = zeros(len, 5);
xs(:, 1) = x;
for i=1:1:5
xs(:, i+1) = xs(:, i).*x;
end
y = 5.*mt*(0.2969*sqrt(x) -0.1260*xs(:,1) - 0.3516*xs(:,2) + 0.2843*xs(:,3) - 0.1015*xs(:,4));
sy= 5.*mt*(0.2969*2/3*sqrt(x).*x -0.1260/2*xs(:,2) - 0.3516/3*xs(:,3) + 0.2843/4*xs(:,4) - 0.1015/5*xs(:,5));
rad0 = (5.*mt*0.2969)^2 / 2;
y0 = sqrt(abs(2 * rad0 * x - x.*x));
y1 = sqrt(abs(2 * rad0 * x ));
rad1 = rad0 * 1.5;
y2 = sqrt(abs(2 * rad1 * x - x.*x));
index = [len:-1:1 2:1:len];
points = [x(index) [y(len:-1:1);-y(2:1:len)] index'*0];
figure;
plot(points(:,1), points(:,2), '.-')
hold on
plot(x, y0, '-r')
plot(x, y1, '-k')
plot(x, y2, '-g')
axis([0 1 -0.5 0.5])
pbaspect([1 1 1])
save('naca0012.dat', 'points', '-ascii', '-double')