15#include "SpeciesBase.h"
40 const std::string &
base()
const {
return _base; }
42 const std::string &
modifier()
const {
return _modifier; }
44 unsigned int subscript()
const {
return _subscript; }
46 virtual std::string to_string()
const override;
55 const std::string _base;
57 std::string _modifier;
59 const unsigned int _subscript;
61 std::string setBase();
66 std::string setModifier();
70 unsigned int setSubscript();
75 void setMass()
override;
79 void setCharge()
override;
81 void setLatexName()
override;
83 virtual void setNeutralGroundState()
override;
87struct std::hash<prism::SubSpecies>
const std::string & name() const
Getter method for the name of species.
Definition SpeciesBase.h:33
SpeciesBase(const std::string &name)
Definition SpeciesBase.C:21
The parts with a Species can be brokenup into Eg Speices: NH3, SubSpecies: [N, H3].
Definition SubSpecies.h:26
bool operator==(const SubSpecies &other) const
Comparison operator checks if the sub species have the same member variables.
Definition SubSpecies.C:308
SubSpecies(const std::string &name)
Creates a simple SubSpecies object.
Definition SubSpecies.C:24
unsigned int subscript() const
getter method for the subscript on the subspecies
Definition SubSpecies.h:44
bool operator!=(const SubSpecies &other) const
Comparison for checking whether or not the two are not equal.
Definition SubSpecies.C:336
const std::string & modifier() const
getter method for the modifier std::string
Definition SubSpecies.h:42
const std::string & base() const
getter method for the elemental base of the species
Definition SubSpecies.h:40
size_t operator()(const prism::SubSpecies &obj) const
Custom override for the hash method Hash is only based on the name std::string.