//Font settings
mathcolor="Black";
mathfontsize="1.1em";
mathfontfamily = "Arial";  
var mathfontweight = "bold";  

//General
define("!<=","\u2270");
define("!>=","\u2271");
define("undefined","O/");
define("dgr","\u00BA");
define("tns","(t ons)");

//Mathematics
define("DDX","d/(dx)");
define("DDY","d/(dy)");
define("DDZ","d/(dz)");
define("DDX2","d^2/(dx^2)");
define("DDY2","d^2/(dy^2)");
define("DDZ2","d^2/(dz^2)");
define("ddx","del/(delx)");
define("ddy","del/(dely)");
define("ddz","del/(delz)");
define("ddx2","del^2/(delx^2)");
define("ddy2","del^2/(dely^2)");
define("ddz2","del^2/(delz^2)");


//Dredging general
define("concentration","(rho_m-rho_w)/(rho_q-rho_w)");
define("Cv","(rho_m-rho_w)/(rho_q-rho_w)");


//Dredging cutting
define("Fhnc","(c_1*rho_w*g*h_i^2*v_c*w*v_d)/k_m");
define("Fvnc","(c_2*rho_w*g*h_i^2*v_c*w*v_d)/k_m");
define("Fhc","d_1*rho_w*g*(z+10)*h_i*w");
define("Fvc","d_2*rho_w*g*(z+10)*h_i*w");

//TSHD sedimentation
define("TSE1","eta_t=eta_g^0*(1-.184*eta_g^(+.885-.20*eta_g)*(1-tanh(eta_g^(-.13-.80*eta_g)*(log(v_s/s_o)-.2614-.5*log(lambda)+eta_g^(-.33-.94*eta_g)))))");
define("TSE2","eta_t=eta_g^(-1)*(1-.184*eta_g^(-.69-.38*eta_g)*(1-tanh(eta_g^(+.77-.08*eta_g)*(log(v_s/s_o)-.2614-.5*log(lambda)+eta_g^(+1.01-.18*eta_g)))))");
define("HLP","v_o=(Q/(L*W))");
define("FlowV","s_o=((Q)/(W*H)");
define("tsv","v_s=sqrt((4*g*(rho_q-rho_w)*d*psi)/(3*rho_w*C_d))");
define("cdp","C_d=24/Re_p*(1+0.173*Re_p^0.657)+0.413/(1+16300*Re_p^-1.09)");
define("Stokes","v_s=424*R_d*d^2");
define("Budryck","v_s=8.925*((sqrt(1+95*R_d*d^3)-1)/(d))");
define("Rittinger","v_s=87*sqrt(R_d*d)");
define("GrainE","eta_g=(v_s/v_o)");
define("SwameeJain","lambda=0.25/(log(d/(3.7*D_h)+5.75/Re^0.9))^2");
define("Reynolds","Re=(v*D_h)/nu");
define("Dhr","D_h=(4*A)/O=(4*H*W)/(2*H+W)~~4*H"); 
define("Rhr","R_h=(A)/O=(H*W)/(2*H+W)~~H"); 
define("Dhp","D_h=(4*A)/O=(4*(pi/4*D^2))/(pi*D)=D"); 
define("Rhp","R_h=(2*A)/O=(2*(pi/4*D^2))/(pi*D)=R"); 

//Density of water
var rho_w = 1.025;
//Density of quarts
var rho_q = 2.650;
//Relative density
var Rd = (rho_q-rho_w)/rho_w; 
//Viscosity of water
var nu_w = 1.26*pow(10,-6);
//Gravity constant
var gravity = 9.81;


//Turbulence Settling Efficiency
function TSE(vsvo,vsso,labda) {
  var etat;
  if (vsvo<=1) {
    etat = (1-0.184*pow(vsvo,0.885-0.20*vsvo)*(1-tanh(pow(vsvo,-0.13-0.88*vsvo)*(log(vsso)-0.2614-0.5*log(labda)+pow(vsvo,-0.33-0.94*vsvo)))))*vsvo;
  } else {
    etat = (1-0.184*pow(vsvo,-0.690-0.38*vsvo)*(1-tanh(pow(vsvo,+0.77-0.08*vsvo)*(log(vsso)-0.2614-0.5*log(labda)+pow(vsvo,+1.01-0.18*vsvo)))));
  }
  return etat;
}
//Settling velocity according to Stokes
function Stokes(d) {
  return 424*Rd*pow(d,2);
}
//Settling velocity according to Budryck
function Budryck(d) {
  return 8.925*(sqrt(1+95*Rd*pow(d,3))-1)/d;
}
//Settling velocity according to Rittinger
function Rittinger(d) {
  return 87*sqrt(Rd*d);
}
//Swamee Jain equation for the Moody diagram, alert(SwameeJain(0.000001,1,10,0.000001));
function SwameeJain(d_r,D_h,Re) {
  return 0.25/sq(log(d_r/(3.7*D_h)+5.75/pow(Re,0.9)));
}
//Reynolds as a function of the grain diameter d in mm
function Rep(d) {
  return Budryck(d)*d/nu_w/pow(10,6);
}
//Cd value according to Turton & Levenspiel
function Cdp(Rep) {
  return 24/Rep*(1+0.173*pow(Rep,0.657))+0.413/(1+16300*pow(Rep,-1.09));
}
//Settling velocity theoretical, d in mm
function TSV(d) {
  return sqrt((4*gravity*(rho_q-rho_w)*d*0.7)/(3000*rho_w*Cdp(Rep(d))))*1000;
}
