synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.collision_matrix

Module for the class CollisionMatrix.

Module Contents

Classes

CollisionMatrix

Class to represent a collision matrix.

class synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.collision_matrix.CollisionMatrix(agglomerates: list[synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate])

Class to represent a collision matrix.

property normalized_content: numpy.ndarray
property num_collision_partners: int
calculate_content() None

Calculate the content of the collision matrix.

static _calculate_collision_frequency(collision_partner_a: synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate, collision_partner_b: synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate) float
pick_collision_pair() tuple[synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate, synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate]
Pick a pair for the next collision, based on an acceptance–rejection

strategy.

Source:
Wei, Kruis (2013) - A GPU-based parallelized Monte-Carlo method for particle

coagulation using an acceptance–rejection strategy

Returns:
tuple[Agglomerate, Agglomerate]: A pair of agglomerates for the next

collision.

update_collision_partner(collision_partner_update: synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate) None
Update the collision frequency of a collision partner, after it has changed

due to a collision.

Args:

collision_partner_update (Agglomerate): Collision partner to update.

remove_collision_partner(collision_partner: synthpic2.recipe.synth_chain.feature_generation_steps.agglomeration.agglomerate.Agglomerate) None
Remove a collision partner from the matrix, after it has been used for a

collision.

Args:

collision_partner (Agglomerate): Collision partner to be removed.