Why my program always get '0' at initialization?

1 view (last 30 days)
YEH
YEH on 26 Jan 2013
function out=gett(A)
if A(1)==0
out=1;
else
out=0;
end
A(1)
end
My M-file Integrator block :initial condition=-2
Why my program always get '0' at initialization?
but workspace is correct output.
How should I avoid this case?
%

Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 26 Jan 2013
Edited: Azzi Abdelmalek on 26 Jan 2013
Your Matlab function is not an integrator, your output signal is 0 or 1
if A(1)==0
out=1;
else
out=0;
end
And the matlab function does not have an initial output setting
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 26 Jan 2013
You are displaying the output of the matlab function. According to your code it is 0 or 1
YEH
YEH on 27 Jan 2013
When time is [0;2;4;6] the input is [-2;0;2;4], so the answer will be [0;1;0;0], that is correct.
But the program get the '0' input that is wrong!! Because the initial input is '-2'.
'0' is the simulink at initialization, I don't want it that is my problem.

Sign in to comment.

Categories

Find more on Simulink Functions in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!