Loading...
Searching...
No Matches
PLMD::repliedTrajectory Class Reference

a decorator for replicating the atomic distribution More...

Inheritance diagram for PLMD::repliedTrajectory:

Public Member Functions

 repliedTrajectory (std::unique_ptr< AtomDistribution > &&d, const unsigned repeatX, const unsigned repeatY, const unsigned repeatZ)
 
void frame (std::vector< Vector > &posToUpdate, std::vector< double > &box, unsigned step, Random &rng)
 Update the input vectors with the position and the box of the frame.
 
void frame (View< Vector > posToUpdate, View< double, 9 > box, unsigned step, Random &rng) override
 Generates the inner trajectory of (nat)/(rX*rY*rZ), where nat is the dimension of the vector view, then it replicate the atoms in the various directions.
 
bool overrideNat (unsigned &natoms) override
 See the documentation the AtomDistribution.
 

Static Public Member Functions

static std::unique_ptr< AtomDistributiondecorate (std::unique_ptr< AtomDistribution > &&d, std::string_view cmd)
 
static std::unique_ptr< AtomDistributiondecorateAtomDistribution (std::unique_ptr< AtomDistribution > &&ad, std::string_view decoratorsDistr)
 
static std::unique_ptr< AtomDistributiongetAtomDistribution (std::string_view atomicDistr)
 
static std::vector< documentationgetDecoratorsDocumentation ()
 
static std::vector< std::string > getDecoratorsList ()
 
static std::vector< documentationgetDistributionDocumentation ()
 
static std::vector< std::string > getDistributionList ()
 

Static Public Attributes

static constexpr auto doc
 
static constexpr auto id ="reply"
 

Private Attributes

std::unique_ptr< AtomDistributiondistribution
 
unsigned rX =1
 
unsigned rY =1
 
unsigned rZ =1
 

Detailed Description

a decorator for replicating the atomic distribution

Constructor & Destructor Documentation

◆ repliedTrajectory()

PLMD::repliedTrajectory::repliedTrajectory ( std::unique_ptr< AtomDistribution > && d,
const unsigned repeatX,
const unsigned repeatY,
const unsigned repeatZ )
inline

Member Function Documentation

◆ decorate()

static std::unique_ptr< AtomDistribution > PLMD::repliedTrajectory::decorate ( std::unique_ptr< AtomDistribution > && d,
std::string_view cmd )
inlinestatic

◆ decorateAtomDistribution()

std::unique_ptr< AtomDistribution > PLMD::AtomDistribution::decorateAtomDistribution ( std::unique_ptr< AtomDistribution > && ad,
std::string_view decoratorsDistr )
staticinherited

◆ frame() [1/2]

void PLMD::AtomDistribution::frame ( std::vector< Vector > & posToUpdate,
std::vector< double > & box,
unsigned step,
Random & rng )
inherited

Update the input vectors with the position and the box of the frame.

◆ frame() [2/2]

void PLMD::repliedTrajectory::frame ( View< Vector > posToUpdate,
View< double, 9 > box,
unsigned step,
Random & rng )
inlineoverridevirtual

Generates the inner trajectory of (nat)/(rX*rY*rZ), where nat is the dimension of the vector view, then it replicate the atoms in the various directions.

Implements PLMD::AtomDistribution.

◆ getAtomDistribution()

std::unique_ptr< AtomDistribution > PLMD::AtomDistribution::getAtomDistribution ( std::string_view atomicDistr)
staticinherited

◆ getDecoratorsDocumentation()

std::vector< AtomDistribution::documentation > PLMD::AtomDistribution::getDecoratorsDocumentation ( )
staticinherited

◆ getDecoratorsList()

std::vector< std::string > PLMD::AtomDistribution::getDecoratorsList ( )
staticinherited

◆ getDistributionDocumentation()

std::vector< AtomDistribution::documentation > PLMD::AtomDistribution::getDistributionDocumentation ( )
staticinherited

◆ getDistributionList()

std::vector< std::string > PLMD::AtomDistribution::getDistributionList ( )
staticinherited

◆ overrideNat()

bool PLMD::repliedTrajectory::overrideNat ( unsigned & natoms)
inlineoverridevirtual

See the documentation the AtomDistribution.

Reimplemented from PLMD::AtomDistribution.

Member Data Documentation

◆ distribution

std::unique_ptr<AtomDistribution> PLMD::repliedTrajectory::distribution
private

◆ doc

auto PLMD::repliedTrajectory::doc
staticconstexpr
Initial value:
=R"=(replicate the box by the given in all the directions:
usage:
reply x y z)="

◆ id

auto PLMD::repliedTrajectory::id ="reply"
staticconstexpr

◆ rX

unsigned PLMD::repliedTrajectory::rX =1
private

◆ rY

unsigned PLMD::repliedTrajectory::rY =1
private

◆ rZ

unsigned PLMD::repliedTrajectory::rZ =1
private

The documentation for this class was generated from the following file: