You are on page 1of 20

# Loyola Marymount University

## Department of Mechanical Engineering

MECH 570 – Tribology of Mechanical Systems
May 4th, 2011

## HERTZIAN LINE CONTACT ANALYSIS WITH MATLAB

Eric Fleming
LOS ANGELES, CALIFORNIA, USA

ABSTRACT (eq1)
This report inspects the details of the development of two
MATLAB programs (normalized and non-normalized results)
which models the Hertzian Contact of cylinders. Material
properties may be user defined and the material is assumed to
be of elastic-perfectly plastic nature for analysis. Results of the (eq2)
subsurface stresses are plotted and verified with reference [6],
special cases are discussed.

MATHEMATICAL NOTATIONS
E* Composite Modulous The subscripted properties above are those of the two
Re Composite Radius different materials. It is important to note that, for concave
υ Poisson’s Ratio surfaces, the relative radius is of negative value. [2]
δ Elastic Displacement 1.1 POINT CONTACT FORMULAE
P0,Ph Hertzian Pressure (P is also used for distributions) Since line and point (cylindrical and spherical) contact
P,W Forcing Load behave differently, there are separate representations for the
σ Stress Component same parameters. The contact radius and others for point
τ Shear Component contact are as follows:
(Unless noted, all units throughout this report are in SI format) (eq3)
1.0 INTRODUCTION
Contact between surface asperities can me modeled in the
simplest form with point or line contact among asperities. Point
contact involves two spherical/elliptical surfaces with relative
radii of curvature. Line contact involves two cylindrical Hertzian Pressure:
surfaces with relative radii of curvature as point contact (eq4)
involves two spherical surfaces. [2] The model involves a
Silicon Carbide cylinder on an AISI 52100 Steel plate.
Properties are as follows:
SiC Clyinder:
E=550 GPa Displacement:
υ=0.3 (eq5)
R=0.001m
AISI 52100 Steel:
E=200 GPa
υ=0.3
R=Infinite (Flat Plate)
For calculation of subsurface stress fields, several critical 1.2 LINE CONTACT FORMULAE
parameters must be calculated first and foremost. This is Eqn’s 3-5 are modeled in line contact mode in the
required for equivalent moduli and radii of the two materials, following formulas. The forcing load is in units of force per
the contact half-width, and (peak) Hertzian pressure. unit length, unlike point loading where the load is solely in
units of force. [6]

1
The y-component may also be calculated if desired:
(eq6) (eq15)

## It is also beneficial to creat a pressure distribution

function which is based of the peak pressure, or Hertzian
Hertzian Pressure: pressure.
(eq16)
(eq7)

## 2.0 ANALYSIS AND PROCEDURE

MATLAB code was utilized to study the effects of the
Displacement:
stress distribution across the contact area. The basis of the
(eq8)
code was studied from reference [5]; the logical “for” loops
were altered for the formulation of the stress and shear contour
plots while encoding the formulas from references [4] and [6].
Code was developed for cylindrical cases, verified, and then
1.3 LINE CONTACT SUBSURFACE STRESSES studied.
FORMULAE
McEwen (1949) represents stress in terms of arbitrary 2.1 STRESS FUNCTIONS ALONG AXIS-OF-
constants m and n: [6] SYMMETRY
(eq9) Functions along the z-axis (x=0) were observed by
extracting the data from the center (line of symmetry) column
of the stress matrices. This column in the data happens to be
(eq10) column 68.

## 3.0 VERIFICATION OF PROGRAM INTEGRITY

In order to confirm the integrity of the formulated code
Where equations 9 and 10 are the signs of the z-axis and x- found in Appendix B, results for normalized stress were
axis respectively. [2] The constants are then substituted into the compared with those in the appendix of reference [4]. The
following formulas: weights for normalized stress in the x direction (σx) from the
(eq11) aforementioned reference are as follows:
0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 1 0.980 0.917 0.800 0.600 0 0 0

## 0.2 0.659 0.642 0.591 0.507 0.402 0.329 0.124 0.060

0.4 0.426 0.416 0.391 0.357 0.330 0.316 0.197 0.109
(eq12) 0.6 0.275 0.272 0.267 0.265 0.270 0.276 0.221 0.142
0.8 0.180 0.182 0.188 0.200 0.217 0.232 0.218 0.160
1.0 0.121 0.125 0.135 0.153 0.173 0.192 0.201 0.165
1.5 0.051 0.054 0.065 0.081 0.099 0.118 0.148 0.148
2.0 0.025 0.027 0.034 0.045 0.059 0.073 0.103 0.117
(eq13) (Tbl 1, σx from reference [4])

## Where the above values are compared to the generated

values of σx from the formulated program:
0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 0.99 0.976 0.917 0.793 0.576 0 0 0
These formulas are used to find stress components σx, σz, 0.2 0.661 0.646 0.608 0.522 0.409 0.328 0.126 0.059
and shear in the ‘xz’ plane,. For computation of the principal 0.4 0.435 0.413 0.391 0.372 0.329 0.315 0.203 0.111
shear stress, the following formula is used. [4] This is also 0.6 0.284 0.273 0.268 0.270 0.269 0.276 0.225 0.144
known as Tresca Stress. 0.182 0.184 0.188 0.199 0.199 0.234 0.220 0.161
0.8
1.0 0.124 0.123 0.132 0.149 0.150 0.192 0.201 0.166
(eq14)
1.5 0.052 0.054 0.063 0.079 0.110 0.118 0.147 0.148
2.0 0.025 0.027 0.033 0.044 0.073 0.073 0.103 0.117
(Tbl 2, σx from MATLAB program)

2
From observation, the obtained results are very similar to
the published results. There are slight discrepancies due to how
relative positions were discretized in the program. Further
verifications for σz and τxz may be found in Appendix C.

## Further verification is proved through the maximum value

and location of normalized principal shear along the z-axis. It
was found to be 0.302@z=0.78a. [3]

## 4.0 RESULTS AND DISCUSSION

After the program was verified, the case for normalized
results was run several times to observe the change in contours
as initial values were significantly altered. The contours of
principal shear stress (eq14) was plotted. (Fig2, Principal Shear, 1 kN case)

## Now the load is changed to be 50 Newtons, obseve the

changes in the principal shear stress plot:

## (Fig1, Normalized Principal Shear)

modified for both materials and the normalized contour plots
were unaffected, except σy which has no influence on other
plots, and is directly influenced by Poisson’s Ratio. Some (Fig3, Principal Shear, 50N case)
parameters such as Hertzian Pressure, composite modulus, and
contact radius were however affected. This will in part affect As it can be observed, the contours have indeed shifted in
results for simulations which are not normalized. It is magnitude (much smaller contours) and location. The loading
imperative to recognize the fact that modification of user- force is now reverted back to the original value of 1000N, and
defined variables does not have an effect on normalized results. the Poisson’s Ratio for both materials is changed to 0.9.

## Several plots for the normalized case can be found in

Appendix A, which include σ x, σy, σz, τxz, pressure distribution,
and stress values across the axis of symmetry.

## 4.1 THE NON-NORMALIZED CASE

In order to grasp a better idea of what is happening in the
subsurface, it is important to study results which are not
normalized to the Hertzian pressure. By keeping results un-
normalized, the contours shift and change value accordingly to
input. Below is figure 1 without normalization, forcing load is
set to 1000 Newtons.

## From here it can be noted that Poisson’s Ratio has a

significant effect on the principal contours. The maximum
location is now effectively one order of magnitude greater and
its location is significantly deeper into the subsurface.
Material properties are again reverted back to their original

3
state, and the radius is changes from a millimeter to a substrate. This model also assumes a frictionless environment,
micrometer. which is far from realistic.

## 6.0 FUTURE RECCOMENDATIONS

If a forthcoming student decides to build from these
results he/she must understand that modeling of friction and
substrates/layers requires a much different approach. One
which involves calculation of numerous constants, Fourier
transforms, and complicated program scripting possibly with
ANSYS. For a much simpler challenge, it is recommended
that a program be formulated for spherical point contact. It is
more commonly modeled using polar/spherical coordinates;
however, Cartesian coordinates may be used.

## A custom forcing function was attempted to be

(Fig4, Principal Shear, R=1µm case) implemented, but was unsuccessful. It disobeyed the
mathematical representations in the Introduction since
Now the principal shear contour has much more density in contours would halt at the contact radius and not extrude
magnitude, the maximum value is much greater than the beyond. A non-Hertzian pressure follows different formulae.
standard case, and it is condensed into a much smaller area. A Therefore, it is also recommended that a non-Hertzian contact
complete overview of the graphical results can be observed in solution be encoded.
Appendix A.
Numerous articles were obtained for this report and its
5.0 SUMMARY AND CONCLUSIONS code development, and all of them did not give their
A finite element MATLAB program for the simulation of underlying equations for analysis. Future work should look
subsurface stresses is successfully developed for the Hertzian into numerous cross-references of these reports which were
solution in a line contact mode. It is a program that is verified unobtainable at Loyola Marymount University. The reports are
with published results for a normalized case. referenced in a section named UNOBTAINABLE
REFERENCES.
Generating normalized stress contours for this case of
Hertzian line contact will yield constant results, no matter what REFERENCES
values of material properties you may define. This normalized [1] B. Bushan, Introduction to Tribology, 2002
case can be considered universal, no matter how the code is [2] M. Siniawski, Tribology of Mechanical Systems, Lecture
formulated (as long as it follows physical law), and what Notes of Contact Mechanics, MECH 570 – Spring 2011
material properties are chosen, all normalized contours will be [3] Vizintin, J., Kalin, M., Dohda, K. and Jahanmir. , 2004,
exactly the same. This applies to every normalized contour Tribology of Mechanical Systems, ASME
except for σy which is affected by Poisson’s Ratio, yet has no [4] “Contact Mechanics”, Wikipedia, Modified 6 January
influence on principal shear stress. 2011, Accessed 8 February 2011
[5] M. Read, “Matlab Tool for Analyzing Stresses, Principle
In order to observe actual changes in the contours, the Stresses, and Surface Displacement on any Loading of an
results shall remain in form without normalization. This enables Elastic Half Space and for analyzing Hertz 2D contact
the user of the program to see the changes in the subsurface stresses” 5/12/2004. Massachusetts Institute of Technology
stress fields as material parameters are altered. [6] K.L. Johnson, CONTACT MECHANICS, 1985,
Cambridge University Press
It can be inferred with much certainty that these stress [7] A. Elsharkawy. (1999) “Effect of friction on subsurface
fields are greatly affected by material properties, contact radius, stresses in sliding line contact of unilayered elastic solids”
and forcing load. Being the fact that the fields would conform International Journal of Solids and Structures, Volume 36,
to the ranges of inputs specified, as the fields would shift in Issue 26
location and magnitude.
UNOBTAINABLE REFERENCES
It is also important to note that this analysis is for the most (FUTURE STUDENTS)
ideal of contact cases. Foremost, the solutions of the simulation – H. Djabella & R.D. Arnell. (1993) “Finite element
rely on the un-realistic fact that the materials are assumed to be analysis of the contact stresses in elastic
elastic-perfectly plastic. Meaning that if the material is forced coating/substrate under normal and tangential load” Thin
into the plastic zone of stress, there will be no work hardening Solid Films, Volume 223, Issue 1
and the material will not benefit from an increase in strength. – K. Komvopoulos. (1988) “Finite Element Analysis of a
The material is infinitely elastic. [1] This model does not Layered Elastic Solid in Normal Contact with a Rigid
incorporate layers which is very beneficial to see how stresses Surface” Journal of Tribology. Volume 110. Issue 3
are distributed in a hardened layer and transferred onto a softer

4
– H. Djabella & R.D. Arnell. (1994) “Finite element – K. Mao, T. Bell, & Y. Sun. (1997) “Effect of Sliding
analysis of elastic stresses in multilayered systems” Thin Friction on Contact Stresses for Multi-Layered Elastic
Solid Films, Volume 245, Issues 1-2 Bodies with Rough Surfaces” Journal of Tribology,
– H. Djabella & R.D. Arnell. (1992) “Finite element Volume 119, Issue 3
analysis of the contact stresses in elastic coating on an – E.R. Kral & K. Komvopoulos. (1997) “Three-
elastic substrate” Thin Solid Films, Volume 213, Issue 2 Dimensional Finite Element Analysis of Subsurface Stress
– D.M. Bailey & R.S. Sayles. (1997) “Effect of Sliding and Strain Fields Due to Sliding Contact on an Elastic-
Friction on Contact Stresses for Multi-Layered Elastic Plastic Layered Medium” Journal of Tribology. Volume
Bodies with Rough Surfaces” Journal of Tribology, Volume 119, Issue 2
113, Issue 4 –

## Normalized Contours of Line Contact

5
1kN, υ=0.3, R=1mm Case

6
1kN, υ=0.3, R=1mm Case

7
50N, υ=0.3, R=1mm Case

8
50N, υ=0.3, R=1mm Case

9
1kN, υ=0.9, R=1mm Case

10
1kN, υ=0.9, R=1mm Case

11
1kN, υ=0.3, R=1µm Case

12
1kN, υ=0.3, R=1µm Case

13
14
Appendix B – MATLAB Code

clear
%USER-DEFINED MATERIAL PROPERTIES (SI UNITS)
R1=inf; %Asperity Radius (inf for flat surface)
R2=0.1;
E1=200*10^9; %Elastic Modulous
E2=550*10^9;
v1=0.3; %Poisson's Ratio
v2=0.3;

## %Output Mode (Raw or Normalized Results)

%Input choice=1 for normalized results
%Choice=2 for dimensionalized results
choice=1;

## %This section computes parameters necessary for subsurface calulations

E=1/((1-v1^2)/E1+(1-v2^2)/E2); %Composite Modulous
a=(0.75*p*R/E)^(1/3); %Contact Half-Width
x=[-2*a:.01*3*a:2*a]; %Discrete values for the x-axis
z=[0:.005*3*a:2*a]; %Discrete values for the z-axis
Ph=(p.*E./(pi.*R)).^(1/2); %Hertzian Pressure for Line Contact

## %This loop discretizes pressure distribution.

for i=1:length(x)
P(i)=Ph*[1-(x(i)/a)^2]^.5;
end

## %For contour plots, a square matrix is required for position arguments.

%Therefore, this loops creates a constant value for x-axis positions
%vertically (column constant) and constant values for the z-axis
%horizontally (row constant).
for i=1:length(z);
for j=1:length(x);
xx(i, j)=x(j);
zz(i, j)=z(i);
end
end

## %Below is the loop which computes the subsurface stress matrices.

for i=1:length(x);
for j=1:length(z);
m(j, i)=(0.5*(((a^2-xx(j, i)^2+zz(j, i)^2).^2+4.*xx(j, i)^2.*zz(j,
i)^2).^0.5+(a.^2.-xx(j, i)^2+zz(j, i)^2))).^0.5;
n(j, i)=(0.5*(((a^2-xx(j, i)^2+zz(j, i)^2).^2+4.*xx(j, i)^2.*zz(j,
i)^2).^0.5-(a.^2.-xx(j, i)^2+zz(j, i)^2))).^0.5;
if x(i) < 0
n(j, i)=-n(j, i);
end
sx(j, i)=(-Ph/a)*(m(j, i)*((1+((zz(j, i)^2+n(j, i)^2)/(m(j,
i)^2+n(j, i)^2))))-2.*zz(j, i));
sz(j, i)=(-Ph/a)*m(j, i)*((1-((zz(j, i)^2+n(j, i)^2)/(m(j, i)^2+n(j,
i)^2))));
sy(j, i)=v1*(sx(j, i)+sz(j, i));
txz(j, i)=(-Ph/a).*n(j, i)*((m(j, i)^2-zz(j, i)^2)./(m(j, i)^2+n(j,
i)^2));

15
Appendix B – MATLAB Code

## tmax(j, i)=0.5*abs(sx(j, i)-sz(j, i));

end
end

%OUTPUT
if choice==1
figure('name','Normalized');
subplot(231)
contour(xx/a, -zz/a, sx/Ph)
C = contour(xx/a, -zz/a, sx/Ph);
clabel(C)
xlabel('x/a')
ylabel('z/a')
title('Stress x-axis')

subplot(232)
contour(xx/a, -zz/a, sy/Ph)
C = contour(xx/a, -zz/a, sy/Ph);
clabel(C)
xlabel('x/a')
ylabel('z/a')
title('Stress y-axis')

subplot(233)
contour(xx/a, -zz/a, sz/Ph)
C = contour(xx/a, -zz/a, sz/Ph);
clabel(C)
xlabel('x/a')
ylabel('z/a')
title('Stress z-axis')

subplot(234)
contour(xx/a, -zz/a, txz/Ph)
C = contour(xx/a, -zz/a, txz/Ph);
clabel(C)
xlabel('x/a')
ylabel('z/a')
title('Shear Stress xz-plane')

subplot(235)
contour(xx/a, -zz/a, tmax/Ph)
C = contour(xx/a, -zz/a, tmax/Ph);
clabel(C)
xlabel('x/a')
ylabel('z/a')
title('Principal Shear Stress')

subplot(236)
plot(x/a,P./Ph)
title('Normalized Pressure Distribution')
xlabel('x/a')

## figure('name','Axis of Symmetry - Normalized');

plot(z/a,abs(sx(:,67)/Ph),'b',z/a,abs(sz(:,67)/Ph),'r',z/a,abs(tmax(:,67)/Ph),
'g');
hleg1 = legend('sx','sz','principal shear');

16
Appendix B – MATLAB Code

## title('Normalized Stress Components along Axis-of-Symmetry')

end

if choice==2
figure('name','Non-Normalized');
subplot(231)
contour(xx, -zz, sx)
C = contour(xx, -zz, sx);
clabel(C)
xlabel('x')
ylabel('z')
title('Stress x-axis')

subplot(232)
contour(xx, -zz, sy)
C = contour(xx, -zz, sy);
clabel(C)
xlabel('x')
ylabel('z')
title('Stress y-axis')

subplot(233)
contour(xx, -zz, sz)
C = contour(xx, -zz, sz);
clabel(C)
xlabel('x')
ylabel('z')
title('Stress z-axis')

subplot(234)
contour(xx, -zz, txz)
C = contour(xx, -zz, txz);
clabel(C)
xlabel('x')
ylabel('z')
title('Shear Stress xz-plane')

subplot(235)
contour(xx, -zz, tmax)
C = contour(xx, -zz, tmax);
clabel(C)
xlabel('x')
ylabel('z')
title('Principal Shear Stress')

subplot(236)
plot(x,P)
title('Pressure Distribution')
xlabel('x')

## figure('name','Axis of Symmetry - Non-Normalized');

plot(z,abs(sx(:,67)),'b',z,abs(sz(:,67)),'r',z,abs(tmax(:,67)),'g');
hleg1 = legend('sx','sz','principal shear');
title('Stress Components along Axis-of-Symmetry')
xlabel('z')
ylabel('Pressure')

17
Appendix B – MATLAB Code

end

## %For Verification Purposes

sxnorm=sx./Ph;
sznorm=sz./Ph;
txznorm=txz./Ph;
v=[0,0.1, 0.2, 0.3, 0.4, 0.5, 0.75, 1];
sxv=sxnorm(round(v.*133+1),round(v.*67+67));
szv=sznorm(round(v.*133+1),round(v.*67+67));
txzv=txynorm(round(v.*133+1),round(v.*67+67));

18
Appendix CB – MATLAB Code Verification

σx Published
Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 1 0.980 0.917 0.800 0.600 0 0 0
0.2 0.659 0.642 0.591 0.507 0.402 0.329 0.124 0.060
0.4 0.426 0.416 0.391 0.357 0.330 0.316 0.197 0.109
0.6 0.275 0.272 0.267 0.265 0.270 0.276 0.221 0.142
0.8 0.180 0.182 0.188 0.200 0.217 0.232 0.218 0.160
1.0 0.121 0.125 0.135 0.153 0.173 0.192 0.201 0.165
1.5 0.051 0.054 0.065 0.081 0.099 0.118 0.148 0.148
2.0 0.025 0.027 0.034 0.045 0.059 0.073 0.103 0.117

## σx Code Result (Not exact because of discretization resolution)

Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 0.999 0.981 0.929 0.814 0.613 0 0 0
0.2 0.665 0.650 0.607 0.522 0.409 0.328 0.126 0.059
0.4 0.420 0.412 0.391 0.357 0.329 0.311 0.203 0.111
0.6 0.274 0.272 0.267 0.264 0.269 0.276 0.224 0.143
0.8 0.182 0.183 0.188 0.199 0.217 0.233 0.219 0.160
1.0 0.120 0.123 0.132 0.149 0.171 0.191 0.201 0.165
1.5 0.050 0.054 0.062 0.072 0.098 0.117 0.147 0.148
2.0 0.025 0.027 0.033 0.044 0.058 0.073 0.103 0.117

σz Published
Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 1 0.980 0.917 0.800 0.600 0 0 0
0.2 0.981 0.959 0.892 0.767 0.549 0.212 0.006 0.001
0.4 0.928 0.906 0.834 0.705 0.509 0.281 0.034 0.007
0.6 0.857 0.834 0.765 0.648 0.490 0.320 0.074 0.020
0.8 0.781 0.760 0.699 0.600 0.474 0.342 0.0114 0.038
1.0 0.707 0.690 0.638 0.557 0.457 0.352 0.148 0.059
1.5 0.555 0.544 0.514 0.468 0.410 0.346 0.202 0.107
2.0 0.447 0.441 0.424 0.396 0.361 0.322 0.221 0.140

## σz Code Result (Not exact because of discretization resolution)

Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 0.999 0.981 0.929 0.814 0.613 0 0 0
0.2 0.981 0.962 0.906 0.783 0.564 0.209 0.006 0.001
0.4 0.926 0.906 0.846 0.719 0.519 0.282 0.037 0.007
0.6 0.857 0.836 0.778 0.662 0.498 0.319 0.078 0.020
0.8 0.782 0.764 0.712 0.612 0.481 0.341 0.118 0.038
1.0 0.705 0.689 0.646 0.565 0.462 0.351 0.154 0.060
1.5 0.554 0.545 0.519 0.472 0.412 0.346 0.206 0.108
2.0 0.448 0.442 0.427 0.399 0.363 0.322 0.224 0.141

τxz Published

19
Appendix CB – MATLAB Code Verification

## Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0

0 0 0 0 0 0 0 0 0
0.2 0 0.308 0.080 0.131 0.192 0.192 0.025 0.007
0.4 0 0.0604 0.130 0.195 0.242 0.230 0.076 0.027
0.6 0 0.075 0.147 0.209 0.245 0.238 0.119 0.051
0.8 0 0.075 0.145 0.200 0.231 0.231 0.147 0.075
1.0 0 0.070 0.133 0.182 0.211 0.217 0.161 0.095
1.5 0 0.050 0.096 0.134 0.160 0.173 0.162 0.121
2.0 0 0.035 0.068 0.096 0.118 0.133 0.142 0.124

## τxz Code Result (Not exact because of discretization resolution)

Normalized 0 0.2 0.4 0.6 0.8 1.0 1.5 2.0
0 0 0 0 0 0 0 0 0
0.2 0.004 0.035 0.072 0.123 0.186 0.189 0.025 0.009
0.4 0.006 0.061 0.120 0.189 0.241 0.230 0.081 0.028
0.6 0.007 0.071 0.137 0.203 0.244 0.238 0.123 0.052
0.8 0.007 0.072 0.135 0.195 0.230 0.231 0.150 0.07
1.0 0.007 0.066 0.123 0.177 0.209 0.216 0.164 0.096
1.5 0.005 0.048 0.089 0.130 0.158 0.173 0.163 0.122
2.0 0.003 0.034 0.064 0.094 0.117 0.133 0.142 0.124

20