PeTar
N-body code for collisional gravitational systems
ArtificialParticleInformation Class Reference

class to store necessary information for using artificial particles More...

#include <artificial_particles.hpp>

Public Member Functions

 ArtificialParticleInformation ()
 initializer More...
 
void setParticleTypeToMember (const PS::F64 _mass=PS::LARGE_FLOAT, const PS::F64 _status=-PS::LARGE_FLOAT)
 set particle type to member More...
 
bool isMember () const
 return whether the particle type is member More...
 
void setParticleTypeToCM (const PS::F64 _mass_backup=PS::LARGE_FLOAT, const PS::F64 _status=PS::LARGE_FLOAT)
 set particle type to artificial More...
 
bool isCM () const
 return whether the particle type is c.m. More...
 
void setMassBackup (const PS::F64 _mass)
 set backup mass More...
 
PS::F64 getMassBackup () const
 get backup mass More...
 
void setParticleTypeToSingle ()
 set particle type to single More...
 
bool isSingle () const
 return whether the particle type is single More...
 
void setParticleTypeToArtificial (const PS::F64 _status=PS::LARGE_FLOAT, const PS::F64 _mass_backup=0.0)
 set particle type to artificial More...
 
bool isArtificial () const
 return whether the particle type is artificial More...
 
void storeData (const PS::F64 _data)
 store one data (only in artificial particles) More...
 
PS::F64 getData (const bool is_positive) const
 get stored data (only in artificial particles) More...
 
void setStatus (const PS::F64 _status)
 set status More...
 
PS::F64 getStatus () const
 get status More...
 
bool isUnused () const
 return whether the particle is unused More...
 
void setParticleTypeToUnused ()
 set particle type to unused More...
 
void printColumn (std::ostream &_fout, const int _width=20)
 print data of class members using column style More...
 
void writeAscii (FILE *_fout) const
 write class data with ASCII format More...
 
void writeBinary (FILE *_fin) const
 write class data with BINARY format More...
 
void readAscii (FILE *_fin)
 read class data with ASCII format More...
 
void readBinary (FILE *_fin)
 read class data with BINARY format More...
 
void print (std::ostream &_fout) const
 print parameters More...
 

Static Public Member Functions

static void printColumnTitle (std::ostream &_fout, const int _width=20)
 print titles of class members using column style More...
 
static int printTitleWithMeaning (std::ostream &_fout, const int _counter=0, const int _offset=0)
 print column title with meaning (each line for one column) More...
 

Detailed Description

class to store necessary information for using artificial particles

        single    c.m.             members          initial     artificial

mass_backup 0 mass (+) mass (+) -LARGE default is 0.0 / data stored (-/0) status 0 n_members (+) c.m. adr (-) -LARGE position in artificial particle array / data stored (+)

Constructor & Destructor Documentation

◆ ArtificialParticleInformation()

ArtificialParticleInformation::ArtificialParticleInformation ( )
inline

initializer

Member Function Documentation

◆ getData()

PS::F64 ArtificialParticleInformation::getData ( const bool  is_positive) const
inline

get stored data (only in artificial particles)

Parameters
[in]is_positiveindicate whether stored data is positive (true) or negative (false)
Here is the call graph for this function:

◆ getMassBackup()

PS::F64 ArtificialParticleInformation::getMassBackup ( ) const
inline

get backup mass

Here is the call graph for this function:

◆ getStatus()

PS::F64 ArtificialParticleInformation::getStatus ( ) const
inline

get status

Here is the caller graph for this function:

◆ isArtificial()

bool ArtificialParticleInformation::isArtificial ( ) const
inline

return whether the particle type is artificial

Here is the caller graph for this function:

◆ isCM()

bool ArtificialParticleInformation::isCM ( ) const
inline

return whether the particle type is c.m.

Here is the caller graph for this function:

◆ isMember()

bool ArtificialParticleInformation::isMember ( ) const
inline

return whether the particle type is member

Here is the caller graph for this function:

◆ isSingle()

bool ArtificialParticleInformation::isSingle ( ) const
inline

return whether the particle type is single

◆ isUnused()

bool ArtificialParticleInformation::isUnused ( ) const
inline

return whether the particle is unused

◆ print()

void ArtificialParticleInformation::print ( std::ostream &  _fout) const
inline

print parameters

Here is the caller graph for this function:

◆ printColumn()

void ArtificialParticleInformation::printColumn ( std::ostream &  _fout,
const int  _width = 20 
)
inline

print data of class members using column style

print data of class members in one line for column style. Notice no newline is printed at the end

Parameters
[out]_foutstd::ostream output object
[in]_widthprint width (defaulted 20)
Here is the caller graph for this function:

◆ printColumnTitle()

static void ArtificialParticleInformation::printColumnTitle ( std::ostream &  _fout,
const int  _width = 20 
)
inlinestatic

print titles of class members using column style

print titles of class members in one line for column style

Parameters
[out]_foutstd::ostream output object
[in]_widthprint width (defaulted 20)
Here is the caller graph for this function:

◆ printTitleWithMeaning()

static int ArtificialParticleInformation::printTitleWithMeaning ( std::ostream &  _fout,
const int  _counter = 0,
const int  _offset = 0 
)
inlinestatic

print column title with meaning (each line for one column)

Parameters
[out]_foutstd::ostream output object
[in]_counteroffset of the number counter for each line to indicate the column index (defaulted 0)
[in]_offsetthe printing whitespace offset for each line (defaulted 0)
Returns
: the total counter of columns
Here is the caller graph for this function:

◆ readAscii()

void ArtificialParticleInformation::readAscii ( FILE *  _fin)
inline

read class data with ASCII format

Parameters
[in]_finfile IO for read
Here is the caller graph for this function:

◆ readBinary()

void ArtificialParticleInformation::readBinary ( FILE *  _fin)
inline

read class data with BINARY format

Parameters
[in]_finfile IO for read

◆ setMassBackup()

void ArtificialParticleInformation::setMassBackup ( const PS::F64  _mass)
inline

set backup mass

Here is the call graph for this function:

◆ setParticleTypeToArtificial()

void ArtificialParticleInformation::setParticleTypeToArtificial ( const PS::F64  _status = PS::LARGE_FLOAT,
const PS::F64  _mass_backup = 0.0 
)
inline

set particle type to artificial

Parameters
[in]_statusstatus to save

◆ setParticleTypeToCM()

void ArtificialParticleInformation::setParticleTypeToCM ( const PS::F64  _mass_backup = PS::LARGE_FLOAT,
const PS::F64  _status = PS::LARGE_FLOAT 
)
inline

set particle type to artificial

Parameters
[in]_statusstatus to save

◆ setParticleTypeToMember()

void ArtificialParticleInformation::setParticleTypeToMember ( const PS::F64  _mass = PS::LARGE_FLOAT,
const PS::F64  _status = -PS::LARGE_FLOAT 
)
inline

set particle type to member

Parameters
[in]_massmass to backup

◆ setParticleTypeToSingle()

void ArtificialParticleInformation::setParticleTypeToSingle ( )
inline

set particle type to single

Here is the caller graph for this function:

◆ setParticleTypeToUnused()

void ArtificialParticleInformation::setParticleTypeToUnused ( )
inline

set particle type to unused

◆ setStatus()

void ArtificialParticleInformation::setStatus ( const PS::F64  _status)
inline

set status

Here is the call graph for this function:
Here is the caller graph for this function:

◆ storeData()

void ArtificialParticleInformation::storeData ( const PS::F64  _data)
inline

store one data (only in artificial particles)

positive data stored in status, otherwise in mass_backup;

Here is the call graph for this function:

◆ writeAscii()

void ArtificialParticleInformation::writeAscii ( FILE *  _fout) const
inline

write class data with ASCII format

Parameters
[in]_foutfile IO for write
Here is the caller graph for this function:

◆ writeBinary()

void ArtificialParticleInformation::writeBinary ( FILE *  _fin) const
inline

write class data with BINARY format

Parameters
[in]_foutfile IO for write

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