哪位高手有matlabd道仿真程序

哪位高手有matlabd道仿真程序,第1张

第一个例子

导d仿真Matlab源代码(missile simulation)

http://www.matlabsky.com/thread-284-1-1.html

第二例子

%by dynamic

%see also http://www.matlabsky.com

%2009.2.18

%比例导引理想d道仿真Matlab代码

%给出了比例导引法的差分方程, 采用Matlab语言, 对比例导引法的导d理想d道进行了三维数据仿真, 绘制出三维理想d道。随导d与目标参数变化情况, 对理想d道的特性进行了分析。

clear all

clc

clear

tt=0.1

sm=0.6*tt

st=0.42*tt

x(1)=0y(1)=0z(1)=0

pmr(:,1)=[x(1)y(1)z(1)]

ptr(:,1)=[25510]

m=3

q(1)=0

o(1)=0

a(1)=0

for(k=2:600)

ptr(:,k)=[25-0.42*cos(pi/6)*tt*k510+0.42*sin(pi/6)*k*tt]

r(k-1)=sqrt((ptr(1,k-1)-pmr(1,k-1))^2+(ptr(2,k-1)-pmr(2,k-1))^2+(ptr(3,k-1)-pmr(3,k-1))^2)

c=sqrt((ptr(1,k)-pmr(1,k-1))^2+(ptr(2,k)-pmr(2,k-1))^2+(ptr(3,k)-pmr(3,k-1))^2)

b=acos((r(k-1)^2+st^2-c^2)/(2*r(k-1)*st))

dq=acos((r(k-1)^2-st^2+c^2)/(2*r(k-1)*c))

if abs(imag(b))>0

b=0.0000001

end

if abs(imag(dq))>0

dq=0.0000001

end

q(k)=q(k-1)+dq

o(k)=o(k-1)+m*dq

a(k)=o(k)-q(k)

c1=r(k-1)*sin(b)/sin(a(k)+b)

c2=r(k-1)*sin(a(k))/sin(a(k)+b)

c3=sqrt((c1-sm)^2+(c2-st)^2+2*(c1-sm)*(c2-st)*cos(a(k)+b))

dq=a(k)-acos(((c1-sm)^2+c3^2-(c2-st)^2)/(2*(c1-sm)*c3))

if abs(imag(dq))>0

dq=0.0000001

end

q(k)=q(k-1)+dq

o(k)=o(k-1)+m*dq

a(k)=o(k)-q(k)

c1=r(k-1)*sin(b)/sin(a(k)+b)

c2=r(k-1)*sin(a(k))/sin(a(k)+b)

c3=sqrt((c1-sm)^2+(c2-st)^2+2*(c1-sm)*(c2-st)*cos(a(k)+b))

dq=a(k)-acos(((c1-sm)^2+c3^2-(c2-st)^2)/(2*(c1-sm)*c3))

if abs(imag(dq))>0

dq=0.0000001

end

q(k)=q(k-1)+dq

o(k)=o(k-1)+m*dq

a(k)=o(k)-q(k)

c1=r(k-1)*sin(b)/sin(a(k)+b)

c2=r(k-1)*sin(a(k))/sin(a(k)+b)

c3=sqrt((c1-sm)^2+(c2-st)^2+2*(c1-sm)*(c2-st)*cos(a(k)+b))

x1(k)=ptr(1,k-1)+c2/st*(ptr(1,k)-ptr(1,k-1))

y1(k)=ptr(2,k-1)+c2/st*(ptr(2,k)-ptr(2,k-1))

z1(k)=ptr(3,k-1)+c2/st*(ptr(3,k)-ptr(3,k-1))

x(k)=pmr(1,k-1)+sm/c1*(x1(k)-pmr(1,k-1))

y(k)=pmr(2,k-1)+sm/c1*(y1(k)-pmr(2,k-1))

z(k)=pmr(3,k-1)+sm/c1*(z1(k)-pmr(3,k-1))

pmr(:,k)=[x(k)y(k)z(k)]

r(k)=sqrt((ptr(1,k)-pmr(1,k))^2+(ptr(2,k)-pmr(2,k))^2+(ptr(3,k)-pmr(3,k))^2)

if r(k)<0.06

break

end

end

sprintf('遭遇时间:%3.1f',0.1*k)

figure(1)

plot3(pmr(1,1:k),pmr(2,1:k),pmr(3,1:k),'k',ptr(1,:),ptr(2,:),ptr(3,:))

axis([0 25 0 5 0 25])

text(x(80),y(80),z(80),'\leftarrow 比例导引')

grid on

这是

fnatic.f0restwOw~"的脚本 比较正规,没有任何违规参数,d道很稳!

复制到你的config 里就可以了。

// This file is overwritten whenever you change your user settings in the game.

// Add custom configurations to the file "userconfig.cfg".

unbindall

bind "TAB" "+showscores"

bind "ENTER" "+attack"侍扰

bind "ESCAPE" "cancelselect"

bind "SPACE" "+jump"

bind "'" "+moveup"

bind "+" "sizeup"

bind "," "buyammo1"

bind "-" "sizedown"

bind "." "buyammo2"

bind "/" "+movedown"

bind "0" "slot10"

bind "1" "slot1"

bind "2" "slot2"

bind "3" "slot3"

bind "4" "slot4"

bind "5" "slot5"

bind "6" "slot6"

bind "7" "slot7"

bind "8" "slot8"

bind "9" "slot9"

bind "" "+mlook"

bind "[" "invprev"

bind "]" "invnext"

bind "`" "toggleconsole"

bind "a" "+moveleft"

bind "b" "buy"

bind "c" "radio3"

bind "d" "+moveright"

bind "e" "+use"

bind "f" "impulse 100"

bind "g" "drop"

bind "h" "+commandmenu"

bind "i" "name ollemebyssan"

bind "j" "name name Monent.Gu1ost"

bind "l" "say =)))))) HaHa"

bind "m" "chooseteam"

bind "n" "nightvision"

bind "o" "buyequip"

bind "p" "stopsound"

bind "q" "lastinv"

bind "r" "+reload"

bind "s" "+back"

bind "t" "impulse 201"

bind "u" "messagemode2"

bind "v" "+duck"

bind "w" "+forward"

bind "x" "radio2"

bind "y" "messagemode"

bind "z" "radio1"

bind "~" "toggleconsole"

bind "UPARROW" "+forward"

bind "DOWNARROW" "+back"

bind "LEFTARROW" "+left"

bind "RIGHTARROW" "+right"

bind "ALT" "+strafe"

bind "CTRL" "+duck"

bind "SHIFT" "+speed"

bind "F1" "autobuy"

bind "F2" "rebuy"

bind "F5" "snapshot"

bind "F6" "save quick"

bind "F7" "load quick"

bind "F8" "quit"

bind "F10" "quit prompt"

bind "INS"腔丛 "+klook"

bind "PGDN" "+lookdown"

bind "PGUP" "+lookup"

bind "END" "centerview"

bind "KP_HOME" "say -= GL &HF =-"

bind "KP_LEFTARROW" "famasgalil"

bind "KP_PGUP" "awp"

bind "KP_RIGHTARROW" "ak47m4a1

bind "KP_END" "usp"

bind "KP_5" "hegrenflashflashsgrendefuserbuyammo1"

bind "KP_PGDN" "defuser"

bind "KP_ENTER" "sgren"

bind "KP_INS" "vesthelm"

bind "KP_DEL" "vest"

bind "KP_MINUS" "flash"

bind "KP_PLUS"老圆旦 "hegren"

bind "CAPSLOCK" "+voicerecord"

bind "MWHEELDOWN" "+jump"

bind "MWHEELUP" "invprev"

bind "MOUSE1" "+attack"

bind "MOUSE2" "+attack2"

bind "MOUSE3" "+sprung"

bind "MOUSE4" "+voicerecord"

bind "MOUSE5" "buyequip"

bind "PAUSE" "pause"

_cl_autowepswitch "1"

_snd_mixahead "0.1"

ati_npatch "1.0"

ati_subdiv "2.0"

bgmvolume "1.000000"

bottomcolor "6"

brightness "2"

cl_allowdownload "1"

cl_allowupload "1"

cl_backspeed "400"

cl_cmdbackup "2"

cl_cmdrate "101"

cl_corpsestay "600.000000"

cl_crosshair_color "50 250 50"

cl_crosshair_size "large"

cl_crosshair_translucent "0"

cl_dlmax "80"

cl_download_ingame "1"

cl_dynamiccrosshair "0"

cl_forwardspeed "400"

cl_himodels "0"

cl_idealpitchscale "0.8"

cl_lc "1"

cl_logocolor "#Valve_Orange"

cl_logofile "lambda"

cl_lw "1"

cl_minmodels "0"

cl_radartype "0"

cl_righthand "1"

cl_shadows "1"

cl_timeout "35"

cl_updaterate "101"

cl_vsmoothing "0.05"

cl_weather "0"

con_color "250 180 25"

console "1.000000"

crosshair "1.000000"

fastsprites "0"

fps_max "101"

fps_modem "0"

gamma "3"

gl_dither "1"

gl_flipmatrix "0"

gl_fog "1"

gl_monolights "0"

gl_overbright "0"

gl_polyoffset "0.1"

hisound "1"

hpk_maxsize "4"

hud_capturemouse "1"

hud_centerid "1"

hud_draw "1"

hud_fastswitch "1"

hud_saytext_internal "1"

hud_takesshots "0"

joystick "0"

lookspring "0.000000"

lookstrafe "0.000000"

m_filter "0"

m_forward "1"

m_pitch "0.022"

m_side "0.8"

m_yaw "0.022"

model "gordon"

MP3FadeTime "2.0"

MP3Volume "0.800000"

mp_decals "300.000000"

name "fnatic.f0restwOw~"

net_graph "0"

net_graphpos "1"

net_scale "5"

r_bmodelhighfrac "5.0"

r_detailtextures "0"

s_a3d "0.0"

s_automax_distance "30"

s_automin_distance "2"

s_bloat "2.0"

s_distance "60"

s_doppler "0.0"

s_eax "0.0"

s_leafnum "0"

s_max_distance "1000"

s_min_distance "5"

s_numpolys "200"

s_polykeep "1000000000"

s_polysize "10000000"

s_refdelay "4"

s_refgain "0.4"

s_rolloff "1.0"

s_verbwet "0.25"

sensitivity "3.5"

skin ""

spec_autodirector_internal "0"

spec_drawcone_internal "1"

spec_drawnames_internal "1"

spec_drawstatus_internal "1"

spec_mode_internal "4"

spec_pip "0"

suitvolume "0.250000"

sv_aim "0"

sv_voiceenable "1"

team ""

topcolor "30"

viewsize "110"

voice_enable "1"

voice_forcemicrecord "1"

voice_modenable "1"

voice_scale "2"

volume "0.5"

setinfo "_vgui_menus" "0"

setinfo "_ah" "1"

+mlook

+jlook

exec userconfig.cfg

d道计算在导d各设计阶段和导d试验以及射表编制工作中,是一项必不可少的工作。由于导d射程的增大和导d命中精度的提高,对d道计算的精度要求也愈来愈高。d道计算的精度,依赖于导d运动方程的描述精确度和数值计算方法。对有控制的导d来说,制导特征量的计算精度和地球非球形摄动是影响命中精度的主要因素。

当导d射程达到1000公里左右时,就必须考虑地球扁率的摄动,而对洲际导d还必须顾及高阶项的摄动,如重力异常等,计算结果表明,高阶摄动对射程影响为1~2公里。随着导d命中精度的提高,对这些因素的考虑必须愈来愈精确(如果导d采用末制导,情况则不同,这时命中精度只依赖于制导的精度)。

d道计算与高速电子计算技术结合,使飞慧旦行仿真模拟成为现实。给握颂定d道飞行模型,编制计算程序,通过计算机大量计算,可以得到各种随机过程的许多结果,例如导d最大射程的概率特征、落点散布等。用飞行仿真模拟可以部分代替昂贵的飞行试验。

编制导d射表的目的是在已知发射条件下,确定发射装定诸元与目标位置的关系。装定诸元包括基本装定诸元和辅助装定诸元。基本前皮扰装定诸元为射程控制特征量和发射方位角,装入制导系统的射程控制特征量用来确定发出最后一级发动机关机指令时间,而方位角则用于导d方位瞄准。

辅助装定诸元包括制导系统的有关参数、标准导引装定量、必要的时间信号等装定诸元。一般远程导d的发射装定诸元多达数百个参数。射表编制是在精确的d道计算和飞行试验基础上进行的。随着电子计算机向高速、大容量、小型化方向发展,用电子计算机代替表册形式的射表已成为现实。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12318906.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存