MATLAB function block initialization problem.

조회 수: 5 (최근 30일)
Sandip Bhamare
Sandip Bhamare 2021년 5월 20일
댓글: Jonas 2021년 5월 20일
I am using the matlab function block to execute the logic. For that i am using some variables but they get initialize at every sample time. Due to this my logic is not working properly. I want the variable only get initialize onces in whole simulation. so any possible solution to this type of problem?

답변 (1개)

Jonas
Jonas 2021년 5월 20일
편집: Jonas 2021년 5월 20일
Define your variable as being persistent, to remember its value across executions.
Also, add logic that writes an initialisation value to it only on first execution, as follows:
persistent variable_you_want_to_remember
if isempty(variable_you_want_to_remember)
variable_you_want_to_remember = 12; % initialisation
end
When using a persistent variable, the value will be '[]' on first execution, that's why we can use the function isempty to see if we are on first execution or not.
The next executions, the value of the value will be remembered from last execution.
  댓글 수: 2
Sandip Bhamare
Sandip Bhamare 2021년 5월 20일
thank you Jonas for the reply. I had gone through same procedure in my code for the variable defination and initialization, but the code is not executed as per expectations. some persistent variabls are get intialized after some execution. how to overcome that problem?
Jonas
Jonas 2021년 5월 20일
Please share your code or a minimal example that demonstrates your issue.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Simulink Functions에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by