[請益] 懸賞5000P 請教我把MATLAB改成C語言= =
我知道有matlab coder可以寫成C
但是第一次碰 很不熟悉= = 苦手ING
以下matlab程式碼:
% 17M for the example of free body falling
% Using previous data to modified
clear all
clc
I=sparse(eye(6,6));
N=10;
O=[ 這裡10個數];
y=O';
gg=[1 2 3]; hh=eye(6,6);
aa=sparse(conv2(hh,gg,'same'));
aa=[aa];
M = sparse(eye(6));
H = sparse(zeros(1,6));
H(1,3) = 1;
Q = sparse(160*eye(6));
R = 1;
x0 = [這裡6個數];
%初始值設定成x0
X_befored = zeros(6,N);
X_saved = zeros(6,N);
Pk = sparse(eye(6)); %初始矩陣
xk = x0; %卡爾曼濾波初始值
for k=2:N
x_kp = A*xk; %公式 1
%將公式1 計算得到的在k時間卡爾曼濾波估計值 xk ,存在X_saved的第 k-1 行
X_befored(:, k-1) = x_kp;
P_kp = A*Pk*A'+ Q; %公式 2
K = (P_kp*H') / (H*P_kp*H'+ R); %公式 3
xk = x_kp + K*(y(k-1)-H*x_kp); %公式 4
%將公式4 計算得到的在k時間卡爾曼濾波估計值 xk ,存在X_saved的第 k-1 行
X_saved(:, k-1) = xk;
Pk = (I - K*H)*P_kp; %公式 5
end
%提取卡爾曼估計值中的,第3列
xhat_3 = X_saved(3,:);
....請問上面這組程式碼 怎麼用matlab coder轉成C
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.38.135.82 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1559888989.A.B7F.html
→
06/07 15:07,
5年前
, 1F
06/07 15:07, 1F
推
06/07 18:07,
5年前
, 2F
06/07 18:07, 2F
→
06/07 23:17,
5年前
, 3F
06/07 23:17, 3F
→
06/07 23:18,
5年前
, 4F
06/07 23:18, 4F
推
06/08 11:44,
5年前
, 5F
06/08 11:44, 5F
→
06/08 12:40,
5年前
, 6F
06/08 12:40, 6F
推
06/08 13:00,
5年前
, 7F
06/08 13:00, 7F
→
06/08 23:23,
5年前
, 8F
06/08 23:23, 8F
→
06/08 23:24,
5年前
, 9F
06/08 23:24, 9F
→
06/08 23:24,
5年前
, 10F
06/08 23:24, 10F
→
06/08 23:24,
5年前
, 11F
06/08 23:24, 11F
→
06/08 23:24,
5年前
, 12F
06/08 23:24, 12F
推
06/08 23:43,
5年前
, 13F
06/08 23:43, 13F
抱歉 由於模型本身的力學特性 必須要用矩陣
※ 編輯: Ecampus (36.233.107.158 臺灣), 06/09/2019 01:00:11
推
06/09 13:31,
5年前
, 14F
06/09 13:31, 14F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章