File indexing completed on 2025-08-05 08:19:30
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #ifndef CAUSALLIQUEFIER_H
0020 #define CAUSALLIQUEFIER_H
0021
0022 #include "LiquefierBase.h"
0023 #include "RealType.h"
0024 #include <array>
0025
0026 #include <cmath>
0027 #include <gsl/gsl_sf_bessel.h>
0028
0029 namespace Jetscape {
0030
0031 class CausalLiquefier: public Jetscape::LiquefierBase {
0032 private:
0033
0034
0035 public:
0036
0037
0038 double dtau, dx, dy , deta;
0039 double tau_delay;
0040 double time_relax;
0041 double d_diff;
0042 double width_delta;
0043
0044 double c_diff;
0045 double gamma_relax;
0046
0047
0048
0049
0050 CausalLiquefier();
0051 CausalLiquefier(double dtau, double dx, double dy , double deta);
0052 ~CausalLiquefier() {};
0053
0054 void Init();
0055
0056 void smearing_kernel(Jetscape::real tau, Jetscape::real x,
0057 Jetscape::real y, Jetscape::real eta,
0058 const Droplet drop_i,
0059 std::array<Jetscape::real, 4> &jmu) const;
0060
0061 double dumping(double t) const;
0062
0063 double kernel_rho(double t, double r) const;
0064 double rho_smooth(double t, double r) const;
0065 double rho_delta(double t, double r) const;
0066
0067 double kernel_j(double t, double r) const;
0068 double j_smooth(double t, double r) const;
0069 double j_delta(double t, double r) const;
0070
0071 double get_t(double tau, double eta) const;
0072 double get_z(double tau, double eta) const;
0073
0074 double get_ptau(double px, double pz, double eta) const;
0075 double get_peta(double px, double pz, double eta) const;
0076
0077
0078 void set_t_delay(double new_tau_delay);
0079
0080
0081 };
0082
0083 };
0084
0085 #endif