| 1 | |
|---|
| 2 | |
|---|
| 3 | import java.lang.Math; |
|---|
| 4 | |
|---|
| 5 | public class DiamCalculator { |
|---|
| 6 | double mu_fluid, rho_fluid, g, res[], ffs[]; |
|---|
| 7 | |
|---|
| 8 | public DiamCalculator(double init_mu, double init_rho, double gee) { |
|---|
| 9 | this.mu_fluid=init_mu; this.rho_fluid=init_rho; g=gee; |
|---|
| 10 | res=new double[18]; ffs=new double[18]; |
|---|
| 11 | res[0]=.2; ffs[0]=120; res[6]=20; ffs[6]=2.5; res[12]=2000; ffs[12]=.42; |
|---|
| 12 | res[1]=.5; ffs[1]=50; res[7]=50; ffs[7]=1.5; res[13]=5000; ffs[13]=.4; |
|---|
| 13 | res[2]=1; ffs[2]=26; res[8]=100; ffs[8]=1.05;res[14]=10000; ffs[14]=.42; |
|---|
| 14 | res[3]=2; ffs[3]=14; res[9]=200; ffs[9]=.8; res[15]=20000; ffs[15]=.46; |
|---|
| 15 | res[4]=5; ffs[4]=7.1; res[10]=500; ffs[10]=.56;res[16]=50000; ffs[16]=.49; |
|---|
| 16 | res[5]=10; ffs[5]=4.3; res[11]=1000;ffs[11]=.45;res[17]=100000;ffs[17]=.5; } |
|---|
| 17 | |
|---|
| 18 | public void newfluid(double new_mu, double new_rho, double new_g) { |
|---|
| 19 | this.mu_fluid=new_mu; this.rho_fluid=new_rho; g=new_g; } |
|---|
| 20 | |
|---|
| 21 | public double f(double Re) { |
|---|
| 22 | int i=0; if(Re<res[0]) return 24/Re; |
|---|
| 23 | while(i<18&&Re>res[i]) i++; |
|---|
| 24 | if(i==18) return(-1); |
|---|
| 25 | return Math.exp(Math.log(ffs[i])+(Math.log(ffs[i])-Math.log(ffs[i-1]))/ |
|---|
| 26 | (Math.log(res[i])-Math.log(res[i-1]))*(Math.log(Re)-Math.log(res[i]))); } |
|---|
| 27 | |
|---|
| 28 | public double rerat(double f_Re) { |
|---|
| 29 | int i=0; |
|---|
| 30 | if(f_Re>ffs[0]/res[0]) return(Math.sqrt(24./f_Re)); |
|---|
| 31 | while(i<18&&f_Re<ffs[i]/res[i]) i++; |
|---|
| 32 | if(i==18) return 0; |
|---|
| 33 | double m=(Math.log(res[i])-Math.log(res[i-1]))/(Math.log(ffs[i])-Math.log(ffs[i-1])); |
|---|
| 34 | return Math.exp((Math.log(res[i])+m*(Math.log(f_Re)-Math.log(ffs[i])))/(1-m)); } |
|---|
| 35 | |
|---|
| 36 | public double free(double rho_p, double u) { |
|---|
| 37 | return 4/3*Math.abs(rho_p-rho_fluid)*mu_fluid*g/(rho_fluid*rho_fluid*u*u*u); }} |
|---|