/******************************************************************************************** * Constructors ********************************************************************************************/ public BinBoundaryCalculator( FireballParam fireballParam, CancellationToken cancellationToken ) { FireballParam = fireballParam.Clone(); CancellationToken = cancellationToken; }
private Fireball CreateFireball() { FireballParam param = FireballParam.Clone(); param.ImpactParameter_fm = CurrentImpactParam; return(new Fireball(param)); }
/******************************************************************************************** * Constructors ********************************************************************************************/ public QGPSuppression( FireballParam fireballParam, List <int> numberCentralityBins, List <List <double> > impactParamsAtBinBoundaries, CancellationToken cancellationToken ) { FireballParam = fireballParam.Clone(); NumberCentralityBins = numberCentralityBins; ImpactParamsAtBinBoundaries = impactParamsAtBinBoundaries; CancellationToken = cancellationToken; FlatImpactParamsAtBinBoundaries = GetFlatImpactParams(); NumberFlatBins = FlatImpactParamsAtBinBoundaries.Count - 1; ArrayReshapingMask = GetArrayReshapingMask(); }
/******************************************************************************************** * Constructors ********************************************************************************************/ public GlauberCalculation( FireballParam param ) { Param = param.Clone(); AssertValidMembers(); InitCoordinateSystem(); InitInelasticppCrossSection(); InitNucleusAB(); InitNucleonNumberDensityFieldsAB(); InitNucleonNumberColumnDensityFieldsAB(); InitOverlapField(); InitNumberCollisionsField(); InitNumberParticipantsField(); InitTemperatureScalingField(); }
private void GetValuesFromGlauberCalculation( double impactParam, out double ncoll, out double npart, out double dsigmadb, out double sigma ) { FireballParam param = FireballParam.Clone(); param.ImpactParameter_fm = impactParam; GlauberCalculation calc = new GlauberCalculation(param); ncoll = calc.TotalNumberCollisions; npart = calc.TotalNumberParticipants; dsigmadb = 2 * Math.PI * impactParam * (1.0 - Math.Exp(-ncoll)); sigma = param.GridCellSize_fm * dsigmadb; if (Sigmas.Count > 0) { sigma += Sigmas[Sigmas.Count - 1]; } }
/******************************************************************************************** * Constructors ********************************************************************************************/ public Fireball( FireballParam param ) { Param = param.Clone(); LifeTime = -1; // The initial step should change the temperature by 1/3 percent for pure Bjorken flow // (which is the case in the initial stages) TimeFactor = 1e-2; CurrentTime = Param.ThermalTime_fm; TimeStep = CurrentTime * TimeFactor; // = 3 * DeltaT(tF)/T(tF) * tF AssertValidMembers(); GlauberCalculation = new GlauberCalculation(Param); InitCoordinateSystem(); InitV(); InitElectromagneticField(); InitTemperature(); InitDecayWidth(); InitDampingFactor(); }
/******************************************************************************************** * Constructors ********************************************************************************************/ public LCFFieldAverager( FireballParam param ) { Param = param.Clone(); }