コード例 #1
0
        private void CalculateBinBoundaries(
            out List <int> numberCentralityBins,
            out List <List <string> > centralityBinStrings,
            out List <double> impactParams,
            out List <double> nColls,
            out List <double> nParts,
            out List <double> dSigmadbs,
            out List <double> sigmas
            )
        {
            BinBoundaryCalculator calculator = new BinBoundaryCalculator(CreateFireballParam(), JobCancelToken)
            {
                StatusValues = StatusValues
            };

            calculator.Calculate(CentralityBinBoundaries_percent);

            impactParams = calculator.ImpactParams;
            nColls       = calculator.Ncolls;
            nParts       = calculator.Nparts;
            dSigmadbs    = calculator.DSigmaDbs;
            sigmas       = calculator.Sigmas;

            centralityBinStrings           = GetCentralityBinStrings();
            numberCentralityBins           = calculator.NumberCentralityBins;
            ImpactParamsAtBinBoundaries_fm = calculator.ImpactParamsAtBinBoundaries;
            ParticipantsAtBinBoundaries    = calculator.ParticipantsAtBinBoundaries;
            MeanParticipantsInBin          = calculator.MeanParticipantsInBin;
        }
コード例 #2
0
        public void CalculateBins_pPb()
        {
            BinBoundaryCalculator calculator = new BinBoundaryCalculator(
                CreateFireballParam_pPb(), CancellationToken);

            calculator.Calculate(CentralityBinsInPercent);

            AssertCorrectImpactParamsAtBinBoundaries_pPb(calculator);
            AssertCorrectMeanParticipantsInBin_pPb(calculator);
        }
コード例 #3
0
        private static void AssertCorrectMeanParticipantsInBin_PbPb(BinBoundaryCalculator calculator)
        {
            List <double> nparts = calculator.MeanParticipantsInBin[0];

            Assert.AreEqual(7, nparts.Count);
            AssertHelper.AssertApproximatelyEqual(383.37, nparts[0], 5);
            AssertHelper.AssertApproximatelyEqual(339.85, nparts[1], 5);
            AssertHelper.AssertApproximatelyEqual(268.00, nparts[2], 5);
            AssertHelper.AssertApproximatelyEqual(186.95, nparts[3], 5);
            AssertHelper.AssertApproximatelyEqual(131.58, nparts[4], 5);
            AssertHelper.AssertApproximatelyEqual(88.942, nparts[5], 5);
            AssertHelper.AssertApproximatelyEqual(19.579, nparts[6], 5);
        }
コード例 #4
0
        private static void AssertCorrectMeanParticipantsInBin_pPb(BinBoundaryCalculator calculator)
        {
            List <double> nparts = calculator.MeanParticipantsInBin[0];

            Assert.AreEqual(7, nparts.Count);
            AssertHelper.AssertApproximatelyEqual(15.257, nparts[0], 5);
            AssertHelper.AssertApproximatelyEqual(14.760, nparts[1], 5);
            AssertHelper.AssertApproximatelyEqual(13.742, nparts[2], 5);
            AssertHelper.AssertApproximatelyEqual(12.231, nparts[3], 5);
            AssertHelper.AssertApproximatelyEqual(10.703, nparts[4], 5);
            AssertHelper.AssertApproximatelyEqual(9.0377, nparts[5], 5);
            AssertHelper.AssertApproximatelyEqual(3.5060, nparts[6], 5);
        }
コード例 #5
0
        private static void AssertCorrectImpactParamsAtBinBoundaries_pPb(BinBoundaryCalculator calculator)
        {
            List <double> impactParams = calculator.ImpactParamsAtBinBoundaries[0];

            Assert.AreEqual(8, impactParams.Count);
            AssertHelper.AssertApproximatelyEqual(0, impactParams[0]);
            AssertHelper.AssertApproximatelyEqual(1.6, impactParams[1]);
            AssertHelper.AssertApproximatelyEqual(2.4, impactParams[2]);
            AssertHelper.AssertApproximatelyEqual(3.6, impactParams[3]);
            AssertHelper.AssertApproximatelyEqual(4.4, impactParams[4]);
            AssertHelper.AssertApproximatelyEqual(5.0, impactParams[5]);
            AssertHelper.AssertApproximatelyEqual(5.6, impactParams[6]);
            AssertHelper.AssertApproximatelyEqual(14.0, impactParams[7]);
        }