ls1-MarDyn
ls1-MarDyn molecular dynamics code
PerCellGenerator.h
1#pragma once
2
3#include <limits>
4
5#include "InputBase.h"
7
8class Component;
9
15public:
31 void readXML(XMLfileUnits &xmlconfig) override;
32
33 void readPhaseSpaceHeader(Domain *domain, double timestep) override{
34 // Empty as no header file exists.
35 };
36
37 unsigned long readPhaseSpace(ParticleContainer *particleContainer, Domain *domain,
38 DomainDecompBase *domainDecomp) override;
39
47 static void fillContainer(ParticleContainer *particleContainer, Component *component,
48 unsigned int numMoleculesPerCell, bool fillHalo);
49
55 static void generateTwoParticles(ParticleContainer *particleContainer, Component *component);
56
57private:
58 unsigned int _numMoleculesPerCell{std::numeric_limits<unsigned int>::max()};
59
60 bool _generateAtLeastTwoParticles{true};
61
62 double _initTemperature{0.};
63};
Class implementing molecules as rigid rotators consisting out of different interaction sites (LJcente...
Definition: Component.h:14
handle boundary region and multiple processes
Definition: DomainDecompBase.h:51
This class is used to read in the phasespace and to handle macroscopic values.
Definition: Domain.h:47
interface for any kind of input class
Definition: InputBase.h:18
This Interface is used to get access to particles and pairs of particles.
Definition: ParticleContainer.h:69
Definition: PerCellGenerator.h:14
static void fillContainer(ParticleContainer *particleContainer, Component *component, unsigned int numMoleculesPerCell, bool fillHalo)
Definition: PerCellGenerator.cpp:60
unsigned long readPhaseSpace(ParticleContainer *particleContainer, Domain *domain, DomainDecompBase *domainDecomp) override
read the actual phase space information
Definition: PerCellGenerator.cpp:15
static void generateTwoParticles(ParticleContainer *particleContainer, Component *component)
Definition: PerCellGenerator.cpp:147
void readPhaseSpaceHeader(Domain *domain, double timestep) override
read the phase space components and header information
Definition: PerCellGenerator.h:33
void readXML(XMLfileUnits &xmlconfig) override
Definition: PerCellGenerator.cpp:36
XML file with unit attributes abstraction.
Definition: xmlfileUnits.h:25
XML input file with unit handling/conversion support.