How to do differentiation in Matlab

1 回表示 (過去 30 日間)
Anurag Sharma
Anurag Sharma 2024 年 5 月 28 日
編集済み: Torsten 2024 年 5 月 29 日
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.

採用された回答

James Tursa
James Tursa 2024 年 5 月 28 日
編集済み: James Tursa 2024 年 5 月 28 日
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 件のコメント
Anurag Sharma
Anurag Sharma 2024 年 5 月 29 日
編集済み: Anurag Sharma 2024 年 5 月 29 日
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 2024 年 5 月 29 日
編集済み: Torsten 2024 年 5 月 29 日
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)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

製品


リリース

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by