41 JSWARN <<
"Bad Signal Velocity in CausalLiquefier";
52 JSINFO<<
"Initialize CausalLiquefier (for Unit Test) ...";
66 <<
"<CausalLiquefier> Fluid Time Step and Cell Size: dtau="
72 <<
"<CausalLiquefier> Parameters: tau_delay="
75 <<
d_diff <<
" fm, width_delta="
82 JSINFO<<
"Initialize CausalLiquefier ...";
115 std::array<Jetscape::real, 4> &jmu)
const {
119 const auto p_drop = drop_i.
get_pmu();
120 auto x_drop = drop_i.
get_xmu();
121 double tau_drop = x_drop[0];
122 double eta_drop = x_drop[3];
123 x_drop[0] =
get_t(tau_drop, eta_drop);
124 x_drop[3] =
get_z(tau_drop, eta_drop);
129 double t =
get_t(tau, eta);
130 double z =
get_z(tau, eta);
132 double delta_t = t - x_drop[0];
133 double delta_r = sqrt((x-x_drop[1])*(x-x_drop[1])+(y-x_drop[2])*(y-x_drop[2])+(z-x_drop[3])*(z-x_drop[3]));
138 if( delta_r <= DBL_MIN ){
141 jz = ((z-x_drop[3])/delta_r)*
kernel_j( delta_t, delta_r )/
dtau;
144 double jtau =
get_ptau(jt, jz, eta);
147 jmu[0] = jtau*
get_ptau(p_drop[0], p_drop[3], eta);
148 jmu[1] = jtau*p_drop[1];
149 jmu[2] = jtau*p_drop[2];
150 jmu[3] = jtau*
get_peta(p_drop[0], p_drop[3], eta);
178 double i1 = gsl_sf_bessel_I1(x)/(
c_diff*
u);
179 double i2 = gsl_sf_bessel_In(2,x)*t/u/
u;
194 double i2 = gsl_sf_bessel_In(2,x)*r/u/
u;
214 return (1.0 + x + x*x/2.0)/r_w/r/
r;
228 return tau*cosh(eta);
233 return tau*sinh(eta);
238 return p0*cosh(eta) - p3*sinh(eta);
243 return p3*cosh(eta) - p0*sinh(eta);