private List <int> GenerateAggregateSizes() { var sizes = new List <int>(); var sum = 0; while (sum < _config.TotalPrimaryParticles) { sizes.Add(_aggregateSizeDistribution.GetRandomSize()); sum = sizes.Sum(); } return(sizes); }
/// <summary> /// The first primary particle of a cluster is always at (0,0,0) /// </summary> /// <param name="primaryParticles"></param> /// <returns></returns> public void SetFirstPrimaryParticle(List <PrimaryParticle> primaryParticles) { var radius = _psd.GetRandomSize(); primaryParticles.Add(new PrimaryParticle(0, new Vector3(0, 0, 0), radius)); }