Stop matlabFunction converting operators to element-wise operators
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
How do I stop matlabFunction converting operators to element-wise operators when forming a function handle from a symbolic expression? For example with mtimes and times, or mpower and power.
syms x y;
fh = matlabFunction(mpower(x, y))
This is particularly annoying when wanting to use the function handle on classes which have the operator defined, but not the element-wise operator. For example, a transfer function:
% this works
tf('s')^3
% this does not
fh(tf('s'), 3)
This also has become a problem using the 'realp' and 'genmat' classes. I have had to define the element-wise operators in the classes myself, but surely this cannot be the optimal solution.
0 commentaires
Réponses (1)
Matt J
le 5 Oct 2021
Perhaps as follows?
syms x y;
str = func2str( matlabFunction(mpower(x, y)) );
str(str=='.')='';
fh=str2func(str)
0 commentaires
Voir également
Catégories
En savoir plus sur Conversion Between Symbolic and Numeric dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!