How to plot multiple graph
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hello all
I am going to plot f= sin(5x)/x^3 and its derivative f '(x) within the domain x ∈[0.1,0.4]using semilogy plot.
6 Commenti
Risposte (2)
Jon
il 21 Set 2020
I don't have the symbolic toolbox, but I could get your code to work by modifying as follows. Note I did not include the line syms x as I don't have the symbolic toolbox.
x=logspace(0.1,0.4);
f =sin(5*x)./(x.^3);
Df= gradient(f)./gradient(x);
semilogx(x,f,'g')
hold on
semilogx(x,Df,'r')
grid
2 Commenti
Jon
il 21 Set 2020
The key line is
Df= gradient(f)./gradient(x)
This gives a simple numerical approximation to the derivative.
You can see what the gradient function does by typing doc gradient on the command line.
Ameer Hamza
il 21 Set 2020
You are using the symbolic variables incorrectly. Check this code
% clc; clear all; close all;
syms x
f(x)=sin(5*x)./(x.^3);
Df = diff(f,x);
xv = logspace(0.1,0.4);
semilogx(xv, f(xv), 'g')
hold on
semilogx(xv, Df(xv), 'r')
grid
3 Commenti
Image Analyst
il 21 Set 2020
And you might add a legend so you know what color is what.
legend('Original Signal', 'Derivative', 'Location', 'northeast');
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!