How to add two functions and display the sum?

17 次查看(过去 30 天)
I am trying to add two functions together and display the addition as a new function.
f=@(x) x^2+x;
g=@(x) 3*x^2+5*x;
z=f(x)+g(x);
I want to print z as:
@(x) 4*x^2+6*x
How do I achieve this? The disp function only gives the output of z as @(x) f(x)+g(x)
  1 个评论
Dyuman Joshi
Dyuman Joshi 2023-2-6
编辑:Dyuman Joshi 2023-2-6
function handles don't resolve the expression per say, for example -
a = 1.3;
b = .2;
c = 30;
parabola = @(x) a*x.^2 + b*x + c
parabola = function_handle with value:
@(x)a*x.^2+b*x+c
This is not displayed as
par = @(x) 1.3*x.^2 + 0.2*x + 30
par = function_handle with value:
@(x)1.3*x.^2+0.2*x+30
Your closest option I think is syms
syms f(x) g(x)
f(x)=x^2+x;
g(x)=3*x^2+5*x;
%symbolic function
z(x)=f(x)+g(x)
z(x) = 
%Converting the symbolic function into function handle
z=matlabFunction(z)
z = function_handle with value:
@(x)x.*6.0+x.^2.*4.0

请先登录,再进行评论。

回答(1 个)

Sarvesh Kale
Sarvesh Kale 2023-2-6
编辑:Sarvesh Kale 2023-2-6
Hi Saumya,
You can try the symbolic math to solve your issue
syms x
f = x*x + x ;
g = 3*x*x + 5*x ;
z = f + g
z = 
x = 3;
subs(f) % will give you f(3)
ans = 
12
subs(z) % will give you f(3) + g(3)
ans = 
54
You can refer the documentation of symbolic math library for symbolic functions

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by