-
Notifications
You must be signed in to change notification settings - Fork 1
/
skin_friction.m
63 lines (51 loc) · 1.51 KB
/
skin_friction.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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
%% Parameter X calculus
function X=skin_friction(Jl_LM,Jg_LM,rhol,rhog,mul,mug,D)
%% skin friction coefficients, fpl et fpg calculation
Rel=Jl_LM*D*rhol/mul;
Reg=Jg_LM*D*rhog/mug;
if (Rel<=2000) && (Reg<=2000)
n_l=1;
K_l=16;
n_g=1;
K_g=16;
elseif (Rel>3000) && (Reg<=2000)
n_l=0.25;
K_l=0.079;
n_g=1;
K_g=16;
elseif (Rel<=2000) && (Reg>3000)
n_l=1;
K_l=16;
n_g=0.25;
K_g=0.079;
elseif (Rel>3000) && (Reg>3000)
n_l=0.25;
K_l=0.079;
n_g=0.25;
K_g=0.079;
elseif (Rel<=2000) && ((Reg>2000) && (Reg<=3000))
n_l=1;
K_l=16;
elseif (Rel>3000) && ((Reg>2000) && (Reg<=3000))
n_l=0.25;
K_l=0.079;
elseif (Reg<=2000) && ((Rel>2000) && (Rel<=3000))
n_g=1;
K_g=16;
elseif (Reg>3000) && ((Rel>2000) && (Rel<=3000))
n_g=0.25;
K_g=0.079;
end
if Reg>2000 && Reg<=3000
log10f = ( log10( (0.079*3000^(-0.25))/(16*2000^(-1)) ) / log10(3000/2000) ) * log10(Reg/2000) + log10(16/2000);
fpg = 10^log10f;
else
fpg=K_g.*(Reg).^(-n_g);
end
if Rel>2000 && Rel<=3000
log10f = ( log10( (0.079*3000^(-0.25))/(16*2000^(-1)) ) / log10(3000/2000) ) * log10(Rel/2000) + log10(16/2000);
fpl = 10^log10f;
else
fpl=K_l.*(Rel).^(-n_l);
end
X=Jl_LM./Jg_LM.*sqrt(rhol*fpl/(rhog*fpg));