Você está na página 1de 35

Nofrijon Sofyan, Ph.D.

Case Study
Lecture #05
Disclaimer: This lecture note was edited from various sources for the solely of teaching and learning purposes. It may contain copyrighted materials from their respective
owners; therefore, apart form teaching and learning purposes, this lecture note may not be reproduced, stored, or transmitted in any form or by any means.
Outline
3
Background
Formula
MatLAB Solution
Exercise
Case Study
4
The strengths of 10 nominally identical ceramic bars
were measured and found to be 387, 350, 300, 420,
400, 367, 410, 340, 345, and 310 MPa. (a)
Determine m and
0
for this material, (b) Calculate
the design stress that would ensure a survival
probability higher than 0.999.
Background
5
When we measure the strength of a series of
equivalent ceramic specimens we typically find
considerable scatter results.
The reason is due to the size distribution of flaws
that are responsible for failure.
This behavior is very different from that of metals.
6
Consequently we have to adopt different design
approaches when we use ceramics.
When we design components using metals we
determine the maximum stress that will be present in
the component and then select a metal that has a
larger strength with safety margin is often included.
This approach is referred to as deterministic design.
7
It does not work with ceramics because of the large
scatter; rather we have to use a probabilistic
approach in which we represent this scatter in a
quantitative way so that these materials can be
used safely.
The most popular method is to use Weibull
distribution, which are based on the weakest link
approach.
8
The Weibull distribution function gives the
probability of survival (S), or, alternatively, the
probability of failure (S
F
), or S
n
= 1 S
F
The other way to determine survival probability for
nth specimen is through the relation

= 1

+1
9
The more accurate expression comes from statistical
analysis

= 1
0.3
+0.4
Weibull distribution is given by
=
1
exp

where f(x) is the frequency distribution of the


random variable x and m is a shape factor, usually
referred to as the Weibull modulus.
10
Since one is dealing with a strength
distribution, the random variable x
is defined as /
0
, where is the
failure stress and
0
is a
normalizing parameter, required to
render x dimensionless.
11
Replacing x by /
0
in the Weibull distribution, one finds
the survival probability, i.e., the fraction of samples that
would survive a given stress level, is simply
=
/
0

0
or
= exp

12
Rearrange and taking the natural log of both sides
twice yields
lnln
1

= ln

0
= ln ln
0
Plotting ln ln(l/S) versus ln yields a straight line
with slope m.
13
The physical significance of
0
is now also obvious:
It is the stress level at which the survival probability
is equal to 1/e, or 0.37.
Once m and
0
are determined from the set of
experimental results, the survival probability at any
stress can be easily calculated
Solution
14
Weibull solution to the problem is by using the formula:
= exp

To determine m and
0
, the Weibull plot for this set of
data has to be made by ranking the specimens in order
of increasing strength, 1 , 2 , 3 , . . . , n , n + 1, . . . , N,
where N is the total number of samples.
15
Determine the survival probability for the nth
specimen

= 1
0.3
+0.4
Plot - ln ln( 1 /S) versus ln , the least-squares fit to
the resulting line is the Weibull modulus
lnln
1

= ln

0
= ln ln
0
16
Summary of data needed to find m from a set of experimental results
17
The last two columns in
previous table are plotted
into a graph.
A least-squares fit of the
data yields a slope of 9.5,
which is typical of many
conventional as-finished
ceramics.
18
For statistical purposes, from the equation Y = A +
BX
=

2

2
=

It can be shown that


0
381 MPa (i.e. when - ln ln
1/S = 0).
19
(b) To calculate the stress at which the survival
probability is 0.999, use equation:
= exp

or
0.999 = exp

381
9.5305
from which = 184 MPa
MatLAB solution
20
%weibull1.m
clear all; clc;
dt = [387, 350, 300, 420, 400, 367, 410, 340,
345, 310];
sigma = sort (dt, 'ascend'); %sort the data
n=1:numel(sigma);
Sn=1-(n-0.3)/(numel(sigma)+0.4);
21
ln_ln_Sn=-log(log(1./Sn));
ln_sigma=log(sigma);
disp(' Rank Sn sigma ln sigma ln ln Sn') %
display text above the table
disp([n' Sn' sigma' ln_sigma' ln_ln_Sn']) %create a table
p=polyfit(ln_sigma,ln_ln_Sn,1)
sigma_zero = exp(p(2)/-p(1))
sigma_max = sigma_zero*(log(1/0.999))^(1/-p(1))
Manual graph fitting
22
plot(ln_sigma, ln_ln_Sn)
A window will pop up
Click menu Tools, Basic
Fitting
Tick on Linear, then click
on the right Arrow
23
24
You can also plot the graph in the forms of linear
model:
mdl=LinearModel.fit(ln_sigma,ln_ln_Sn)) % this
command give simple statistic table
plot(mdl) % plot the graph and the linear model
Interaction with Excel
25
Data can be read from another source such as MS
Excel with the format:
data=xlsread('filename', 'sheet', 'range');
Eg:
sigma=xlsread('data.xlsx','B3:B10');
MatLAB m-file
26
%Weibull2.m
clear all; clc %Clear all data from memory
data= xlsread('Ceramics data.xlsx', 'C1:L1'); %Read the
Excel data
sigma = sort (data, 'ascend'); %Sort the data
N = numel(sigma); %Number of data
n =1:N;
27
Sn = 1 - (n-0.3)/(N+0.4);
ln_ln_Sn = - log (log (1./Sn));
ln_sigma = log (sigma);
p = polyfit (ln_sigma, ln_ln_Sn,1) %1 refer to linear
plot
sigma_zero = exp(p(2)/-p(1))
sigma_max = sigma_zero*(log(1/0.999))^(1/-p(1))
28
mdl=LinearModel.fit(ln_sigma, ln_ln_Sn); %for
statistical and graphical purposes
disp(' Rank Sn sigma ln sigma ln ln Sn') %
display text above the table
disp([n' Sn' sigma' ln_sigma' ln_ln_Sn']) % display the
table
plot(mdl)
MatLAB m-file, interactive way
29
%Weibull3.m
clear all; clc
dt = input ('Input the data: '); % data [x1, x2]
sigma = sort (dt, 'ascend');
n=1:numel(sigma);
Sn = 1 - (n-0.3)/(numel(sigma)+0.4);
30
ln_ln_Sn = - log (log (1./Sn));
ln_sigma = log (sigma);
p = polyfit (ln_sigma, ln_ln_Sn,1) % linear plot
sigma_zero = exp(p(2)/-p(1))
sigma_max = sigma_zero*(log(1/0.999))^(1/-p(1))
31
disp('Rank Sn sigma ln sigma ln ln 1/Sn')
disp([n' Sn' sigma' ln_sigma' ln_ln_Sn'])
mdl=LinearModel.fit(ln_sigma, ln_ln_Sn);
plot(mdl), xlabel('ln sigma'), ylabel('-ln ln 1/Sn')
Quiz
32
In an experiment, imagine that you need to determine
the activation energy of Cu atom diffuses in Al or vice
versa. To carry out the experiment, firstly you will join
two bars of Al and Cu at certain temperature and
time. After the joining process, you will examine the
joint to see the diffusion distance of the desired atom.
33
Knowing the diffusion distance and time of the joining
process you will be able to find the diffusion
coefficient at a certain temperature in which =
. Next, to predict the activation energy (Q), you
need to do the experiment as a function of
temperature, after then you will be able to predict the
activation energy and temperature-independent pre-
exponential (D
0
) based on the Arrhenius equation,
=
0
exp

.
34
Sketch your step in doing the experiment by working
on the flowchart, algorithm, and pseudocode. After
that, write a small modeling program in MatLAB m-file
to determine the activation energy and temperature-
independent pre-exponential factor from those set of
experiments.
References
35
W.Y. Yang, W. Cao, T.S. Chung, J. Morris: Applied
numerical methods using MATLAB, John Wiley & Sons,
Inc., Hoboken, New Jersey, 2005.
M.W. Barsoum: Fundamental of Ceramics, Institute of
Physics Publishing, Philadelphia, 2003.
D. A Porter, and K.E Easterling, Phase Transformation
in Metals and Alloys, 2nd ed. Chapman and Hall,
London, 1992.

Você também pode gostar