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 Comment

K E
K E on 28 Mar 2012
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.

Sign in to comment.

Answers (0)

Categories

Products

Tags

Asked:

on 28 Mar 2012

Community Treasure Hunt

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

Start Hunting!