⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c20l5.m

📁 这是本战略战术导弹制导的书中的matlab程序,比书中的 forchan程序简单易懂
💻 M
字号:
VC=4000.;
XNT=0.;
DISPLACE=1.;
VM=3000.;
TAU=1.;
XNP=3.;
XNCLIM=99999999.;
n=0;
%for TF=.1:.1:10
%Number of runs decreased by factor of 5 in order to get acceptable running times
for TF=.5:.5:10	
	Y=DISPLACE;
	YD=0.;
	XNL=0.;
	D=0.;
	ELAMDH=0.;
	X4=0.;
	X5=0.;
	T=0.;
	H=.01;
      while T<=(TF-1e-5) 	
      YOLD=Y;
      YDOLD=YD;
      XNLOLD=XNL;
      DOLD=D;
      ELAMDHOLD=ELAMDH;
      X4OLD=X4;
      X5OLD=X5;
      STEP=1;
      FLAG=0;
      while STEP<=1
         if FLAG==1
            STEP=2;
            Y=Y+H*YD;
            YD=YD+H*YDD;
            XNL=XNL+H*XNLD;
            ELAMDH=ELAMDH+H*ELAMDHD;
            D=D+H*DD;
            X4=X4+H*X4D;
            X5=X5+H*X5D;
            T=T+H;
         end
         TGO=TF-T+.00001;
         XLAM=Y/(VC*TGO);
         DD=5.*(XLAM-D)/TAU;
         ELAMDHD=5.*(DD-ELAMDH)/TAU;
         XNC=XNP*VC*ELAMDH;
         if XNC>XNCLIM
            XNC=XNCLIM;
         end
         if XNC<-XNCLIM
            XNC=-XNCLIM;
         end
         X4D=5.*(XNC-X4)/TAU;
         X5D=5.*(X4-X5)/TAU;
         XNLD=5.*(X5-XNL)/TAU;
         YDD=XNT-XNL;
         FLAG=1;
      end
      FLAG=0;
      Y=.5*(YOLD+Y+H*YD);      
      YD=.5*(YDOLD+YD+H*YDD);
      XNL=.5*(XNLOLD+XNL+H*XNLD);
      D=.5*(DOLD+D+H*DD);
      ELAMDH=.5*(ELAMDHOLD+ELAMDH+H*ELAMDHD);
      X4=.5*(X4OLD+X4+H*X4D);
      X5=.5*(X5OLD+X5+H*X5D);
   end
   n=n+1;
	ArrayTF(n)=TF;
   ArrayY(n)=Y;
end
figure
plot(ArrayTF,ArrayY),grid
xlabel('Flight Time (Sec)')
ylabel('Miss (Ft)')
clc
output=[ArrayTF',ArrayY'];
save datfil.txt output  -ascii
disp 'simulation finished'

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -