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

📄 predictb.m

📁 这是本战略战术导弹制导的书中的matlab程序,比书中的 forchan程序简单易懂
💻 M
字号:
function [xtf,ytf]=predictb(tf,xdum,ydum,x1dum,y1dum,wp1,wtot,tb1,trst1,tb2,wp2,wtot2,trst2,wpay)
%h=.01
%Integration interval increased by factor of 10 to get acceptable running time
h=.1;
a=2.0926e7;
gm=1.4077e16;
t=0.;
x=xdum;
y=ydum;
x1=x1dum;
y1=y1dum;
while t<=(tf-.00001)
	xold=x;
	yold=y;
	x1old=x1;
	y1old=y1;
	step=1;
	flag=0;
	while step <=1
		if flag==1
			x=x+h*xd;
			y=y+h*yd;
			x1=x1+h*x1d;
			y1=y1+h*y1d;
			t=t+h;
			step=2;
		end
		if t<tb1
			wgt=-wp1*t/tb1+wtot;
			trst=trst1;
		elseif t<(tb1+tb2)
			wgt=-wp2*t/tb2+wtot2+wp2*tb1/tb2;
			trst=trst2;
		else
			wgt=wpay;
			trst=0.;
		end
		at=32.2*trst/wgt;
		vel=sqrt(x1^2+y1^2);
		axt=at*x1/vel;
		ayt=at*y1/vel;
		tembott=(x^2+y^2)^1.5;
		x1d=-gm*x/tembott+axt;
		y1d=-gm*y/tembott+ayt;
		xd=x1;
		yd=y1;
		flag=1;
	end;
	flag=0;
 	x=(xold+x)/2+.5*h*xd;
	y=(yold+y)/2+.5*h*yd;
	x1=(x1old+x1)/2+.5*h*x1d;
	y1=(y1old+y1)/2+.5*h*y1d;
 end
 	xtf=x;
	ytf=y;

⌨️ 快捷键说明

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