-
Notifications
You must be signed in to change notification settings - Fork 3
/
theory_cradius.m
43 lines (42 loc) · 1.24 KB
/
theory_cradius.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
% Contact radius at the moment of separation
function a = theory_cradius(model,parameters)
Dp = parameters.Dp;
Wa = parameters.Wa;
K = parameters.K;
switch model
case 'JKR-a0'
a = (3*pi*Wa*Dp^2/(2*K))^(1/3);
case 'JKR'
a = (3*pi*Wa*Dp^2/(8*K))^(1/3);
case 'JKR-Mmax'
a = .9205 * (3*pi*Wa*Dp^2/(4*K))^(1/3);
case 'DMT'
a = 0;
case 'DMT-Mmax'
a = .5868 * (3*pi*Wa*Dp^2/(4*K))^(1/3);
case 'TPL'
A = parameters.A;
z0 = parameters.z0;
V = (25*A^2*Dp/(288*z0^7*K^2))^(1/3);
if (V <= 1.6)
K20 = .885*(exp(.8*V^.5) - 1);
else
K20 = .735*V^.178 + .52*V;
end %if
a = Dp*sqrt(K20*z0/(2*Dp));
case 'JKR-Rough'
N = parameters.N;
fpo = parameters.fpo;
Deltac = parameters.Deltac;
a = pi*N*fpo*Dp*exp(-.6/Deltac^2)/(2*K);
case 'JKR-Rough-Iman'
Deltac = parameters.Deltac;
a = 3/4*pi^2 * (.0029*Wa*Dp^2/K)^(1/3) * exp(-.6/Deltac^2);
case 'JKR-Rough-bump'
N = parameters.N;
fpo = parameters.fpo;
bumpr = parameters.bumpr;
beta = parameters.betap * Dp;
Deltac = parameters.Deltac;
a = pi*N*fpo*bumpr*exp(-.6/Deltac^2)/K;
end %switch