Data Analysis

ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
Problem 1 (Expanded Prob 3.9 Dowling 5th ed.) ……………………………………………………………. 1
Problem 2 (Expanded Prob 3.10 Dowling 5th ed.) ………………………………………………………….. 9
Problem 3 (Expanded Prob 3.22 Dowling 5th ed.) …………………………………………………………. 18
Patrick Homen
Problem 1 (Expanded Prob 3.9 Dowling 5th ed.)
Stress-strain data from a tension test on AISI 4140 steel tempered at 427C (800F) are listed in Table 1.
The diameter before testing was 8.56 mm, and after fracture it was 6.74 mm. (a) Use the data to plot
an engineering stress-strain curve from intitial point to fracture. (b) Determine the following: E, 0.2%
offset yield strength, UTS, %Elongation (%El), & %Reduction in Area (%RA). (c) Use the data to plot an
engineering stress-strain curve from initial point to about 2% to show the initial part of the data plotted at
a sensitive strain scale. Use this plot to show the determination of the 0.2% Offset Yield Strength (show
offset line on this plot). (d) Calculate true stresses and strains for the data up to the UTS. Plot these values
and compare the resulting true stress-strain curve with the engineering stress-strain curve from (a). Do
this by showing both curves (data to UTS) on the same plot. (e) For the points from (d) that are beyond
yielding, calculate true plastic strains, & plot these with corresponding values of true stresses. Fit these
data to the power equation sigtru=Hepstruplast^n to obtain values of H & n. Show the data AND a “best fit curve” on the plot. Note the “best fit curve” should be determined from the power equation and the determined values of H & n, and NOT just a line connecting the data points. (f) Show the data and fit from (e) on a log-log plot (g) Calculate the true fracture strength and true fracture strain, including the Mirone correction for the former. Also calculate the true plastic strain at fracture and add the corresponding point to an additional log-log plot as completed in (f). If your fitted line is extended (it should be a straight line on this log-log plot), is it consistent with the fracture point? clc clear % Stress & strain data from Table 1 (engineering stress-strain): % sigeng = engineering stress (MPa) % epsengpct = engineering strain (%) % epseng = engineering strain (unitless or mm/mm) sigeng = [0 402 812 1198 1358 1403 1399 1406 1445 1466 1483 1492 1485 … 1462 1395 1325 1251 1171 1084]; %MPa % Final value is fracture stress (fracture strength) epsengpct = [0 0.197 0.405 0.595 0.681 0.732 0.781 1.010 1.386 … 1.823 2.50 3.28 3.99 4.56 5.52 6.49 7.46 8.46 9.40]; % Final value is fracture strain % Calculate unitless engineering strain (don’t like %) 1 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION epseng = epsengpct/100; % (a) Plot engineering stress vs engineering strain: figure(1) plot(epseng,sigeng,’k-o’) title({‘AISI 4140 Steel (800F Temper)’;’Stress vs Strain’}) xlabel(‘Strain, mm/mm’) ylabel(‘Stress, MPa’) % (b) E, sigO, UTS, %El, %RA % Elastic modulus, E: % Regression on first 5 points for E (slope of first 5 points): P = polyfit(epseng(1:5),sigeng(1:5),1); % E = first element in “P” E = P(1); % MPa % Display E in output: fprintf(‘Elastic Modulus = %5.0f MPa\n’,E) % Given initial & final diameters Di & Df Di = 8.56; % mm Df = 6.74; % mm % RA = Reduction in Area RA: RA = (((Di^2)-(Df^2))/(Di^2))100;
fprintf(‘%%Reduction of Area = %4.2f%%\n’,RA)
% EL = %Elongation:
% %Elongation, EL, = strain at fracture – elastic recovered at
fracture:
% Assume “final point is fracture” means AT fracture
% Therefore must subtract elastic part from total strain at fracture
% for plastic strain after fracture to calculate %Elongation
% %EL = (epsfract-(sigfract/E))100% EL = (epseng(19)-sigeng(19)/E)100;
fprintf(‘%%Elongation = %4.2f%%\n’,EL)
% TS = tensile strength = ultimate tensile strength
% Assume UTS is highest stress in table (1492 MPa)
% UTS = Max Engrg Stress
TS = max(sigeng); %MPa
fprintf(‘Tensile Strength = %3.0f MPa\n’,TS)
% sigyield = 0.2% offset yield strength:
% Need sensitive stress-strain plot, part (c) for sigyield:
% (c) Plot first 10 data points for more sensitive strain scale (to
0.02):
% Open new plot window:
figure(2)
plot(epseng(1:10),sigeng(1:10),’k-o’);
title({‘AISI 4140 Steel (800F Temper)’;’Stress vs Strain for
Offset Yield Strength’})
xlabel(‘Strain’)
ylabel(‘Stress, MPa’)
hold on
% Create points for offset line:
% Top of Offset Line above yield point = 1500 MPa
sigoffsettop = 1500; %MPa
% Strain values for Offset Line:
2
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
epsoffset = [0.002 ((sigoffsettop/E)+0.002)];
sigoffset = [0 sigoffsettop];
plot(epsoffset,sigoffset,’k’);
% Show grid on plot to determine sigyield by inspection
grid on
% From plot, 0.2% Offset YS =~ avg stress pts 7 & 8
sigyield = (sigeng(7)+sigeng(8))/2; % MPa
% From plot, offset strain =~avg strain pts 7 & 8
epsyield = (epseng(7)+epseng(8))/2;
% Display 0.2% Offset Yield Strength in output:
fprintf(‘Yield Strength (0.2%% offset) = %3.0f MPa\n’,sigyield)
% (d) True stress & strains to UTS, plot & compare to Engr stressstrain
% Per Dowling (2019, 5th ed.) Figure 3.20 for true stress/strain:
% Determine 2 x yield strain formula limit:
formlimit = 2epsyield; % limit = 0.0179 % for values below 2 x yield strain (formlimit): % sigtru = engineering stress % for values above (beyond) 2 x yield strain: % sigtru = sigeng(1+epseng)
% for all values of true strain up to UTS:
% epstru = ln(1+epseng)
% Calculate true stress and true strain values
% Use formulas from Dowling (Fig3.20,5th ed; Fig4.19,4th ed):
% True stress (sigtru) = engnr stress (sigeng) up to 2 x yield strain
% 2 x yield strain =~ 0.0179 (first 9 points)
sigtru_1 = sigeng(1:9);
% True stress = engrg stress(1+engrg strain) to UTS (points 10-12) sigtru_2 = (ones(1,3)+ epseng(10:12)).sigeng(10:12);
% These are true stress values to UTS
% Concatenate true stress values to form one vector of 12 elements:
sigtru = [sigtru_1,sigtru_2];
% Evaluate true strain values from epstru = ln(1+epseng)
epstru = log(ones(1,12)+epseng(1:12));
% Plot true stress-strain up to UTS:
figure(3)
plot(epstru,sigtru,’b-‘) title({‘AISI 4140 Steel (800F Temper)’;’True Stress-True Strain to UTS’}) xlabel(‘True Strain, mm/mm’) ylabel(‘True Stress, MPa’) grid on % Plot True & Engr on one plot for comparison: figure (4) plot(epstru,sigtru,’b-‘) title({‘AISI 4140 Steel (800F Temper)’;’True vs Engr Comparison’;’Data up to UTS’}) xlabel(‘Strain (engr or true), mm/mm’) ylabel(‘Stress (engr or true), MPa’) grid on hold on plot(epseng(1:12),sigeng(1:12),’r-‘) legend(‘true stress-strain’,’engrg stress-strain’,’Location’,’east’) 3 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION % (e) True stresses & true plastic strains beyond yielding to UTS % (from part (d): % Points beyond yielding to UTS are points 8 through 12 (5 points) % Note still working only up to UTS, so true strain valid % True plastic strain = true strain – true elastic strain % True elastic strain = true stress/E epstruelastic = sigtru/E; epstruplastic = epstru-epstruelastic; figure(5) plot(epstruplastic(8:12),sigtru(8:12),’b‘)
grid on
title({‘AISI 4140 Steel (800F Temper)’;’Stress-True Plastic
Strain’;’Data from beyond yielding to UTS’})
xlabel(‘True Plastic Strain’)
ylabel(‘True Stress, MPa’)
hold on
% Show true stress vs true plastic strain on log-log plot:
% Calculate log of true plastic strain and log of true stress:
logepstruplastic = log10(epstruplastic);
logsigtru = log10(sigtru);
% Determine n & H:
Fit = polyfit(logepstruplastic(8:12),logsigtru(8:12),1);
% Display n & H:
n = Fit(1);
H = 10^Fit(2); %MPa
fprintf(‘The fitting constants are:\n\tStrain Hardening Exponent n =
%5.4f\n\tStrength Coefficient H = %3.0f MPa\n’,n,H)
% Generate “fit” curve from true strain range and “n” & “H”, power
eqn:
% Create linearly spaced values of true plastic strain:
epstruplasticfit = linspace(epstruplastic(8),epstruplastic(12),1000);
% Use flow equation to calculate fitted true stress:
sigtrufit = H(epstruplasticfit.^n); % Add fit line to plot (figure 5) plot(epstruplasticfit,sigtrufit,’r-‘) legend(‘Data Points’,’Fit Line’,’Location’,’northwest’) % (f) Now log-log plot, points after yield to UTS: figure(6) plot(logepstruplastic(8:12),logsigtru(8:12),’b‘)
title({‘AISI 4140 Steel (800F Temper)’;’Log(True Stress) vs Log(True
Plastic Strain)’})
xlabel(‘Log(True Plastic Strain)’)
ylabel(‘Log(True Stress), True Stress in MPa’)
grid on
hold on
% Show data and fit line on the plot:
plot(log10(epstruplasticfit),log10(sigtrufit),’r-‘)
legend(‘Data Points’,’Fit Line’,’Location’,’northwest’)
%(g) True fracture point:
% sigtrufrac = true fracture stress = fracture load/fracture area
% Pf = fracture load = fracture stress * initial area
4
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
Pf = sigeng(19)(pi(Di^2)/4); % Newtons
sigtrufrac = Pf/(pi(Df^2)/4); % MPa % Report true fracture stress: fprintf(‘True Fracture Strength = %3.0f MPa\n’,sigtrufrac) % Mirone correction: % Need true strain beyond necking: % epstrudiff = epstrufract – epsult (epstru>epsult) % Need true strain at fracture, epstrufrac = 2ln(Di/Df)
epstrufrac = 2log(Di/Df); % Report true fracture strain: fprintf(‘True Fracture Strain = %5.5f\n’,epstrufrac) % for fracture point, use last point (pt 19) & ultimate point (pt 12) epstrudiff = epstrufrac – epstru(12); M = 1 – ((0.6058)(epstrudiff^2))+((0.6317)(epstrudiff^3))- ((0.2107)(epstrudiff^4));
% Mirone corrected true fracture stress:
sigtrufracM = Msigtrufrac; % Last plot, log-log plot repeat w/added fracture point, fit line extended: figure(7) plot(logepstruplastic(8:12),logsigtru(8:12),’b‘)
title({‘AISI 4140 Steel (800F Temper)’;’Log(True Stress) vs
Log(True Plastic Strain) to Fracture Point’})
xlabel(‘Log(True Plastic Strain)’)
ylabel(‘Log(True Stress), True Stress in MPa’)
grid on
hold on
plot(log10(epstrufrac),log10(sigtrufracM),’g‘) % Show data and fit line on the plot: epstruplasticfit2 = linspace(epstruplastic(8),epstrufrac,1000); sigtrufit2 = H(epstruplasticfit2.^n);
plot(log10(epstruplasticfit2),log10(sigtrufit2),’r-‘)
legend(‘Data Points’,’Fracture Point’,’Fit
Line’,’Location’,’northwest’)
% After inspection, fit line is NOT consistent with fracture point
fprintf(‘Fit line is NOT consistent with fracture point\n’)
Elastic Modulus = 199735 MPa
%Reduction of Area = 38.00%
%Elongation = 8.86%
Tensile Strength = 1492 MPa
Yield Strength (0.2% offset) = 1403 MPa
The fitting constants are:
Strain Hardening Exponent n = 0.0452
Strength Coefficient H = 1825 MPa
True Fracture Strength = 1748 MPa
True Fracture Strain = 0.47808
Fit line is NOT consistent with fracture point
5
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
6
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
7
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
8
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
Problem 2 (Expanded Prob 3.10 Dowling 5th
ed.)
Engineering stress-strain data from a tension test on 7075-T651 aluminum are given in Table 2. The diameter before testing was 9.07 mm, and after fracture the minimum diameter in the necked region was
7.78 mm. Analyze these data in terms of engineering and true stresses & strains as in Problem 1 (complete
all items (a) through (g)).
clc
clear
% Stress & strain data from Table 2 (engineering stress-strain):
% sigeng = engineering stress (MPa)
% epsengpct = engineering strain (%)
% epseng = engineering strain (unitless or mm/mm)
sigeng = [0 112 222 326 415 473 505 527 542 551 557 563 577 587 …
593 596 597 597 591 571]; %MPa
% Final value is fracture stress (fracture strength)
epsengpct = [0 0.165 0.322 0.474 0.605 0.703 0.797 0.953 1.209 …
1.498 1.819 2.3 4.02 5.98 8.02 9.52 10.97 12.5 13.9 15.33];
% Final value is fracture strain
% Calculate unitless engineering strain (don’t like %)
epseng = epsengpct/100;
9
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
% (a) Plot engineering stress vs engineering strain:
figure(8)
plot(epseng,sigeng,’k-o’)
title({‘7075-T651 Aluminum’;’Stress vs Strain’})
xlabel(‘Strain, mm/mm’)
ylabel(‘Stress, MPa’)
% (b) E, sigO, UTS, %El, %RA
% Elastic modulus, E:
% Regression on first 5 points for E (slope of first 5 points):
P = polyfit(epseng(1:5),sigeng(1:5),1);
% E = first element in “P”
E = P(1); % MPa
% Display E in output:
fprintf(‘Elastic Modulus = %5.0f MPa\n’,E)
% Given initial & final diameters Di & Df
Di = 9.07; % mm
Df = 7.78; % mm
% RA = Reduction in Area RA:
RA = (((Di^2)-(Df^2))/(Di^2))100; fprintf(‘%%Reduction of Area = %4.2f%%\n’,RA) % EL = %Elongation: % %Elongation, EL, = strain at fracture – elastic recovered at fracture: % Assume “final point is fracture” means AT fracture % Therefore must subtract elastic part from total strain at fracture % for plastic strain after fracture to calculate %Elongation % %EL = (epsfract-(sigfract/E))100%
EL = (epseng(20)-sigeng(20)/E)100; fprintf(‘%%Elongation = %4.2f%%\n’,EL) % TS = tensile strength = ultimate tensile strength % Assume UTS is highest stress in table (597 MPa) % UTS = Max Engrg Stress TS = max(sigeng); %MPa fprintf(‘Tensile Strength = %3.0f MPa\n’,TS) % Report Fracture Strength (Breaking Strength) % Index last element in engineering stress vector sigbreak = sigeng(end); fprintf(‘Fracture (Breaking) Strength = %3.0f MPa\n’,sigbreak) % sigyield = 0.2% offset yield strength: % Need sensitive stress-strain plot, part (c) for sigyield: % (c) Plot first 11 data points for more sensitive strain scale (to ~0.02): % Open new plot window: figure(9) plot(epseng(1:11),sigeng(1:11),’k-o’); title({‘7075-T651 Aluminum’;’Stress vs Strain for Offset Yield Strength’}) xlabel(‘Strain’) ylabel(‘Stress, MPa’) hold on % Create points for offset line: 10 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION % Top of Offset Line above yield point = 600 MPa sigoffsettop = 600; %MPa % Strain values for Offset Line: epsoffset = [0.002 ((sigoffsettop/E)+0.002)]; sigoffset = [0 sigoffsettop]; plot(epsoffset,sigoffset,’k’); % Show grid on plot to determine sigyield by inspection grid on % From plot, 0.2% Offset YS very close to 8th data point sigyield = round(sigeng(8), -1); % MPa, rounded to 10’s place % From plot, offset strain very close to 8th data point epsyield = round(epseng(8), 3); %rounded to hundredths % Display 0.2% Offset Yield Strength in output: fprintf(‘Yield Strength (0.2%% offset) = %3.0f MPa\n’,sigyield) % (d) True stress & strains to UTS, plot & compare to Engr stressstrain % Per Dowling (2019, 5th ed.) Figure 3.20 for true stress/strain: % Determine 2 x yield strain formula limit: formlimit = 2epsyield; % limit = 0.02
% for values below 2 x yield strain (formlimit):
% sigtru = engineering stress
% for values above (beyond) 2 x yield strain:
% sigtru = sigeng(1+epseng) % for all values of true strain up to UTS: % epstru = ln(1+epseng) % Calculate true stress and true strain values % Use formulas from Dowling (Fig3.20,5th ed; Fig4.19,4th ed): % True stress (sigtru) = engnr stress (sigeng) up to 2 x yield strain % 2 x yield strain =~ 0.02 (first 11 points) sigtru_1 = sigeng(1:11); % True stress = engrg stress(1+engrg strain) to UTS (points 12-17)
sigtru_2 = (ones(1,6)+epseng(12:17)).sigeng(12:17); % These are true stress values to UTS % Concatenate true stress values to form one vector of 12 elements: sigtru = [sigtru_1,sigtru_2]; % Evaluate true strain values from epstru = ln(1+epseng) epstru = log(ones(1,17)+epseng(1:17)); % Plot true stress-strain up to UTS: figure(10) plot(epstru,sigtru,’b‘)
title({‘7075-T651 Aluminum’;’7071-T651 Aluminum True Stress-True
Strain to UTS’})
xlabel(‘True Strain, mm/mm’)
ylabel(‘True Stress, MPa’)
grid on
% Plot True & Engr on one plot for comparison:
figure (11)
plot(epstru,sigtru,’b-‘)
title({‘7071-T651 Aluminum’;’True vs Engr Comparison’;’Data up to
UTS’})
xlabel(‘Strain (engr or true), mm/mm’)
ylabel(‘Stress (engr or true), MPa’)
grid on
11
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
hold on
plot(epseng(1:17),sigeng(1:17),’r-‘)
legend(‘true stress-strain’,’engrg stress-strain’,’Location’,’east’)
% (e) True stresses & true plastic strains beyond yielding to UTS
% (from part (d):
% Points beyond yielding to UTS are points 9 through 17 (9 points)
% Note still working only up to UTS, so true strain valid
% True plastic strain = true strain – true elastic strain
% True elastic strain = true stress/E
epstruelastic = sigtru/E;
epstruplastic = epstru-epstruelastic;
figure(12)
plot(epstruplastic(9:17),sigtru(9:17),’b‘) grid on title({‘7071-T651 Aluminum’;’Stress-True Plastic Strain’;’Data from beyond yielding to UTS’}) xlabel(‘True Plastic Strain’) ylabel(‘True Stress, MPa’) hold on % Show true stress vs true plastic strain on log-log plot: % Calculate log of true plastic strain and log of true stress: logepstruplastic = log10(epstruplastic); logsigtru = log10(sigtru); % Determine n & H: Fit = polyfit(logepstruplastic(9:17),logsigtru(9:17),1); % Display n & H: n = Fit(1); H = 10^Fit(2); %MPa fprintf(‘The fitting constants are:\n\tStrain Hardening Exponent n = %5.4f\n\tStrength Coefficient H = %3.0f MPa\n’,n,H) % Generate “fit” curve from true strain range and “n” & “H”, power eqn: % Create linearly spaced values of true plastic strain: epstruplasticfit = linspace(epstruplastic(9),epstruplastic(17),1000); % Use flow equation to calculate fitted true stress: sigtrufit = H(epstruplasticfit.^n);
% Add fit line to plot (figure 5)
plot(epstruplasticfit,sigtrufit,’r-‘)
legend(‘Data Points’,’Fit Line’,’Location’,’northwest’)
% (f) Now log-log plot, points after yield to UTS:
figure(13)
plot(logepstruplastic(9:17),logsigtru(9:17),’b*’)
title({‘7075-T651 Aluminum’;’Log(True Stress) vs Log(True Plastic
Strain)’})
xlabel(‘Log(True Plastic Strain)’)
ylabel(‘Log(True Stress), True Stress in MPa’)
grid on
hold on
% Show data and fit line on the plot:
plot(log10(epstruplasticfit),log10(sigtrufit),’r-‘)
legend(‘Data Points’,’Fit Line’,’Location’,’northwest’)
12
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
%(g) True fracture point:
% sigtrufrac = true fracture stress = fracture load/fracture area
% Pf = fracture load = fracture stress * initial area
Pf = sigeng(20)(pi(Di^2)/4); % Newtons
sigtrufrac = Pf/(pi(Df^2)/4); % MPa % Report true fracture stress: fprintf(‘True Fracture Strength = %3.0f MPa\n’,sigtrufrac) % Mirone correction: % Need true strain beyond necking: % epstrudiff = epstrufract – epsult (epstru>epsult) % Need true strain at fracture, epstrufrac = 2ln(Di/Df)
epstrufrac = 2log(Di/Df); % Report true fracture strain: fprintf(‘True Fracture Strain = %5.5f\n’,epstrufrac) % for fracture point, use last point (pt 20) & ultimate point (pt 17) epstrudiff = epstrufrac – epstru(17); M = 1 – ((0.6058)(epstrudiff^2))+((0.6317)(epstrudiff^3))- ((0.2107)(epstrudiff^4));
% Mirone corrected true fracture stress:
sigtrufracM = Msigtrufrac; % Last plot, log-log plot repeat w/added fracture point, fit line extended: figure(14) plot(logepstruplastic(9:17),logsigtru(9:17),’b‘)
title({‘7075-T651 Aluminum’;’Log(True Stress) vs Log(True Plastic
Strain) to Fracture Point’})
xlabel(‘Log(True Plastic Strain)’)
ylabel(‘Log(True Stress), True Stress in MPa’)
grid on
hold on
plot(log10(epstrufrac),log10(sigtrufracM),’g‘) % Show data and fit line on the plot: epstruplasticfit2 = linspace(epstruplastic(9),epstrufrac,1000); sigtrufit2 = H(epstruplasticfit2.^n);
plot(log10(epstruplasticfit2),log10(sigtrufit2),’r-‘);
legend(‘Data Points’,’Fracture Point’,’Fit
Line’,’Location’,’northwest’);
% After inspection, fit line is NOT consistent with fracture point
fprintf(‘Fit line is NOT consistent with fracture point\n\n’);
% (h) Tensile Test Properties Table:
fprintf(‘(h) Table of tensile test properties:\n\n’);
% Create array of values for fprintf to “print” from:
tableArray1 = [E sigyield TS sigbreak EL RA];
% Table Title:
fprintf(‘\t\t\t\t\t\t\t\t Tensile Test Properties\n’);
% Underline Title:
fprintf(‘\t—————————————————–\n’);
fprintf(‘\t E(MPa)\t YS(MPa)\t TS(MPa)\t FS(MPa)\t %%EL(%%)\t\t %
%RA(%%)\n’);
13
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
fprintf(‘\t——–\t——–\t——–\t——–\t——–\t——–
\n’);
% Table values from the array:
fprintf(‘\t %5.0f\t\t %5.0f\t\t %5.0f\t\t\t %5.0f\t\t\t\t %4.2f\t\t\t
\t %4.2f\n\n’,tableArray1′);
% (i) True Tensile Test Properties Table:
fprintf(‘(i) Table of true tensile test properties:\n\n’);
% Create array of values for fprintf to “print” from:
tableArray2 = [sigtrufrac sigtrufracM H n];
% Table Title:
fprintf(‘\t\t\t\t\t True Tensile Test Properties\n’);
% Underline Title:
fprintf(‘\t————————————————————-
\n’);
fprintf(‘\t TrueFracStr(MPa)\t MironeTruFracStr(MPa)\t H(MPa)\t
n\n’);
fprintf(‘\t——————\t———————–\t ——–
\t——–\n’);
% Table values from the array:
fprintf(‘\t\t\t\t %5.0f\t\t\t\t\t\t\t\t\t\t\t\t\t\t %5.0f\t\t\t\t\t
\t\t\t\t\t\t %5.0f\t\t\t\t\t%4.4f\n’,tableArray2′);
Elastic Modulus = 68735 MPa
%Reduction of Area = 26.42%
%Elongation = 14.50%
Tensile Strength = 597 MPa
Fracture (Breaking) Strength = 571 MPa
Yield Strength (0.2% offset) = 530 MPa
The fitting constants are:
Strain Hardening Exponent n = 0.0657
Strength Coefficient H = 764 MPa
True Fracture Strength = 776 MPa
True Fracture Strain = 0.30683
Fit line is NOT consistent with fracture point
(h) Table of tensile test properties:
Tensile Test Properties

E(MPa) YS(MPa) TS(MPa) FS(MPa) %EL(%) %RA(%)

68735 530 597 571 14.50 26.42
(i) Table of true tensile test properties:
True Tensile Test Properties

TrueFracStr(MPa) MironeTruFracStr(MPa) H(MPa) n

776 761 764 0.0657
14
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
15
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
16
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
17
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
Problem 3 (Expanded Prob 3.22 Dowling 5th
ed.)
For a number of points during a tension test on Mabn-Ten steel, engineering stress and strain data are given
in Table 3. Also given are minimum diameters measured in the necked region in the latter portions of the
test. The initial diameter was 6.32 mm. (a) Evaluate the following engineering stress-strain properties:
elastic modulus, yield strength, ultimate tensile strength, and percent reduction in area. (b) Determine true
stresses and true strains to the fracture point, and plot the true stress-true strain curve from initial point
to fracture. (c) Determine true plastic strains from two times the yield strain to the break point. (d) Fit
the values of trues stress and true plastic strain from 2 x yield strain to the ultimate point to the power
equation: sigtru=Hepstruplast^n to determine values of the strength coefficient, H, and the strain hardening exponent, n. Report these values in your output. (e) Determine Mirone corrected true stresses from beyond necking to the fracture point. Determine Bridgman corrected true stresses (1944 curve) from beyond necking to the fracture point. Determine Bridgman corrected true stresses (1952 curve) from beyond necking to the fracture point. (f) Create a table to show values of true stresses and strains from 2 X yield strain to fracture. Include in your table columns for engineering stress, true stress, true stress with Mirone corrected stress after necking, true stress with Bridgman corrected stress (1944) after necking, true stress with Bridgman corrected stress (1952) after necking, true strain from 2 x yield strain to fracture, and true plastic strain from 2x yield strain to fracture (7 columns). Be sure to output the table properly formatted with column titles and units. (g) Create a plot showing all true stresses (raw and corrected) versus true plastic strain from 2 x yield strain to fracture. Show data points for all four true stresses (raw and corrected) versus true plastic strain on the same plot. Also, use the values of n & H (from part (d)) to determine a fit line from 2 x yield strain to fracture, and show the line on the plot with the four sets of true stress vs true plastic strain data points. Use a legend to identify each data set and the fit line. (h) Create an additional 18 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION plot as in (g) using log scales for the stress and strain axes (log base 10). (i) Comment on the fit of the data iin both plots from (g) & (h). clc clear % Enter given data: % Stress, strain, diameter data from Table 3 (engineering stressstrain): % sigeng = engineering stress (MPa) % epseng = engineering strain (unitless or mm/mm) % diams = minimum diameters at necked region sigeng = [0 125 257 359 317 333 357 397 458 507 541 576 558 531 476 379]; % Stress values in sigeng in MPa % Final value is fracture stress (fracture strength) % First 11 values of engineering strain are given: epseng = [0 0.0006 0.0012 0.0017 0.0035 0.0070 0.01 0.017 0.03 … 0.05 0.079]; % Final value is fracture strain % Initial diameter given as 6.32 mm Di = 6.32; % mm % Diameters corresponding to last six stress values: diams = [5.99 5.72 5.33 5.08 4.45 3.5]; % mm % Final diameter is fracture diameter, Df. Df = diams(6); % (a) Plot engineering stress vs engineering strain (11 points) to show % linear region for E determination and yielding for Offset Yield Strength: figure(15) plot(epseng,sigeng(1:11),’k-o’) title(‘Man-Ten Steel Stress vs Strain’) xlabel(‘Strain, mm/mm’) ylabel(‘Stress, MPa’) % Now E, sigO, UTS, %El, %RA % Elastic modulus, E: % Regression on first 4 points for E (slope of first 4 points): P = polyfit(epseng(1:4),sigeng(1:4),1); % E = first element in “P” E = P(1); % MPa % Display E in output: fprintf(‘Elastic Modulus = %5.0f MPa\n’,E) % EL = %Elongation: % Final engineering strain and final gage length not given % Cannot determine final engr strain from deltaL/L % %EL determination not possible % State this in output: % But %EL not asked for, so no need to state the following (comment out): 19 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION % fprintf(‘%%Elongation:\n\tNeither final gage length nor final engineering strain given\n\tCannot determine %%Elongation\n’) % Yield Strength: % sigyield = 0.2% offset yield strength: % Need sensitive stress-strain plot for sigyield: % Plot first 8 data points for more sensitive strain scale (to ~0.02): % Open new plot window: figure(16) plot(epseng(1:8),sigeng(1:8),’k-o’); title({‘Man-Ten Steel’;’Stress vs Strain for Offset Yield Strength’}) xlabel(‘Strain’) ylabel(‘Stress, MPa’) hold on % Create points for offset line: % Top of Offset Line above yield point = 500 MPa sigoffsettop = 500; %MPa % Strain values for Offset Line: epsoffset = [0.002 ((sigoffsettop/E)+0.002)]; sigoffset = [0 sigoffsettop]; plot(epsoffset,sigoffset,’k’); % Show grid on plot to determine sigyield by inspection grid on % From plot, 0.2% Offset YS = stress at point 5 sigyield = sigeng(5); % MPa % From plot, offset strain = strain at point 5 epsyield = epseng(5); % Display 0.2% Offset Yield Strength in output: fprintf(‘Yield Strength (0.2%% offset) = %3.0f MPa\n’,sigyield) % Ultimate tensile strength: % TS = tensile strength = ultimate tensile strength % Assume UTS is highest stress in table (1492 MPa) % UTS = Max Engrg Stress TS = max(sigeng); %MPa fprintf(‘Tensile Strength = %3.0f MPa\n’,TS) % Given initial & final diameters Di & Df % RA = Reduction in Area RA: RA = (((Di^2)-(Df^2))/(Di^2))100;
fprintf(‘%%Reduction in Area = %4.2f%%\n’,RA)
% (b) True stresses & true strains to fracture; plot:
% Calc true stresses in 3 different sections of data:
% Concatenate sigtru1, sigtru2, & sigtru3:
% sigtru1:
% True stresses = engineering stresses up to 2 x yield strain (1st 4
pts):
sigtru1 = sigeng(1:4);
% sigtru2:
% True stresses = engr stress(1 + engr strain) points 5 through 10:
sigtru2 = (ones(1,6)+epseng(5:10)).sigeng(5:10); % sigtru3: % Use given diameters for final six data points w/diameters given: 20 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION % true stresses = (engr stress x initial area)/area at load % Use formula sigtru = sigeng x (Ai/A) = sigeng x ((Di^2)/(D^2)): % Diameters of last six points = diams (vector defined above): sigtru3 = sigeng(11:16).(((Di^2)ones(1,6))./(diams.^2)); % Concatenate: sigtru = [sigtru1 sigtru2 sigtru3]; % True strains from two sections of data: % Concatenate epstru1 & epstru2 % epstru1: % epstru = ln(1 + epseng) for first 10 points where diameters not given: epstru1 = log(ones(1,10) + epseng(1:10)); % epstru2: % epstru = 2ln(Di/D) for last 6 points with diameters given:
epstru2 = 2 * log(((Di(ones(1,6)))./diams)); % Concatenate: epstru = [epstru1 epstru2]; % Plot sigtru vs epstru from zero to fracture: figure(17) plot(epstru,sigtru,’b-‘)
title({‘Man-Ten Steel’;’True Stress vs True Strain to Fracture’})
xlabel(‘True Strain’)
ylabel(‘True Stress, MPa’)
% (c) True plastic strains from two times yield to fracture:
% 2 x yield is beyond first 5 points
% Subtract true elastic strain from true strain points 6 through 16:
epstruplastic = epstru(6:16)-sigtru(6:16)/E;
% (d) Fit values of sigtru and epstru from 2x yield to ultimate, power
eqn:
% ultimate point is point 12 of original data
% sigtru values are sigtru(6:12)
% epstruplastic are epstruplastic(1:7)
P = polyfit(log10(epstruplastic(1:7)),log10(sigtru(6:12)),1);
% n = 1st element in P
n = P(1);
% H = 10^(2nd element in P)
H = 10^(P(2)); % MPa
% Report n & H:
fprintf(‘The strain hardening exponent is:\n\tn = %5.4f\n’,n)
fprintf(‘The strength coefficient is:\n\tH = %3.0f MPa\n\n’,H)
% (e) Mirone & Bridgman (1944 & 1952):
% Correction on true stress beyond ultimate = points 13 through 16:
% Mirone correction:
% Need difference between epstru beyond necking & eps ult for all 4
points:
% epstrudiff = epstru – epsult (epstru>epsult) for all 4 points
% LAST POINT epstru-epsult > 1.1: DO NOT INCLUDE!! (outside range)
% True strain at ult= epstru(12)
epstrudiff = epstru(13:16) – (ones(1,4).epstru(12)); 21 ME180 HMWK ASSGT 2 PROBS 1,2,3 SOLUTION M = (ones(1,4)) – (((0.6058)(epstrudiff.^2))+((0.6317)(epstrudiff.^3))- ((0.2107)(epstrudiff.^4)));
% Mirone corrected true stress:
sigtruM = M.(sigtru(13:16)); % Create vector of 16 values for table with last 4 Mirone corrected: sigtruMirone = [sigtru(1:12) sigtruM]; % Bridgman 1944: % B44 = 0.0684x^3 + 0.0461x^2 – 0.205x + 0.825 % x = log10(true strain) % apply to last 4 points xB44 = log10(epstru(13:16)); B44 = (0.0684(xB44.^3))+(0.0461(xB44.^2))-(0.205(xB44)) +
(0.825ones(1,4)); sigtruB44 = B44.sigtru(13:16);
% Create vector of 16 values for table with last 4 Bridgman 1944
corrected:
sigtruBridg44 = [sigtru(1:12) sigtruB44];
% Bridgman 1952:
% B52 = 0.122x^4+0.162x^3-0.0711x^2-0.259x+0.852
% x = log10(true strain)
% apply to last 4 points
xB52 = log10(epstru(13:16));
B52 = (0.122(xB52.^4))+(0.162(xB52.^3))-(0.0711(xB52.^2))- (0.259xB52)+(0.852ones(1,4)); sigtruB52 = B52.sigtru(13:16);
% Create vector of 16 values for table with last 4 Bridgman 1952
corrected:
sigtruBridg52 = [sigtru(1:12) sigtruB52];
% (f) Create table, 7 columns from 2 x yield strain to fracture
% Table will include values from points 6 through 16 (11 rows of data)
% Create array, 12 x 7, in order of table column preference
% Order: EngrStress, TruStress, TruStrain, TruPlastStrain, Mirone,
% Bridg44,% Bridg52
% The following table formats well in the command output:
% ERASED IT BY MISTAKE
% The following table formats well as published to pdf:
% Create array of values from which fprintf will “print”
% Index specified values out of existing vectors
TableArray = [sigeng(6:16);sigtru(6:16);epstru(6:16);epstruplastic;…
sigtruMirone(6:16);sigtruBridg44(6:16);sigtruBridg52(6:16)];
% Table Title:
fprintf(‘Table of Stresses (Engr, True-Raw and Corrected) and True
Strains:\n’);
Brdg44\t Brdg52\n’);
% Units:
fprintf(‘\t (MPa)\t\t (MPa)\t\t\t\t\t \t \t (MPa)\t
(MPa)\t (MPa)\n’);
22
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
% Table values from the array:
fprintf(‘\t %5.0f\t\t %5.0f\t\t %5.4f\t %5.4f\t %5.0f\t %5.0f\t
%5.0f\n’,TableArray);
fprintf(‘NOTE:\n’)
fprintf(‘\tLast point in Mirone corrected stress not included in plot
\n’)
fprintf(‘\tThis point, true strain – true strain at ultimate > 1.1\n’)
fprintf(‘\tDowling: beyond 1.1, Mirone loses accuracy & should not be
used\n’)
% (g) Plot all true stresses & true plastic strains
% From 2 x yield strain to fracture
figure(18)
plot(epstruplastic,sigtru(6:16),’k
+’,epstruplastic(1:10),sigtruMirone(6:15),’b*’,…

epstruplastic,sigtruBridg44(6:16),’ro’,epstruplastic,sigtruBridg52(6:16),’gx’);
title({‘Man-Ten Steel’;’True Stress vs True Plastic Strain’});
xlabel(‘True Plastic Strain’);
ylabel(‘True Stress (MPa)’);
grid on
hold on
% Plot fit line:
epstruplasticfit = linspace(epstruplastic(1),epstruplastic(11),1000);
sigtrufit = H(epstruplasticfit.^n); plot(epstruplasticfit,sigtrufit,’b-‘); legend(‘Data Points’,’Mirone’,’Bridgman1944′,’Bridgman1952′,’Fit Line’,’Location’,’northwest’); %(h) log plots: figure(19) plot(log10(epstruplastic),log10(sigtru(6:16)),’k +’,log10(epstruplastic(1:10)),… log10(sigtruMirone(6:15)),’b‘,log10(epstruplastic),…
log10(sigtruBridg44(6:16)),’ro’,log10(epstruplastic),…
log10(sigtruBridg52(6:16)),’gx’);
title({‘Man-Ten Steel’;’Log(True Stress) vs Log(True Plastic
Strain)’});
xlabel(‘Log(True Plastic Strain)’);
ylabel(‘Log(True Stress), True Stress in (MPa)’);
grid on
hold on
% Plot fit line:
epstruplasticfit = linspace(epstruplastic(1),epstruplastic(11),1000);
sigtrufit = H*(epstruplasticfit.^n);
plot(log10(epstruplasticfit),log10(sigtrufit),’b-‘);
legend(‘Data Points’,’Mirone’,’Bridgman1944′,’Bridgman1952′,’Fit
Line’,’Location’,’northwest’);
%(i) Comment on fit on both plots
% Bridgman 1952 corrects true stress after necking best
fprintf(‘Inspection of the plots shows:\n’)
23
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
fprintf(‘Data follow Bridgman (1952) corrected true stress best\n’);
Elastic Modulus = 212181 MPa
Yield Strength (0.2% offset) = 317 MPa
Tensile Strength = 576 MPa
%Reduction in Area = 69.33%
The strain hardening exponent is:
n = 0.2072
The strength coefficient is:
H = 982 MPa
Table of Stresses (Engr, True-Raw and Corrected) and True Strains:
(MPa) (MPa) (MPa) (MPa) (MPa)
333 335 0.0070 0.0054 335 335 335
357 361 0.0100 0.0083 361 361 361
397 404 0.0169 0.0150 404 404 404
458 472 0.0296 0.0273 472 472 472
507 532 0.0488 0.0463 532 532 532
541 602 0.1073 0.1044 602 602 602
576 703 0.1995 0.1962 703 703 703
558 785 0.3407 0.3370 774 725 743
531 822 0.4368 0.4329 787 741 765
476 960 0.7016 0.6971 750 823 854
379 1236 1.1819 1.1761 16 1001 1029
NOTE:
Last point in Mirone corrected stress not included in plot
This point, true strain – true strain at ultimate > 1.1
Dowling: beyond 1.1, Mirone loses accuracy & should not be used
Inspection of the plots shows:
Data follow Bridgman (1952) corrected true stress best
24
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
25
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
26
ME180 HMWK ASSGT 2
PROBS 1,2,3 SOLUTION
Published with MATLAB® R2019b
27