Simulink user defined block

I wanted to calculate the average of a particular array recursively, I am using this code shown below and I am using the user defined function on simulink to do this. I am getting the out of bounds error while i run the simulation, and when i debug, the averaging formula shown below is the problem. What could the reason be, although i feel like its a simple mistake that i am making
function poutavg = fcn(pout)
tstop=2*10^-3;
fsamp=4000000;
for i=2:tstop*fsamp
poutavg =((i-1)/i)*mean(pout(1,i-1))+ (pout(1,i))/i;
i=i+1;
end

1 个评论

When I run this in Matlab it works fine, as long as length(pout) >= length(2:tstop*fsamp). So, check that the dimensions of pout are what you would expect.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Simulink 的更多信息

标签

提问:

2012-3-28

Community Treasure Hunt

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

Start Hunting!

Translated by