% How do I differentiate the f function so as to get a change in slope graph.
L = 152.4;
b = 76;
d = 12.5;
data = readmatrix('H-3point_63_1.csv');
displacement = data(:,2);
force = data(:,3);
% Cleaning the Data
corr_val = find(force<0|force==0);
if corr_val>0
val = max(corr_val)+1;
else
val = 1;
end
% Plotting Raw Data
plot(displacement(val:end),force(val:end),'-or')
xlabel('Displacement (mm)')
ylabel('Force (kN)')
% Finding and plotting peak force
peakforce = max(force(val:end));
A = find(force == peakforce);
B = max(A);
hold on
plot(displacement(B),force(B),'r*')
% Flexural Strength
sigma = 3*peakforce*L/(2*b*(d^2));
% Curve Fitting
f=fit(displacement(val:end),force(val:end),'poly6');
plot(f,'b')
% Slope
df = diff(f);

3 件のコメント

Yash Mistry
Yash Mistry 2020 年 8 月 11 日
I have used the MATLAB addon called Curve Fitting. Please help me with this small doubt.
Thank you so much.
家
家 2024 年 11 月 30 日
maybe u can use differentiate function.
Walter Roberson
Walter Roberson 2024 年 11 月 30 日
@家 I suggested differentiate() four years ago.

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

 採用された回答

Walter Roberson
Walter Roberson 2020 年 8 月 11 日
編集済み: Walter Roberson 2024 年 11 月 30 日

0 投票

differentiate() not diff()
You will need to pass in the locations to differentiate at.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Interpolation についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by