how to calculate a derivative
1,068 次查看(过去 30 天)
显示 更早的评论
can some one guide me how to calculate a derivative and integration in matlab . can you please give a little example.
采纳的回答
bym
2012-2-26
Symbolically
syms x real
f = 1/x
int(f,1,2) % integration
ans =
log(2)
diff(f) %differentiation
ans =
-1/x^2
[edit - amplification]
syms x a b real positive
f = 1/x
f =
1/x
int(f) % without limits
ans =
log(x)
int(f,a,b) % with limits
ans =
log(b) - log(a)
fn = matlabFunction(f) % convert symbolic to anonymous function
fn =
@(x)1./x
quadgk(fn,1,2) % integrate numerically
ans =
0.6931
log(2) % previous result from symbolic integration
ans =
0.6931
(fn(2+1e-6)-fn(2))/1e-6 %numerical derivative at fn(2)
ans =
-0.2500
subs(diff(f),2) %substitute 2 into symbolic result previously obtained
ans =
-0.2500
5 个评论
Jan
2012-2-27
Yes, Nasir, then the integral is calculated from 1 to 2. "Symbolically" mean calculations with symbols, usually characters. The result is a formula. "Numerically" means, that you calculate a numerical value, a number.
Sergio E. Obando
2024-6-15
Just here to suggest some recent resources, There is a nice section in the Symbolic Math Toolbox with additional examples for differentiation as well as a FEX curriculum on this topic:
更多回答(3 个)
Magdalena Glinska
2020-11-16
f = @(x) sin(x);
second_derivative_f = matlabFunction(diff(sym(f)));
0 个评论
Hamza saeed khan
2020-11-24
syms x
f = x;
diff(f,x)
why this code give me error as;
>>Error in diff (line 1)
syms x
2 个评论
Walter Roberson
2020-12-22
You probably do not have the symbolic toolbox installed or licensed.
Also, you accidentally named your script diff.m which is going to conflict with calling diff() to differentiate.
Achimsettythanmay
2022-11-14
编辑:Walter Roberson
2022-11-15
syms x real
f = 1/x
int(f,1,2) % integration
diff(f) %differentiation
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Special Values 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!