|
Gromacs
2026.0-dev-20251109-f20ba35
|
Collaboration diagram for t_swapgrp:This structure contains data needed for the groups involved in swapping: split group 0, split group 1, solvent group, ion groups.
Public Member Functions | |
| t_swapgrp (const gmx::LocalAtomSet &atomset) | |
| Construct a swap group given the managed swap atoms. More... | |
Public Attributes | |
| std::string | molname |
| Name of the group or ion type. | |
| int | apm = 0 |
| Number of atoms in each molecule. | |
| gmx::LocalAtomSet | atomSet |
| The atom indices in the swap group. | |
| std::vector< gmx::RVec > | xc |
| Collective array of group atom positions (size nat) | |
| std::vector< gmx::IVec > | xc_shifts |
| Current (collective) shifts (size nat) | |
| std::vector< gmx::IVec > | xc_eshifts |
| Extra shifts since last DD step (size nat) | |
| std::vector< gmx::RVec > | xc_old |
| Old (collective) positions (size nat) | |
| real | q = 0. |
| Total charge of one molecule of this group. | |
| std::vector< real > | m |
| Masses (not relevant for split groups, size apm) | |
| std::shared_ptr< std::vector < Domain > > | comp_from |
| (Collective) Stores from which compartment this molecule has come. This way we keep track of through which channel an ion permeates (size nMol = nat/apm) More... | |
| std::vector< Domain > | comp_now |
| In which compartment this ion is now (size nMol) | |
| std::shared_ptr< std::vector < ChannelHistory > > | channel_label |
| Which channel was passed at last by this ion? (size nMol) More... | |
| gmx::RVec | center = { 0, 0, 0 } |
| Center of the group; COM if masses are used. | |
|
gmx::EnumerationArray < Compartment, t_compartment > | comp |
| Distribution of particles of this group across the two compartments. | |
|
gmx::EnumerationArray < Compartment, real > | vacancy = { { 0 } } |
| How many molecules need to be swapped in? | |
|
gmx::EnumerationArray< Channel, int > | fluxfromAtoB = { { 0 } } |
| Net flux of ions per channel. | |
|
gmx::EnumerationArray< Channel, int > | nCyl = { { 0 } } |
| Number of ions residing in a channel. | |
| int | nCylBoth = 0 |
| Ions assigned to cyl0 and cyl1. Not good. | |
| t_swapgrp::t_swapgrp | ( | const gmx::LocalAtomSet & | atomset | ) |
Construct a swap group given the managed swap atoms.
| [in] | atomset | Managed indices of atoms that are part of the swap group. |
| std::shared_ptr<std::vector<ChannelHistory> > t_swapgrp::channel_label |
Which channel was passed at last by this ion? (size nMol)
Sometimes this is filled during checkpoint reading, and sometimes during tpr reading, so we use std::shared_ptr so there will be only one vector and it can be allocated from either place.
| std::shared_ptr<std::vector<Domain> > t_swapgrp::comp_from |
(Collective) Stores from which compartment this molecule has come. This way we keep track of through which channel an ion permeates (size nMol = nat/apm)
Sometimes this is filled during checkpoint reading, and sometimes during tpr reading, so we use std::shared_ptr so there will be only one vector and it can be allocated from either place.
1.8.5