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

2 views (last 30 days)
Yash Mistry on 11 Aug 2020
Edited: KSSV on 11 Aug 2020
% 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);
##### 1 CommentShowHide None
Yash Mistry on 11 Aug 2020
I have used the MATLAB addon called Curve Fitting. Please help me with this small doubt.
Thank you so much.

Sign in to comment.

### Answers (1)

Walter Roberson on 11 Aug 2020
Edited: KSSV on 11 Aug 2020
<https://www.mathworks.com/help/curvefit/sfit.differentiate.html>
differentiate() not diff()
You will need to pass in the locations to differentiate at.
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Categories

Find more on Linear and Nonlinear Regression in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!