ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include <collision.hpp>
Public Member Functions | |
Collision_parameters () | |
void | initialize () |
Validates parameters and creates particle types if needed. | |
Public Attributes | |
CollisionModeType | mode |
collision protocol | |
double | distance |
distance at which particles are bound | |
double | distance2 |
int | bond_centers |
bond type used between centers of colliding particles | |
int | bond_vs |
bond type used between virtual sites | |
int | vs_particle_type |
particle type for virtual sites created on collision | |
double | dist_glued_part_to_vs |
For mode "glue to surface": The distance from the particle which is to be glued to the new virtual site. | |
int | part_type_to_be_glued |
For mode "glue to surface": The particle type being glued. | |
int | part_type_to_attach_vs_to |
For mode "glue to surface": The particle type to which the virtual site is attached. | |
int | part_type_after_glueing |
Particle type to which the newly glued particle is converted. | |
int | bond_three_particles |
First bond type (for zero degrees) used for the three-particle bond (angle potential) | |
int | three_particle_angle_resolution |
Number of angle bonds to use (angular resolution) different angle bonds with different equilibrium angles Are expected to have ids immediately following to bond_three_particles. | |
double | vs_placement |
Placement of virtual sites for MODE_VS. | |
Definition at line 48 of file collision.hpp.
|
inline |
Definition at line 50 of file collision.hpp.
void Collision_parameters::initialize | ( | ) |
Validates parameters and creates particle types if needed.
Definition at line 104 of file collision.cpp.
References BIND_CENTERS, BIND_THREE_PARTICLES, BIND_VS, bond_centers, bond_three_particles, bond_vs, bonded_ia_params, collision_params, BondedInteractionsMap::contains(), distance, distance2, get_bond_num_partners(), System::get_system(), GLUE_TO_SURF, mode, OFF, part_type_after_glueing, part_type_to_attach_vs_to, part_type_to_be_glued, BondedInteractionsMap::size(), Utils::sqr(), three_particle_angle_resolution, vs_particle_type, and vs_placement.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::do_call_method().
int Collision_parameters::bond_centers |
bond type used between centers of colliding particles
Definition at line 62 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), detect_collision(), handle_collisions(), and initialize().
int Collision_parameters::bond_three_particles |
First bond type (for zero degrees) used for the three-particle bond (angle potential)
Definition at line 80 of file collision.hpp.
Referenced by coldet_do_three_particle_bond(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), and initialize().
int Collision_parameters::bond_vs |
bond type used between virtual sites
Definition at line 64 of file collision.hpp.
Referenced by bind_at_poc_create_bond_between_vs(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), glue_to_surface_bind_part_to_vs(), and initialize().
double Collision_parameters::dist_glued_part_to_vs |
For mode "glue to surface": The distance from the particle which is to be glued to the new virtual site.
Definition at line 70 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), and glue_to_surface_calc_vs_pos().
double Collision_parameters::distance |
distance at which particles are bound
Definition at line 57 of file collision.hpp.
Referenced by coldet_do_three_particle_bond(), collision_detection_cutoff(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), and initialize().
double Collision_parameters::distance2 |
Definition at line 59 of file collision.hpp.
Referenced by detect_collision(), and initialize().
CollisionModeType Collision_parameters::mode |
collision protocol
Definition at line 55 of file collision.hpp.
Referenced by bind_centers(), System::System::calculate_forces(), collision_detection_cutoff(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), detect_collision(), handle_collisions(), and initialize().
int Collision_parameters::part_type_after_glueing |
Particle type to which the newly glued particle is converted.
Definition at line 77 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), glue_to_surface_bind_part_to_vs(), handle_collisions(), and initialize().
int Collision_parameters::part_type_to_attach_vs_to |
For mode "glue to surface": The particle type to which the virtual site is attached.
Definition at line 75 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), glue_to_surface_calc_vs_pos(), glue_to_surface_criterion(), and initialize().
int Collision_parameters::part_type_to_be_glued |
For mode "glue to surface": The particle type being glued.
Definition at line 72 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), glue_to_surface_calc_vs_pos(), glue_to_surface_criterion(), handle_collisions(), and initialize().
int Collision_parameters::three_particle_angle_resolution |
Number of angle bonds to use (angular resolution) different angle bonds with different equilibrium angles Are expected to have ids immediately following to bond_three_particles.
Definition at line 84 of file collision.hpp.
Referenced by coldet_do_three_particle_bond(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), and initialize().
int Collision_parameters::vs_particle_type |
particle type for virtual sites created on collision
Definition at line 66 of file collision.hpp.
Referenced by ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), initialize(), and place_vs_and_relate_to_particle().
double Collision_parameters::vs_placement |
Placement of virtual sites for MODE_VS.
0=on same particle as related to, 1=on collision partner, 0.5=in the middle between
Definition at line 90 of file collision.hpp.
Referenced by bind_at_point_of_collision_calc_vs_pos(), ScriptInterface::CollisionDetection::CollisionDetection::CollisionDetection(), and initialize().