📄 trajectory.m
字号:
clear;
clc;
global y;
global AMa;
global Aa;
global ACX;
global ACY;
global AP;
global APT;
global AXG;
global AXGT;
global AMZWZ1;
global AMZWZ2;
global AMZAF;
global AJZ;
global AJZT;
load -ascii ACX.txt; %读入数据
load -ascii ACY.txt;
load -ascii AP.txt;
load -ascii APT.txt;
load -ascii AJZ.txt;
load -ascii AJZT.txt;
load -ascii AXG.txt;
load -ascii AXGT.txt;
load -ascii Aa.txt;
load -ascii AMa.txt;
load -ascii AMZAF.txt;
load -ascii AMZWZ1.txt;
load -ascii AMZWZ2.txt;
AE=0.01745329; %角度化弧度
h=0.005;
%推力*10;
fo1=fopen('result.dat','wt');
fprintf(fo1,'y7 y1 y2 y3 y4 y5 y6 f ALPHA \n');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%赋初值
f=90;
y(1)=20.0; %初速
y(2)=f*AE; %初始弹道倾角
y(3)=10; %初始转速
y(4)=0; %初始x坐标
y(5)=20; %初始y坐标
y(6)=52.38; %起飞质量
y(7)=0; %初始时间
y(8)=cos(f*AE/2); %q0
y(9)=0; %q1
y(10)=0; %q2
y(11)=sin(f*AE/2); %q3
fprintf(fo1,'%10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f\n',...
y(7),y(1),y(2)*57.3,y(3)*57.3/360,y(4),y(5),y(6),asin(2*(y(9)*y(10)+y(8)*y(11)))*57.3,(asin(2*(y(9)*y(10)+y(8)*y(11)))-y(2))*57.3);
while y(5)>=20
fyj=asin(2*(y(9)*y(10)+y(8)*y(11)))*57.3; %俯仰角
gj=(asin(2*(y(9)*y(10)+y(8)*y(11)))-y(2))*57.3; %攻角=俯仰角-弹道倾角
rk(11,h);
y(8)=y(8)/sqrt(y(8)^2+y(9)^2+y(10)^2+y(11)^2);
y(9)=y(9)/sqrt(y(8)^2+y(9)^2+y(10)^2+y(11)^2);
y(10)=y(10)/sqrt(y(8)^2+y(9)^2+y(10)^2+y(11)^2);
y(11)=y(11)/sqrt(y(8)^2+y(9)^2+y(10)^2+y(11)^2);
fprintf(fo1,'%10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f %10.10f\n',y(7),y(1),y(2)*57.3,y(3)*57.3/360,y(4),y(5),y(6),fyj,gj);
%figure(1),plot(y(7),fyj),hold on,
figure(2),plot(y(4),y(5)),hold on,
%figure(3),plot(y(7),gj),hold on,
end
fclose(fo1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -