Operator '+' is not supported for operands of type 'function_handle'.

6 vues (au cours des 30 derniers jours)
JICHAO ZHANG
JICHAO ZHANG le 21 Juin 2023
I have two function handle,such as g=@(x)x+a,f=@(y)y+b
why not do '+'
h=g+f
for example
for t=1:10
h(0)=g;
h=g+t.*f
end

Réponses (2)

Matt J
Matt J le 21 Juin 2023
Modifié(e) : Matt J le 21 Juin 2023
It's a bad idea (i.e. very inefficient) to add two functions together, however, the proper way would be as follows:
g=@(x)x+1;
f=@(y)y+2;
h=@(z) g(z)+f(z);
h(10)
ans = 23
  3 commentaires
Matt J
Matt J le 21 Juin 2023
h=@(x,y) g(x)+f(y);
Dyuman Joshi
Dyuman Joshi le 26 Juin 2023
@JICHAO ZHANG please check Matt's response to your comment.

Connectez-vous pour commenter.


埃博拉酱
埃博拉酱 le 26 Juin 2023
Only symbolic functions can be added directly. You may need to refer to Symbolic Math Toolbox.

Catégories

En savoir plus sur Symbolic Math Toolbox 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!

Translated by