class for reading lammps data files
More...
#include <lammpsdatareader.h>
class for reading lammps data files
This class provides the TrajectoryReader + Topology reader interface for lammps data files
Definition at line 45 of file lammpsdatareader.h.
◆ lammps_format
Enumerator |
---|
style_angle_bond_molecule | |
style_atomic | |
style_full | |
Definition at line 125 of file lammpsdatareader.h.
◆ LAMMPSDataReader()
votca::csg::LAMMPSDataReader::LAMMPSDataReader |
( |
| ) |
|
|
default |
◆ ~LAMMPSDataReader()
votca::csg::LAMMPSDataReader::~LAMMPSDataReader |
( |
| ) |
|
|
overridedefault |
◆ Close()
void votca::csg::LAMMPSDataReader::Close |
( |
| ) |
|
|
overridevirtual |
◆ determineDataFileFormat_()
◆ FirstFrame()
bool votca::csg::LAMMPSDataReader::FirstFrame |
( |
Topology & | top | ) |
|
|
overridevirtual |
◆ InitializeAtomAndBeadTypes_()
void votca::csg::LAMMPSDataReader::InitializeAtomAndBeadTypes_ |
( |
| ) |
|
|
private |
Determines atom and bead types based on masses in lammps files.
The purpose of this function is to take lammps output where there are more than a single atom type of the same element. For instance there may be 4 atom types with mass of 12.01. Well this means that they are all carbon but are treated differently in lammps. It makes sense to keep track of this. If a mass cannot be associated with an element we will assume it is pseudo atom or course grained watom which we will represent as a bead. So when creating the atom names we will take this into account. So say we have the following masses in the lammps .data file:
Masses
1 1.0 2 12.01 3 12.01 4 16.0 5 12.01 6 15.2 7 12.8 8 15.2
Then we would translate this to the following atom names 1 H 2 C1 3 C2 4 O 5 C3 6 Bead1 BeadType 1 7 Bead2 BeadType 8 Bead1 BeadType 2
Note that we do not append a number if it is singular, in such cases the element and the atom name is the same.
Definition at line 291 of file lammpsdatareader.cc.
◆ MatchFourFieldLabels_()
bool votca::csg::LAMMPSDataReader::MatchFourFieldLabels_ |
( |
std::vector< std::string > | fields, |
|
|
Topology & | top ) |
|
private |
◆ MatchOneFieldLabel_()
bool votca::csg::LAMMPSDataReader::MatchOneFieldLabel_ |
( |
std::vector< std::string > | fields, |
|
|
Topology & | top ) |
|
private |
◆ MatchThreeFieldLabels_()
bool votca::csg::LAMMPSDataReader::MatchThreeFieldLabels_ |
( |
std::vector< std::string > | fields | ) |
|
|
private |
◆ MatchTwoFieldLabels_()
bool votca::csg::LAMMPSDataReader::MatchTwoFieldLabels_ |
( |
std::vector< std::string > | fields, |
|
|
Topology & | top ) |
|
private |
◆ NextFrame()
bool votca::csg::LAMMPSDataReader::NextFrame |
( |
Topology & | top | ) |
|
|
overridevirtual |
◆ Open()
bool votca::csg::LAMMPSDataReader::Open |
( |
const std::string & | file | ) |
|
|
overridevirtual |
◆ ReadAngles_()
void votca::csg::LAMMPSDataReader::ReadAngles_ |
( |
Topology & | top | ) |
|
|
private |
◆ ReadAtoms_()
void votca::csg::LAMMPSDataReader::ReadAtoms_ |
( |
Topology & | top | ) |
|
|
private |
◆ ReadBonds_()
void votca::csg::LAMMPSDataReader::ReadBonds_ |
( |
Topology & | top | ) |
|
|
private |
◆ ReadBox_()
void votca::csg::LAMMPSDataReader::ReadBox_ |
( |
std::vector< std::string > | fields, |
|
|
Topology & | top ) |
|
private |
◆ ReadDihedrals_()
void votca::csg::LAMMPSDataReader::ReadDihedrals_ |
( |
Topology & | top | ) |
|
|
private |
◆ ReadNumOfAngles_()
void votca::csg::LAMMPSDataReader::ReadNumOfAngles_ |
( |
std::vector< std::string > | fields | ) |
|
|
private |
◆ ReadNumOfAtoms_()
void votca::csg::LAMMPSDataReader::ReadNumOfAtoms_ |
( |
std::vector< std::string > | fields, |
|
|
Topology & | top ) |
|
private |
◆ ReadNumOfBonds_()
void votca::csg::LAMMPSDataReader::ReadNumOfBonds_ |
( |
std::vector< std::string > | fields | ) |
|
|
private |
◆ ReadNumOfDihedrals_()
void votca::csg::LAMMPSDataReader::ReadNumOfDihedrals_ |
( |
std::vector< std::string > | fields | ) |
|
|
private |
◆ ReadNumOfImpropers_()
void votca::csg::LAMMPSDataReader::ReadNumOfImpropers_ |
( |
std::vector< std::string > | fields | ) |
|
|
private |
◆ ReadNumTypes_()
void votca::csg::LAMMPSDataReader::ReadNumTypes_ |
( |
std::vector< std::string > | fields, |
|
|
std::string | type ) |
|
private |
◆ ReadTopology()
bool votca::csg::LAMMPSDataReader::ReadTopology |
( |
std::string | file, |
|
|
Topology & | top ) |
|
overridevirtual |
◆ RenameMolecules()
void votca::csg::LAMMPSDataReader::RenameMolecules |
( |
MoleculeContainer & | molecules | ) |
const |
|
private |
◆ SkipImpropers_()
void votca::csg::LAMMPSDataReader::SkipImpropers_ |
( |
| ) |
|
|
private |
◆ SortIntoDataGroup_()
void votca::csg::LAMMPSDataReader::SortIntoDataGroup_ |
( |
std::string | tag | ) |
|
|
private |
◆ atomIdToIndex_
std::map<Index, Index> votca::csg::LAMMPSDataReader::atomIdToIndex_ |
|
private |
◆ atomIdToMoleculeId_
std::map<Index, Index> votca::csg::LAMMPSDataReader::atomIdToMoleculeId_ |
|
private |
◆ atomtypes_
std::map<Index, std::string> votca::csg::LAMMPSDataReader::atomtypes_ |
|
private |
◆ charge_unit
◆ data_
std::map<std::string, std::vector<std::vector<std::string> > > votca::csg::LAMMPSDataReader::data_ |
|
private |
◆ distance_unit
◆ energy_unit
◆ fl_
std::ifstream votca::csg::LAMMPSDataReader::fl_ |
|
private |
◆ fname_
std::string votca::csg::LAMMPSDataReader::fname_ |
|
private |
◆ force_unit
◆ mass_unit
◆ molecules_
std::map<Index, Molecule *> votca::csg::LAMMPSDataReader::molecules_ |
|
private |
◆ numberOf_
std::map<std::string, Index> votca::csg::LAMMPSDataReader::numberOf_ |
|
private |
◆ numberOfDifferentTypes_
std::map<std::string, Index> votca::csg::LAMMPSDataReader::numberOfDifferentTypes_ |
|
private |
◆ time_unit
◆ topology_
bool votca::csg::LAMMPSDataReader::topology_ |
|
private |
The documentation for this class was generated from the following files: