How to do differentiation in Matlab

3 vues (au cours des 30 derniers jours)
Anurag Sharma
Anurag Sharma le 28 Mai 2024
Modifié(e) : Torsten le 29 Mai 2024
clc;
clear;
THT = 0:12:360;
L_spm = [67.14387343 67.08087868 71.27139857 77.8011002 83.48598354 86.53313448 86.96218524 86.54264509 86.55222711 86.96002063 86.43128473 83.48041917 77.77271123 71.24225453 67.07111986 67.25745156 67.08157624 71.23009025 77.76475253 83.46615144 86.42639244 86.96777069 86.54247287 86.56340306 86.9412182 86.52945688 83.49766473 77.78259172 71.25635182 67.06788196 67.14602485];
How to differentiate L_spm with respect to THT? Thanks.

Réponse acceptée

James Tursa
James Tursa le 28 Mai 2024
Modifié(e) : James Tursa le 28 Mai 2024
Are you just asking for piecewise linear differencing for derivative calculations between the points? E.g.,
THT = 0:12:360;
L_spm = [67.14387343 67.08087868 71.27139857 77.8011002 83.48598354 86.53313448 86.96218524 86.54264509 86.55222711 86.96002063 86.43128473 83.48041917 77.77271123 71.24225453 67.07111986 67.25745156 67.08157624 71.23009025 77.76475253 83.46615144 86.42639244 86.96777069 86.54247287 86.56340306 86.9412182 86.52945688 83.49766473 77.78259172 71.25635182 67.06788196 67.14602485];
d = diff(L_spm) ./ diff(THT)
d = 1x30
-0.0052 0.3492 0.5441 0.4737 0.2539 0.0358 -0.0350 0.0008 0.0340 -0.0441 -0.2459 -0.4756 -0.5442 -0.3476 0.0155 -0.0147 0.3457 0.5446 0.4751 0.2467 0.0451 -0.0354 0.0017 0.0315 -0.0343 -0.2526 -0.4763 -0.5439 -0.3490 0.0065
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
Or are you asking how to curve fit and calculate derivatives from the curve?
  2 commentaires
Anurag Sharma
Anurag Sharma le 29 Mai 2024
Modifié(e) : Anurag Sharma le 29 Mai 2024
Thanks for your response & helping me with the differentiation. How do I plot d = diff(L_spm) ./ diff(THT).
When I am plotting 'd' with resepct to 'THT' using "plot(THT,d)". It gives me following error "Error using plot Vectors must be the same length"
Torsten
Torsten le 29 Mai 2024
Modifié(e) : Torsten le 29 Mai 2024
THT = 0:12:360;
L_spm = [67.14387343 67.08087868 71.27139857 77.8011002 83.48598354 86.53313448 86.96218524 86.54264509 86.55222711 86.96002063 86.43128473 83.48041917 77.77271123 71.24225453 67.07111986 67.25745156 67.08157624 71.23009025 77.76475253 83.46615144 86.42639244 86.96777069 86.54247287 86.56340306 86.9412182 86.52945688 83.49766473 77.78259172 71.25635182 67.06788196 67.14602485];
d = gradient(L_spm)./gradient(THT);
plot(THT,d)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by