private void CalculateFireballEvolution( Fireball fireball ) { while (fireball.MaximumTemperature > FireballParam.BreakupTemperature_MeV && !CancellationToken.IsCancellationRequested) { // use small time steps so that an abort command by the user is registered faster fireball.Advance(0.1); } }
private void CalculateUnnormalizedQGPSuppressionFactors() { while (!HasFinishedCurrentBin && !CancellationToken.IsCancellationRequested) { Fireball fireball = CreateFireball(); double maximumTemperature = fireball.MaximumTemperature; CalculateFireballEvolution(fireball); CollectResults(fireball); UpdateStatus(maximumTemperature, fireball.LifeTime); CurrentImpactParam += FireballParam.GridCellSize_fm; } }
private void CollectResults( Fireball fireball ) { FlatNormalizationFactors[CurrentBinIndex] += CurrentImpactParam * fireball.IntegrateFireballField(FireballFieldType.Overlap); for (int pTIndex = 0; pTIndex < FireballParam.TransverseMomenta_GeV.Count; pTIndex++) { foreach (BottomiumState state in Enum.GetValues(typeof(BottomiumState))) { FlatQGPSuppressionFactors[CurrentBinIndex][pTIndex][state] += CurrentImpactParam * fireball.IntegrateFireballField( FireballFieldType.UnscaledSuppression, state, pTIndex); } } }