Undefined function 'diff' for input arguments of type 'cfit'.

% 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 Kommentare

I have used the MATLAB addon called Curve Fitting. Please help me with this small doubt.
Thank you so much.
maybe u can use differentiate function.
@家 I suggested differentiate() four years ago.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 11 Aug. 2020
Bearbeitet: Walter Roberson am 30 Nov. 2024

0 Stimmen

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

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with Curve Fitting Toolbox finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by