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

7 Ansichten (letzte 30 Tage)
Yash Mistry
Yash Mistry am 11 Aug. 2020
Bearbeitet: KSSV am 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 Kommentar
Yash Mistry
Yash Mistry am 11 Aug. 2020
I have used the MATLAB addon called Curve Fitting. Please help me with this small doubt.
Thank you so much.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 11 Aug. 2020
Bearbeitet: KSSV am 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.

Kategorien

Mehr zu Interpolation finden Sie in Help 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