| 查看: 1559 | 回复: 0 | ||
[求助]
matlab 中trim函数总出现Index exceeds matrix dimensions,求大神帮忙解决
|
|
运行一个trim函数,可是总是错误 Index exceeds matrix dimensions. Error in trim>trim_alg (line 164) gg=[x(ix)-x0(ix);y(iy)-y0(iy);u(iu)-u0(iu)]; Error in trim (line 84) [x,u,y,dx,options]=trim_alg(fcn,varargin{:}); 不知道该怎么办了。源程序如下: P.gravity = 9.8; %physical parameters of airframe P.mass = 13.5 ; P.Jx = 0.8244; P.Jy = 1.135; P.Jz = 1.579; P.Jxz = 0.1204; % aerodynamic coefficients P.M = 50; P.epsilon = 0.1592; P.alpha0 = 0.4712; P.rho = 1.2682; P.c = 0.18994; P.b = 2.8956; P.S = 0.55; P.S_prop = 0.2027; P.k_motor = 80; P.k_T_p =0; P.k_omega =0; P.C_L_0 = 0.28; P.C_L_alpha = 3.45; P.C_L_q = 0.0; P.C_L_delta_e = -0.36; P.C_D_0 = 0.03; P.C_D_q = 0.0; P.C_D_alpha =0.30; P.C_D_delta_e = 0.0; P.C_M_0 = -0.02338; P.C_M_alpha = -0.38; P.C_M_q = -3.6; P.C_M_delta_e = -0.5; P.C_Y_0 = 0.0; P.C_Y_beta = -0.98; P.C_Y_p = -0.26; P.C_Y_r = 0.0; P.C_Y_delta_a = 0.0; P.C_Y_delta_r = -0.17; P.C_ell_0 = 0.0; P.C_ell_beta = -0.12; P.C_ell_p = -0.26; P.C_ell_r = 0.14; P.C_ell_delta_a = 0.08; P.C_ell_delta_r = 0.105; P.C_n_0 = 0.0; P.C_n_beta = 0.25; P.C_n_p = 0.022; P.C_n_r = -0.35; P.C_n_delta_a = 0.06; P.C_n_delta_r = -0.032; P.C_prop = 1; % wind parameters P.wind_n = 0;%3; P.wind_e = 0;%2; P.wind_d = 0; P.L_wx = 1250; P.L_wy = 1750; P.L_wz = 1750; P.sigma_wx = 1; P.sigma_wy = 1; P.sigma_wz = 1; % autopilot sample rate P.Ts = 0.01; % compute trim conditions using \'mavsim_chap5_trim.mdl\' P.Va = 13; % desired airspeed (m/s) gamma = 0*pi/180; % desired flight path angle (radians) R = 0; % desired radius (m) - use (+) for right handed orbit, % (-) for left handed orbit % first cut at initial conditions P.pn0 =0; % initial North position P.pe0 = 0; % initial East position P.pd0 = 0; % initial Down position (negative altitude) P.u0 = P.Va; % initial velocity along body x-axis P.v0 = 0; % initial velocity along body y-axis P.w0 = 0; % initial velocity along body z-axis P.phi0 = 0; % initial roll angle P.theta0 = 0; % initial pitch angle P.psi0 = 0; % initial yaw angle P.p0 = 0; % initial body frame roll rate P.q0 = 0; % initial body frame pitch rate P.r0 = 0; % initial body frame yaw rate X0=[0;0;0;P.Va;0;0;0;0;gamma;0;0;0]; U0=[0;0;0;1]; %initialize the trim para X0 =[0;0;0;P.Va;0;0;0;gamma;0;0;0;0]; IX0 =[]; U0 =[0;0;0;1]; IU0 =[]; Y0 =[0;0;0;P.Va;0;0;0;0;0;0;0;0;]; IY0 =[4;5;6;8;9]; DX =[0;0;P.Va*sin(gamma);0;0;0;0;0;0;0;0;0]; IDX =[3;4;5;6;7;8;9;10;11;12]; % run trim commands [x_trim, u_trim,y_trim,dx_trim]=trim(\'mavsim_trim\',X0,U0,Y0,IX0,IU0,IY0,DX,IDX); P.u_trim = u_trim P.x_trim = x_trim % set initial conditions to trim conditions % initial conditions P.pn0 = x_trim(1); % initial North position P.pe0 = x_trim(2); % initial East position P.pd0 = x_trim(3); % initial Down position (negative altitude) P.u0 = x_trim(4); % initial velocity along body x-axis P.v0 = x_trim(5); % initial velocity along body y-axis P.w0 = x_trim(6); % initial velocity along body z-axis P.phi0 = x_trim(7); % initial roll angle P.theta0 = x_trim(8); % initial pitch angle P.psi0 = x_trim(9); % initial yaw angle P.p0 = x_trim(10); % initial body frame roll rate P.q0 = x_trim(11); % initial body frame pitch rate P.r0 = x_trim(12); % initial body frame yaw rate 请大神帮忙解决一下,谢谢 |
» 猜你喜欢
想换工作。大多数高校都是 评职称时 认可5年内在原单位取得的成果吗?
已经有7人回复
需要合成515-64-0,50g,能接单的留言
已经有4人回复
自荐读博
已经有4人回复
上海工程技术大学【激光智能制造】课题组招收硕士
已经有4人回复
写了一篇“相变储能技术在冷库中应用”的论文,论文内容以实验为主,投什么期刊合适?
已经有6人回复
带资进组求博导收留
已经有10人回复
最近几年招的学生写论文不引自己组发的文章
已经有11人回复
中科院杭州医学所招收博士生一名(生物分析化学、药物递送)
已经有3人回复
临港实验室与上科大联培博士招生1名
已经有8人回复
找到一些相关的精华帖子,希望有用哦~
matlab编程X=inv(A)*Ff出现Error using * Inner matrix dimensions must agree求助
已经有5人回复
matlab “Inner matrix dimensions must agree.”一直不知道哪里出错了 求助
已经有6人回复
求助一个Matlab语句错误,Error==>plus Matrix dimensions must agree
已经有3人回复
matlab中出现这个??? Index exceeds matrix dimensions.原因,在线等!
已经有9人回复
Matlab中的Matrix dimensions must agree.错误求助
已经有4人回复
求助matlab三维画图中:Inner matrix dimensions must agree.
已经有4人回复
【求助】Matlab 使用中提示出现的Index exceeds matrix dimensions错误
已经有5人回复
科研从小木虫开始,人人为我,我为人人







回复此楼
点击这里搜索更多相关资源