Have matlabFunction create a function handle with two inputs even when the symbolic expression uses only one.

2 views (last 30 days)
So I have symbolic expressions which sometimes use only one of the two inputs set in their definition. I want matlabFucntion to create a function handle with the same number of input variables as the symbolic expression, and to place their inputs in the same order as they were defined symbolically.
Here is an example code of what I have done, which I know misses to accomodate the dX_mf function handle's inputs correctly.
syms dX(X,Y) dY(X,Y)
dX = Y
dY = X+Y
dX_mF = matlabFunction(dX) % Here I would want to have dX_mF = @(X,Y) instead of dX_mF = @(Y)
dY_mF = matlabFunction(dY) % This works great, with dY_mF = @(X,Y)
Have a nice day,

Accepted Answer

Antonio Mayorquin Galicia
Edited: Antonio Mayorquin Galicia on 9 Mar 2022
Use
dX_mF = matlabFunction(dX, 'Vars' [X Y])
The second part which allows you to change the order of the variables of the function handle inputs.
There is more information in the documentation of matlabFunction.

More Answers (0)

Categories

Find more on Symbolic Math Toolbox in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!