getf.m
上传用户:skyjin520
上传日期:2016-12-06
资源大小:20k
文件大小:1k
源码类别:

交通/航空行业

开发平台:

Matlab

  1. function Ft = getf(qnb, vn, pos, fb)
  2. %求系统矩阵Ft
  3.     global glv
  4.     [wnie,wnen,rmh,rnh,gn] = earth(pos,vn);
  5. sl = sin(pos(1)); cl = cos(pos(1)); tl = sl/cl; secl = 1/cl; secl2 = secl^2;;
  6.     f_RMh = 1/rmh; f_RNh = 1/rnh; f_RMh2 = f_RMh^2; f_RNh2 = f_RNh^2;
  7.     %%%
  8.     M1 = [0, 0, 0; -glv.wie*sl, 0, 0; glv.wie*cl, 0, 0];
  9.     M2 = [0, -f_RMh, 0; f_RNh, 0, 0; f_RNh*tl, 0, 0];
  10.     M3 = [0, 0, vn(2)*f_RMh2; 0, 0, -vn(1)*f_RNh2; vn(1)*secl2*f_RNh, 0, -vn(1)*tl*f_RNh2];
  11.     M13 = M1+M3;
  12.     M4 = askew(vn)*M2 - askew(2*wnie+wnen);                                                                         
  13.     M5 = askew(vn)*(2*M1+M3);
  14.     M6 = [0, f_RMh, 0; secl*f_RNh, 0, 0; 0, 0, 1];
  15.     M7 = [0, 0, -vn(2)*f_RMh2; vn(1)*secl*tl*f_RNh, 0, -vn(1)*secl*f_RNh2; 0, 0, 0];
  16.     S1 = askew(wnie+wnen); S3 = askew(qmulv(qnb,fb));
  17.     o3 = zeros(3,3);   Cnb = q2cnb(qnb);
  18.     %%%%%  fi    dvn   dpos     eb       db 
  19.     Ft = [ -S1   M2    M13       -Cnb      o3 
  20.            S3    M4    M5         o3        Cnb 
  21.            o3    M6    M7         o3        o3  
  22.            o3    o3    o3         o3        o3 
  23.            o3    o3    o3         o3       o3  ]; 
  24. %     Ft = [ -S1   M2    M13 
  25. %            S3    M4    M5 
  26. %            o3    M6    M7   ]; 
  27.