How to numericaly integrate in simulink-block "matlab function" block

1 view (last 30 days)
Hello,
I'm trying to use "integral" function in "matlab function" in simulink. You can reduce the code to:
function f=fun(x)
coder.extrinsic('syms');
coder.extrinsic('integral');
xmin=0
xmax=1
k=@(x)x
syms x
f=integral(k, xmin, xmax)
end
So when I use this, the error following error occures: "Cannot pass an object of class 'function_handle' to MATLAB function 'integral'". When I try to put in the Function k itself into the integral the error stays the same. When I delete the "@(x)" the Error says that x is not defined.
Can you help me to make the integration work?
thank you

Answers (1)

Jatin Waghela
Jatin Waghela on 22 Jun 2017
The code you provided seems to work fine for me when I run the code directly in MATLAB.
Please use the below command to ensure that there are no other functions names 'integral' what are being referred to instead of the correct 'integral' function.
which -all integral

Categories

Find more on Modeling 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!