Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
PLMD::vesselbase::ValueVessel Class Referenceabstract

#include <ValueVessel.h>

Inheritance diagram for PLMD::vesselbase::ValueVessel:
Inheritance graph
[legend]

Public Member Functions

 ValueVessel (const VesselOptions &da)
 
bool applyForce (std::vector< double > &forces) override
 Retrieve the forces on the quantities in the vessel. More...
 
virtual void calculate (const unsigned &current, MultiValue &myvals, std::vector< double > &buffer, std::vector< unsigned > &der_list) const =0
 Calculate the part of the vessel that is done in the loop. More...
 
void checkRead ()
 Check that readin was fine. More...
 
std::string description () override
 Return a description of the vessel contents. More...
 
virtual void finish (const std::vector< double > &)=0
 Complete the calculation once the loop is finished. More...
 
ValuegetFinalValue () const
 
std::string getLabel () const
 Return the label. More...
 
std::string getName () const
 Return the name. More...
 
double getOutputValue () const
 
virtual void prepare ()
 Do something before the loop. More...
 
virtual void resize ()=0
 Reset the size of the buffers. More...
 
virtual void setBufferStart (unsigned &start)
 Set the start of the buffer. More...
 
virtual MultiValuetransformDerivatives (const unsigned &current, MultiValue &myvals, MultiValue &bvals)
 This is replaced in bridges so we can transform the derivatives. More...
 
virtual std::string value_descriptor ()=0
 

Static Public Member Functions

static void registerKeywords (Keywords &keys)
 
static std::string transformName (const std::string &name)
 Convert the name to the label of the component. More...
 

Protected Member Functions

void error (const std::string &errmsg)
 Report an error. More...
 
ActionWithVesselgetAction () const
 Return a pointer to the action we are working in. More...
 
std::string getAllInput ()
 This returns the whole input line (it is used for less_than/more_than/between) More...
 
double getNLTolerance () const
 Return the value of the neighbor list tolerance. More...
 
int getNumericalLabel () const
 Return the numerical label. More...
 
unsigned getSizeOfBuffer () const
 Return the size of the buffer. More...
 
double getTolerance () const
 Return the value of the tolerance. More...
 
template<class T >
void parse (const std::string &key, T &t)
 Parse something from the input. More...
 
void parseFlag (const std::string &key, bool &t)
 Parse one keyword as boolean flag. More...
 
template<class T >
void parseVector (const std::string &key, std::vector< T > &t)
 Parse one keyword as std::vector. More...
 
void resizeBuffer (const unsigned &n)
 Set the size of the data buffer. More...
 
void setOutputValue (const double &val)
 Set the final value. More...
 

Protected Attributes

unsigned bufstart
 The start of this Vessel's buffer in buffer in the underlying ActionWithVessel. More...
 
unsigned mycomp
 The component that is being averaged/accumulated whatever. More...
 

Private Attributes

ActionWithVesselaction
 The action that this vessel is created within. More...
 
unsigned bufsize
 The number of elements in this vessel's buffered data. More...
 
Valuefinal_value
 
std::unique_ptr< Valuefinal_value_ptr
 
bool finished_read
 This just checks we have done checkRead. More...
 
const PLMD::Keywordskeywords
 The keywords. More...
 
std::vector< std::string > line
 Directive line. More...
 
std::string mylabel
 The label for the vessel for referencing. More...
 
std::string myname
 The keyword for the vessel in the input file. More...
 
const int numlab
 The numerical label for this object. More...
 

Constructor & Destructor Documentation

◆ ValueVessel()

PLMD::vesselbase::ValueVessel::ValueVessel ( const VesselOptions da)
explicit

Member Function Documentation

◆ applyForce()

bool PLMD::vesselbase::ValueVessel::applyForce ( std::vector< double > &  forces)
overridevirtual

Retrieve the forces on the quantities in the vessel.

Implements PLMD::vesselbase::Vessel.

◆ calculate()

virtual void PLMD::vesselbase::Vessel::calculate ( const unsigned &  current,
MultiValue myvals,
std::vector< double > &  buffer,
std::vector< unsigned > &  der_list 
) const
pure virtualinherited

◆ checkRead()

void PLMD::vesselbase::Vessel::checkRead ( )
inherited

Check that readin was fine.

◆ description()

std::string PLMD::vesselbase::ValueVessel::description ( )
overridevirtual

Return a description of the vessel contents.

Implements PLMD::vesselbase::Vessel.

◆ error()

void PLMD::vesselbase::Vessel::error ( const std::string &  errmsg)
protectedinherited

Report an error.

◆ finish()

virtual void PLMD::vesselbase::Vessel::finish ( const std::vector< double > &  )
pure virtualinherited

◆ getAction()

ActionWithVessel * PLMD::vesselbase::Vessel::getAction ( ) const
inlineprotectedinherited

Return a pointer to the action we are working in.

◆ getAllInput()

std::string PLMD::vesselbase::Vessel::getAllInput ( )
protectedinherited

This returns the whole input line (it is used for less_than/more_than/between)

◆ getFinalValue()

Value * PLMD::vesselbase::ValueVessel::getFinalValue ( ) const
inline

◆ getLabel()

std::string PLMD::vesselbase::Vessel::getLabel ( ) const
inherited

Return the label.

◆ getName()

std::string PLMD::vesselbase::Vessel::getName ( ) const
inherited

Return the name.

◆ getNLTolerance()

double PLMD::vesselbase::Vessel::getNLTolerance ( ) const
inlineprotectedinherited

Return the value of the neighbor list tolerance.

◆ getNumericalLabel()

int PLMD::vesselbase::Vessel::getNumericalLabel ( ) const
inlineprotectedinherited

Return the numerical label.

◆ getOutputValue()

double PLMD::vesselbase::ValueVessel::getOutputValue ( ) const
inline

◆ getSizeOfBuffer()

unsigned PLMD::vesselbase::Vessel::getSizeOfBuffer ( ) const
inlineprotectedinherited

Return the size of the buffer.

◆ getTolerance()

double PLMD::vesselbase::Vessel::getTolerance ( ) const
inlineprotectedinherited

Return the value of the tolerance.

◆ parse()

template<class T >
void PLMD::vesselbase::Vessel::parse ( const std::string &  key,
T &  t 
)
protectedinherited

Parse something from the input.

◆ parseFlag()

void PLMD::vesselbase::Vessel::parseFlag ( const std::string &  key,
bool &  t 
)
protectedinherited

Parse one keyword as boolean flag.

◆ parseVector()

template<class T >
void PLMD::vesselbase::Vessel::parseVector ( const std::string &  key,
std::vector< T > &  t 
)
protectedinherited

Parse one keyword as std::vector.

◆ prepare()

virtual void PLMD::vesselbase::Vessel::prepare ( )
inlinevirtualinherited

Do something before the loop.

Reimplemented in PLMD::vesselbase::BridgeVessel, and PLMD::mapping::SpathVessel.

◆ registerKeywords()

void PLMD::vesselbase::ValueVessel::registerKeywords ( Keywords keys)
static

◆ resize()

virtual void PLMD::vesselbase::Vessel::resize ( )
pure virtualinherited

◆ resizeBuffer()

void PLMD::vesselbase::Vessel::resizeBuffer ( const unsigned &  n)
inlineprotectedinherited

Set the size of the data buffer.

◆ setBufferStart()

void PLMD::vesselbase::Vessel::setBufferStart ( unsigned &  start)
inlinevirtualinherited

Set the start of the buffer.

Reimplemented in PLMD::vesselbase::BridgeVessel.

◆ setOutputValue()

void PLMD::vesselbase::ValueVessel::setOutputValue ( const double &  val)
inlineprotected

Set the final value.

◆ transformDerivatives()

MultiValue & PLMD::vesselbase::Vessel::transformDerivatives ( const unsigned &  current,
MultiValue myvals,
MultiValue bvals 
)
inlinevirtualinherited

This is replaced in bridges so we can transform the derivatives.

Reimplemented in PLMD::vesselbase::BridgeVessel.

◆ transformName()

std::string PLMD::vesselbase::Vessel::transformName ( const std::string &  name)
staticinherited

Convert the name to the label of the component.

◆ value_descriptor()

virtual std::string PLMD::vesselbase::ValueVessel::value_descriptor ( )
pure virtual

Member Data Documentation

◆ action

ActionWithVessel* PLMD::vesselbase::Vessel::action
privateinherited

The action that this vessel is created within.

◆ bufsize

unsigned PLMD::vesselbase::Vessel::bufsize
privateinherited

The number of elements in this vessel's buffered data.

◆ bufstart

unsigned PLMD::vesselbase::Vessel::bufstart
protectedinherited

The start of this Vessel's buffer in buffer in the underlying ActionWithVessel.

◆ final_value

Value* PLMD::vesselbase::ValueVessel::final_value
private

◆ final_value_ptr

std::unique_ptr<Value> PLMD::vesselbase::ValueVessel::final_value_ptr
private

◆ finished_read

bool PLMD::vesselbase::Vessel::finished_read
privateinherited

This just checks we have done checkRead.

◆ keywords

const PLMD::Keywords& PLMD::vesselbase::Vessel::keywords
privateinherited

The keywords.

◆ line

std::vector<std::string> PLMD::vesselbase::Vessel::line
privateinherited

Directive line.

This line is progressively erased during vessel construction so as to check if all the present keywords are correct.

◆ mycomp

unsigned PLMD::vesselbase::ValueVessel::mycomp
protected

The component that is being averaged/accumulated whatever.

◆ mylabel

std::string PLMD::vesselbase::Vessel::mylabel
privateinherited

The label for the vessel for referencing.

◆ myname

std::string PLMD::vesselbase::Vessel::myname
privateinherited

The keyword for the vessel in the input file.

◆ numlab

const int PLMD::vesselbase::Vessel::numlab
privateinherited

The numerical label for this object.


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