Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Dimensionality issue with Matlab Function

1 回表示 (過去 30 日間)
want2know
want2know 2013 年 11 月 4 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
I thought this should be fairly simple, I really have no idea what went wrong, been trying for a week, gosh!! so ashamed of myself.
I define the following at Workspace: I=[5 5.1 5.2 5.2]; V=[95 80 85 20];
I expect an output like this: at t=0, arr=20, at t=1, arr=30, at t=2, arr=40,
When I run the simulation, what I got is: at t=0, arr=20, 0, 0, 0, at t=1, arr=0, 10, 0, 0, at t=2, arr=0, 0, 10, 0,
There are few problems with this result: 1. I expect only one arr value at a particular time, but it came out four arr values at a time
I wonder why the arr never adds up to 30 and 40 etc My system is as follow: http://imgur.com/nEKDqqS
The codes are here: http://imgur.com/Cipjbyn
  6 件のコメント
want2know
want2know 2013 年 11 月 5 日
編集済み: want2know 2013 年 11 月 5 日
function ar = fcn(signal, V, count)
integ_signal=zeros(4,1); arr=zeros(4,1);
if count<=(length(signal)) if count==1 integ_signal(count,1) = 20; % Initial Condition arr(count,1)= integ_signal(count,1); else integ_signal(count,1) = arr(count-1,1) + 10; arr(count,1)= integ_signal(count,1); end end
ar = arr(count,1);
end
want2know
want2know 2013 年 11 月 5 日
I run the codes in m file without any function, it did gives me correct value, 20, 30,40. but i dont know why when I combine all the blocks in Simulink, the value stays at 10 all the time

回答 (0 件)

この質問は閉じられています。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by