Clear Filters
Clear Filters

Matlab simulink error: Only finite double vector or matrix outputs are supported.

59 views (last 30 days)
In my simulink model where i am using block "Interpreted Matlab function" and the function is:
function test = testFunc()
test = [int16(0) int16(0)]
i get error :
An error occurred while running the simulation and the simulation was terminated Caused by:
Error in 'test2/Interpreted MATLAB Function'. Evaluation of expression resulted in an invalid output. Only finite double vector or matrix outputs are supported
Edit: It crashes in second iteration
What am i doing wrong? Thanks for help
  1 Comment
budi raharjo
budi raharjo on 1 Jul 2018
Edited: budi raharjo on 2 Jul 2018
I have tried by use coder.nullcopy() and it works.
function d=functionsx(s)
a=[5 5 6; 7 6 8];
b=a+s;
d = coder.nullcopy(zeros(size(b)));
d=b

Sign in to comment.

Accepted Answer

Birdman
Birdman on 2 Nov 2017
Why interpreted matlab function for a function like this? Can't you use instead Data Type Conversion block for it?
  5 Comments

Sign in to comment.

More Answers (1)

Xiaoxiong Zhang
Xiaoxiong Zhang on 8 May 2019
Maybe your function output is not a double type data, change your output to a double type data and see if it works? I have met the same problem before and I solve it out by changing my output data to double type using "output=double(output)". Hope this is helpful.
  3 Comments
Zihao Qi
Zihao Qi on 9 Jun 2021
Hi,Ting Liang,
Excuse me,
I encountered the same problem too,have you solved this problem now?

Sign in to comment.

Categories

Find more on Configure and View Diagnostics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!