#include <CompManager.h>

Class for mixing up sweet materials. More...

Public Types

typedef std::map< std::string, int, ScaleUtils::IO::CaseInsensitiveLessThan > CiMap_t
 case insensitive map type More...
 

Public Member Functions

 CompManager (const ScaleData::StdComp &stdComp)
 create a new CompManager More...
 
virtual ~CompManager ()
 destroy More...
 
bool isAutomatic (const std::string &name, bool *isElement=nullptr) const
 
bool isEle (const std::string &name) const
 
bool isNuc (const std::string &name) const
 
std::string addPart (const std::string &name, const std::string &part, double value)
 
std::string initComp (const std::string &name, const std::string &inputTypeString, const std::string &inputScaleString, bool inputNorm=false)
 
std::string createEle (const std::string &elementName)
 
std::string finalizeComp (const std::string &name)
 
bool isFinalizedComp (const std::string &name) const
 
double getMolarMass (int id) const
 
std::vector< double > getMolarMasses (const std::vector< int > &id) const
 
double getMolarMass (const std::string &name) const
 
int getCompIndex (const std::string &name) const
 
CompContainergetComp (const std::string &name) const
 
std::string getCompName (int index) const
 
std::string toString (const std::string &name, int indent=0) const
 
std::string getNumMap (const std::string &name, std::map< int, double > &map_out) const
 
std::string getWtMap (const std::string &name, std::map< int, double > &map_out) const
 
std::string getConcMap (const std::string &name, double density, std::map< int, double > &map_out) const
 
std::string getElementalAbundances (int id, std::vector< int > &ids_out, std::vector< double > &nums_out) const
 
int getNumComps () const
 
std::string getDC (DataContainer *dcCompositionList, bool flatten=true) const
 
double getReferenceDensity (const std::string &name) const
 
void setReferenceDensity (const std::string &name, double density)
 
bool renameComp (const std::string &oldName, const std::string &newName)
 
bool removeComp (const std::string &name)
 

Static Public Member Functions

static std::string printDC (DataContainer *dcCompositionList)
 

Protected Types

typedef ScaleUtils::Math::CompositionMethods cm
 

Protected Member Functions

std::string checkKnown (const std::string &part, int &id, bool &ele) const
 

Protected Attributes

std::map< int, CompContainer * > b_comps
 map of elements and mixture ids to child mixtures More...
 
CiMap_t b_id_lookup
 
const ScaleData::StdComp & b_lib
 std comp library used for molar masses and isotopic content of elements More...
 

Detailed Description

Class for mixing up sweet materials.

Examples:
tstCompManager.cpp.

Member Typedef Documentation

typedef std::map<std::string, int, ScaleUtils::IO::CaseInsensitiveLessThan> CiMap_t

case insensitive map type

typedef ScaleUtils::Math::CompositionMethods cm
protected

Constructor & Destructor Documentation

CompManager ( const ScaleData::StdComp &  stdComp)

create a new CompManager

~CompManager ( )
virtual

destroy

References CompManager::b_comps.

Member Function Documentation

std::string checkKnown ( const std::string &  part,
int &  id,
bool &  ele 
) const
protected
bool isAutomatic ( const std::string &  name,
bool *  isElement = nullptr 
) const
bool isEle ( const std::string &  name) const
bool isNuc ( const std::string &  name) const
std::string addPart ( const std::string &  name,
const std::string &  part,
double  value 
)
std::string initComp ( const std::string &  name,
const std::string &  inputTypeString,
const std::string &  inputScaleString,
bool  inputNorm = false 
)
std::string finalizeComp ( const std::string &  name)
bool isFinalizedComp ( const std::string &  name) const
std::vector< double > getMolarMasses ( const std::vector< int > &  id) const
double getMolarMass ( const std::string &  name) const
std::string getCompName ( int  index) const
std::string toString ( const std::string &  name,
int  indent = 0 
) const
std::string getNumMap ( const std::string &  name,
std::map< int, double > &  map_out 
) const
std::string getWtMap ( const std::string &  name,
std::map< int, double > &  map_out 
) const
std::string getConcMap ( const std::string &  name,
double  density,
std::map< int, double > &  map_out 
) const
std::string getElementalAbundances ( int  id,
std::vector< int > &  ids_out,
std::vector< double > &  nums_out 
) const

References CompManager::b_lib.

Referenced by CompManager::createEle().

int getNumComps ( ) const
std::string getDC ( DataContainer *  dcCompositionList,
bool  flatten = true 
) const
std::string printDC ( DataContainer *  dcCompositionList)
static
double getReferenceDensity ( const std::string &  name) const
void setReferenceDensity ( const std::string &  name,
double  density 
)
bool renameComp ( const std::string &  oldName,
const std::string &  newName 
)
bool removeComp ( const std::string &  name)

Member Data Documentation

const ScaleData::StdComp& b_lib
protected

std comp library used for molar masses and isotopic content of elements

Referenced by CompManager::checkKnown(), CompManager::getElementalAbundances(), and CompManager::getMolarMass().


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