<ahref="composition_8h.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aid="l00001"name="l00001"></a><spanclass="lineno"> 1</span><spanclass="comment">/* ***********************************************************************</span></div>
<divclass="line"><aid="l00007"name="l00007"></a><spanclass="lineno"> 7</span><spanclass="comment">// 4DSSE is free software; you can use it and/or modify</span></div>
<divclass="line"><aid="l00008"name="l00008"></a><spanclass="lineno"> 8</span><spanclass="comment">// it under the terms and restrictions the GNU General Library Public</span></div>
<divclass="line"><aid="l00009"name="l00009"></a><spanclass="lineno"> 9</span><spanclass="comment">// License version 3 (GPLv3) as published by the Free Software Foundation.</span></div>
<divclass="line"><aid="l00011"name="l00011"></a><spanclass="lineno"> 11</span><spanclass="comment">// 4DSSE is distributed in the hope that it will be useful,</span></div>
<divclass="line"><aid="l00012"name="l00012"></a><spanclass="lineno"> 12</span><spanclass="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<divclass="line"><aid="l00013"name="l00013"></a><spanclass="lineno"> 13</span><spanclass="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<divclass="line"><aid="l00014"name="l00014"></a><spanclass="lineno"> 14</span><spanclass="comment">// See the GNU Library General Public License for more details.</span></div>
<divclass="line"><aid="l00016"name="l00016"></a><spanclass="lineno"> 16</span><spanclass="comment">// You should have received a copy of the GNU Library General Public License</span></div>
<divclass="line"><aid="l00017"name="l00017"></a><spanclass="lineno"> 17</span><spanclass="comment">// along with this software; if not, write to the Free Software</span></div>
<divclass="line"><aid="l00018"name="l00018"></a><spanclass="lineno"> 18</span><spanclass="comment">// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</span></div>
<divclass="line"><aid="l00055"name="l00055"></a><spanclass="lineno"> 55</span> os <<<spanclass="stringliteral">"<CanonicalComposition: "</span></div>
<divclass="line"><aid="l00073"name="l00073"></a><spanclass="lineno"> 73</span><spanclass="comment">// Overload the output stream operator for GlobalComposition</span></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a0af981ed1074b26c237cf6cf35f82c9e"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a0af981ed1074b26c237cf6cf35f82c9e">fourdst::composition::Composition::setCompositionMode</a></div><divclass="ttdeci">void setCompositionMode(bool massFracMode)</div><divclass="ttdoc">Sets the composition mode (mass fraction vs. number fraction).</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00694">composition.cpp:694</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a1138c86f7ccd39594601c2ec63ad89e9"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a1138c86f7ccd39594601c2ec63ad89e9">fourdst::composition::Composition::getComposition</a></div><divclass="ttdeci">std::pair< std::unordered_map< std::string, CompositionEntry >, GlobalComposition > getComposition() const</div><divclass="ttdoc">Gets all composition entries and the global composition data.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00630">composition.cpp:630</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a1204a6421205feaaed13937aefa158ba"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a1204a6421205feaaed13937aefa158ba">fourdst::composition::Composition::getSpeciesIndex</a></div><divclass="ttdeci">size_t getSpeciesIndex(const std::string &symbol) const</div><divclass="ttdoc">get the index in the sorted vector representation for a given symbol</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00823">composition.cpp:823</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a17635cd21744c7cf86cb1eb75152c816"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a17635cd21744c7cf86cb1eb75152c816">fourdst::composition::Composition::subset</a></div><divclass="ttdeci">Composition subset(const std::vector< std::string >&symbols, const std::string &method="norm") const</div><divclass="ttdoc">Creates a new Composition object containing a subset of species from this one.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00665">composition.cpp:665</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a1bc2e64f87c12befdc2bc767e7405661"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a1bc2e64f87c12befdc2bc767e7405661">fourdst::composition::Composition::registerSymbol</a></div><divclass="ttdeci">void registerSymbol(const std::string &symbol, bool massFracMode=true)</div><divclass="ttdoc">Registers a new symbol for inclusion in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00233">composition.cpp:233</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a24a3bdeb8e8e55b54ecdee6dcb0d9561"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a24a3bdeb8e8e55b54ecdee6dcb0d9561">fourdst::composition::Composition::operator+</a></div><divclass="ttdeci">Composition operator+(const Composition &other) const</div><divclass="ttdoc">Overloads the + operator to mix two compositions with a 50/50 fraction.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00921">composition.cpp:921</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a2a41242de5d49b005e0b608e79e2f2d9"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a2a41242de5d49b005e0b608e79e2f2d9">fourdst::composition::Composition::getNumberFractionVector</a></div><divclass="ttdeci">std::vector< double > getNumberFractionVector() const</div><divclass="ttdoc">Get a uniform vector representation of the number fractions stored in the composition object sorted s...</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00783">composition.cpp:783</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a36c2525d21cd932065bb2bb30bc57fb4"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a36c2525d21cd932065bb2bb30bc57fb4">fourdst::composition::Composition::operator<<</a></div><divclass="ttdeci">friend std::ostream & operator<<(std::ostream &os, const Composition &composition)</div><divclass="ttdoc">Overloaded output stream operator for Composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00937">composition.cpp:937</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a3aead72892606725a4149a5f65bd31ec"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a3aead72892606725a4149a5f65bd31ec">fourdst::composition::Composition::mix</a></div><divclass="ttdeci">Composition mix(const Composition &other, double fraction) const</div><divclass="ttdoc">Mixes this composition with another to produce a new composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00498">composition.cpp:498</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a3dee7b5e1f54920de9eab99f95a516ec"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a3dee7b5e1f54920de9eab99f95a516ec">fourdst::composition::Composition::getRegisteredSpecies</a></div><divclass="ttdeci">std::set< fourdst::atomic::Species > getRegisteredSpecies() const</div><divclass="ttdoc">Get a set of all species that are registered in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00280">composition.cpp:280</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a461ab4e9cb5975cf865db5f16f03ddfe"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a461ab4e9cb5975cf865db5f16f03ddfe">fourdst::composition::Composition::finalizeNumberFracMode</a></div><divclass="ttdeci">bool finalizeNumberFracMode(bool norm)</div><divclass="ttdoc">Finalizes the composition in number fraction mode.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00464">composition.cpp:464</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a493224656aa3ade68389250720ef09af"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a493224656aa3ade68389250720ef09af">fourdst::composition::Composition::setMassFraction</a></div><divclass="ttdeci">double setMassFraction(const std::string &symbol, const double &mass_fraction)</div><divclass="ttdoc">Sets the mass fraction for a given symbol.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00312">composition.cpp:312</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a4a36c8d22ce61023e7bea1d9417577d4"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a4a36c8d22ce61023e7bea1d9417577d4">fourdst::composition::Composition::m_meanParticleMass</a></div><divclass="ttdeci">double m_meanParticleMass</div><divclass="ttdoc">The mean particle mass of the composition (\sum_{i} \frac{n_i}{m_i}. where n_i is the number fraction...</div><divclass="ttdef"><b>Definition</b><ahref="#l00266">composition.h:266</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a4ce00f73cc133bb1bac2b030b93ab480"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a4ce00f73cc133bb1bac2b030b93ab480">fourdst::composition::Composition::registerSpecies</a></div><divclass="ttdeci">void registerSpecies(const fourdst::atomic::Species &species, bool massFracMode=true)</div><divclass="ttdoc">Registers a new species by extracting its symbol.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00266">composition.cpp:266</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a4ec1e23cfecef764cb831171fed62fc2"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a4ec1e23cfecef764cb831171fed62fc2">fourdst::composition::Composition::operator=</a></div><divclass="ttdeci">Composition & operator=(Composition const &other)</div><divclass="ttdoc">Assignment operator.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00219">composition.cpp:219</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a66401fed7054172e9b1a2687e5cc8eff"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a66401fed7054172e9b1a2687e5cc8eff">fourdst::composition::Composition::getMeanParticleMass</a></div><divclass="ttdeci">double getMeanParticleMass() const</div><divclass="ttdoc">Compute the mean particle mass of the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00638">composition.cpp:638</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a671f1ee8be00f4ff8c1d94fabb382380"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a671f1ee8be00f4ff8c1d94fabb382380">fourdst::composition::Composition::m_massFracMode</a></div><divclass="ttdeci">bool m_massFracMode</div><divclass="ttdoc">True if mass fraction mode, false if number fraction mode.</div><divclass="ttdef"><b>Definition</b><ahref="#l00267">composition.h:267</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a67a2ed844f3aee3d9cc1a3cb996eb56f"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a67a2ed844f3aee3d9cc1a3cb996eb56f">fourdst::composition::Composition::getMolarAbundance</a></div><divclass="ttdeci">double getMolarAbundance(const std::string &symbol) const</div><divclass="ttdoc">Gets the molar abundance (X_i / A_i) for a given symbol.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00596">composition.cpp:596</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a695d37ec6cde63d86a20df1e9f26af19"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a695d37ec6cde63d86a20df1e9f26af19">fourdst::composition::Composition::m_logManager</a></div><divclass="ttdeci">fourdst::logging::LogManager & m_logManager</div><divclass="ttdef"><b>Definition</b><ahref="#l00261">composition.h:261</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a72a368f27094b03fdd9896844e075c94"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a72a368f27094b03fdd9896844e075c94">fourdst::composition::Composition::hasSymbol</a></div><divclass="ttdeci">bool hasSymbol(const std::string &symbol) const</div><divclass="ttdoc">Checks if a symbol is registered in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00902">composition.cpp:902</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a72d063a74a9d2197065884a2cea57a14"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a72d063a74a9d2197065884a2cea57a14">fourdst::composition::Composition::finalize</a></div><divclass="ttdeci">bool finalize(bool norm=false)</div><divclass="ttdoc">Finalizes the composition, making it ready for querying.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00414">composition.cpp:414</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a7731df9b30f8c8f13231f7e1a17b105c"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a7731df9b30f8c8f13231f7e1a17b105c">fourdst::composition::Composition::getNumberFraction</a></div><divclass="ttdeci">std::unordered_map< std::string, double > getNumberFraction() const</div><divclass="ttdoc">Gets the number fractions of all species in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00588">composition.cpp:588</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a7d4d748f3ee25e68751fb143717ed080"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a7d4d748f3ee25e68751fb143717ed080">fourdst::composition::Composition::setNumberFraction</a></div><divclass="ttdeci">double setNumberFraction(const std::string &symbol, const double &number_fraction)</div><divclass="ttdoc">Sets the number fraction for a given symbol.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00363">composition.cpp:363</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a84c7b72c2aee46b94492d404855dd3e0"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a84c7b72c2aee46b94492d404855dd3e0">fourdst::composition::Composition::getRegisteredSymbols</a></div><divclass="ttdeci">std::set< std::string > getRegisteredSymbols() const</div><divclass="ttdoc">Gets the registered symbols.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00276">composition.cpp:276</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a84d62b971bee83d944d2792c6850bc0b"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a84d62b971bee83d944d2792c6850bc0b">fourdst::composition::Composition::getMolarAbundanceVector</a></div><divclass="ttdeci">std::vector< double > getMolarAbundanceVector() const</div><divclass="ttdoc">Get a uniform vector representation of the molar abundances stored in the composition object sorted s...</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00803">composition.cpp:803</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a86982685c34db4a8f079ddafc25c594e"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a86982685c34db4a8f079ddafc25c594e">fourdst::composition::Composition::validateComposition</a></div><divclass="ttdeci">void validateComposition(const std::vector< double >&fractions) const</div><divclass="ttdoc">Validates the given fractions, throwing an exception on failure.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00288">composition.cpp:288</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a869dbae3db9d09c57b2df56a813a55fb"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a869dbae3db9d09c57b2df56a813a55fb">fourdst::composition::Composition::finalizeMassFracMode</a></div><divclass="ttdeci">bool finalizeMassFracMode(bool norm)</div><divclass="ttdoc">Finalizes the composition in mass fraction mode.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00427">composition.cpp:427</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a8a8096863464338bc6e3c5124407dca4"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a8a8096863464338bc6e3c5124407dca4">fourdst::composition::Composition::m_config</a></div><divclass="ttdeci">fourdst::config::Config & m_config</div><divclass="ttdef"><b>Definition</b><ahref="#l00260">composition.h:260</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a8fdac26e6298008aaeaa5b15f7fe244f"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a8fdac26e6298008aaeaa5b15f7fe244f">fourdst::composition::Composition::isValidSymbol</a></div><divclass="ttdeci">static bool isValidSymbol(const std::string &symbol)</div><divclass="ttdoc">Checks if the given symbol is valid by checking against the global species database.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00308">composition.cpp:308</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_a98199f435cb553f5cf4f8e520fdb8a7a"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#a98199f435cb553f5cf4f8e520fdb8a7a">fourdst::composition::Composition::getMeanAtomicNumber</a></div><divclass="ttdeci">double getMeanAtomicNumber() const</div><divclass="ttdoc">Compute the mean atomic number of the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00646">composition.cpp:646</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_aa00cbc0933d8a22bb900ac21a338e5ac"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#aa00cbc0933d8a22bb900ac21a338e5ac">fourdst::composition::Composition::m_finalized</a></div><divclass="ttdeci">bool m_finalized</div><divclass="ttdoc">True if the composition is finalized.</div><divclass="ttdef"><b>Definition</b><ahref="#l00264">composition.h:264</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_aa534a01f24074cc9edd7f41df228eb50"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#aa534a01f24074cc9edd7f41df228eb50">fourdst::composition::Composition::getSpeciesAtIndex</a></div><divclass="ttdeci">atomic::Species getSpeciesAtIndex(size_t index) const</div><divclass="ttdoc">Get the species at a given index in the sorted vector representation.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00873">composition.cpp:873</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_ab1701644ff1c83c220dc04eb58d1621b"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#ab1701644ff1c83c220dc04eb58d1621b">fourdst::composition::Composition::begin</a></div><divclass="ttdeci">auto begin()</div><divclass="ttdoc">Returns an iterator to the beginning of the composition map.</div><divclass="ttdef"><b>Definition</b><ahref="#l00821">composition.h:821</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_ac75dbc8377556c835455991c7c7fe206"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#ac75dbc8377556c835455991c7c7fe206">fourdst::composition::Composition::getCanonicalComposition</a></div><divclass="ttdeci">CanonicalComposition getCanonicalComposition(bool harsh=false) const</div><divclass="ttdoc">Gets the current canonical composition (X, Y, Z).</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00715">composition.cpp:715</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_acb08478f7032ecc13cb02283a18187e9"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#acb08478f7032ecc13cb02283a18187e9">fourdst::composition::Composition::contains</a></div><divclass="ttdeci">bool contains(const fourdst::atomic::Species &isotope) const</div><divclass="ttdoc">Checks if a given isotope is present in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00906">composition.cpp:906</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_acdbdf980297580e885ce3f124164315f"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#acdbdf980297580e885ce3f124164315f">fourdst::composition::Composition::getMassFractionVector</a></div><divclass="ttdeci">std::vector< double > getMassFractionVector() const</div><divclass="ttdoc">Get a uniform vector representation of the mass fraction stored in the composition object sorted such...</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00762">composition.cpp:762</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_ad20bd541dd7c45274a2e586e6a0519a7"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#ad20bd541dd7c45274a2e586e6a0519a7">fourdst::composition::Composition::getMassFraction</a></div><divclass="ttdeci">std::unordered_map< std::string, double > getMassFraction() const</div><divclass="ttdoc">Gets the mass fractions of all species in the composition.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00559">composition.cpp:559</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_addae4484da7d5072ab66a721dbe04ced"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#addae4484da7d5072ab66a721dbe04ced">fourdst::composition::Composition::m_specificNumberDensity</a></div><divclass="ttdeci">double m_specificNumberDensity</div><divclass="ttdoc">The specific number density of the composition (\sum_{i} X_i m_i. Where X_i is the number fraction of...</div><divclass="ttdef"><b>Definition</b><ahref="#l00265">composition.h:265</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_addf03ba8b988970d341884d487aa94d5"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#addf03ba8b988970d341884d487aa94d5">fourdst::composition::Composition::isValidComposition</a></div><divclass="ttdeci">bool isValidComposition(const std::vector< double >&fractions) const</div><divclass="ttdoc">Checks if the given fractions are valid (sum to ~1.0).</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00295">composition.cpp:295</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_adeaf6f1213e78cb1fe8a8317f0a8adc2"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#adeaf6f1213e78cb1fe8a8317f0a8adc2">fourdst::composition::Composition::end</a></div><divclass="ttdeci">auto end()</div><divclass="ttdoc">Returns an iterator to the end of the composition map.</div><divclass="ttdef"><b>Definition</b><ahref="#l00837">composition.h:837</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_adf41a833e8b704daf4f581fca5c8cb9b"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#adf41a833e8b704daf4f581fca5c8cb9b">fourdst::composition::Composition::begin</a></div><divclass="ttdeci">auto begin() const</div><divclass="ttdoc">Returns a const iterator to the beginning of the composition map.</div><divclass="ttdef"><b>Definition</b><ahref="#l00829">composition.h:829</a></div></div>
<divclass="ttc"id="aclassfourdst_1_1composition_1_1_composition_html_aed2f5676f8f742199f01e4d1e9664bdd"><divclass="ttname"><ahref="classfourdst_1_1composition_1_1_composition.html#aed2f5676f8f742199f01e4d1e9664bdd">fourdst::composition::Composition::end</a></div><divclass="ttdeci">auto end() const</div><divclass="ttdoc">Returns a const iterator to the end of the composition map.</div><divclass="ttdef"><b>Definition</b><ahref="#l00845">composition.h:845</a></div></div>
<divclass="ttc"id="astructfourdst_1_1atomic_1_1_species_html"><divclass="ttname"><ahref="structfourdst_1_1atomic_1_1_species.html">fourdst::atomic::Species</a></div><divclass="ttdoc">Represents an atomic species (isotope) with its fundamental physical properties.</div><divclass="ttdef"><b>Definition</b><ahref="atomic_species_8h_source.html#l00051">atomicSpecies.h:51</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_canonical_composition_html"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_canonical_composition.html">fourdst::composition::CanonicalComposition</a></div><divclass="ttdoc">Represents the canonical (X, Y, Z) composition of stellar material.</div><divclass="ttdef"><b>Definition</b><ahref="#l00043">composition.h:43</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_canonical_composition_html_a6e447cb601af6bcbd09e290aef759672"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_canonical_composition.html#a6e447cb601af6bcbd09e290aef759672">fourdst::composition::CanonicalComposition::operator<<</a></div><divclass="ttdeci">friend std::ostream & operator<<(std::ostream &os, const CanonicalComposition &composition)</div><divclass="ttdoc">Overloads the stream insertion operator for easy printing.</div><divclass="ttdef"><b>Definition</b><ahref="#l00054">composition.h:54</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_canonical_composition_html_a93927bfccc5d2b3906565d092ed4f7f4"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_canonical_composition.html#a93927bfccc5d2b3906565d092ed4f7f4">fourdst::composition::CanonicalComposition::Y</a></div><divclass="ttdeci">double Y</div><divclass="ttdoc">Mass fraction of Helium.</div><divclass="ttdef"><b>Definition</b><ahref="#l00045">composition.h:45</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_canonical_composition_html_abe5b01574242f8eaabd00c3d653291f7"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_canonical_composition.html#abe5b01574242f8eaabd00c3d653291f7">fourdst::composition::CanonicalComposition::X</a></div><divclass="ttdeci">double X</div><divclass="ttdoc">Mass fraction of Hydrogen.</div><divclass="ttdef"><b>Definition</b><ahref="#l00044">composition.h:44</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_canonical_composition_html_ae1981f5ddd36abd17a4a69fa1f43de18"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_canonical_composition.html#ae1981f5ddd36abd17a4a69fa1f43de18">fourdst::composition::CanonicalComposition::Z</a></div><divclass="ttdeci">double Z</div><divclass="ttdoc">Mass fraction of Metals.</div><divclass="ttdef"><b>Definition</b><ahref="#l00046">composition.h:46</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a0498d707d8ea78be39283786c10657ef"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a0498d707d8ea78be39283786c10657ef">fourdst::composition::CompositionEntry::m_relAbundance</a></div><divclass="ttdeci">double m_relAbundance</div><divclass="ttdoc">The relative abundance, used internally for conversions. For mass fraction mode, this is X_i / A_i; f...</div><divclass="ttdef"><b>Definition</b><ahref="#l00090">composition.h:90</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a14f12b8b0178df2e32e2023bd4564ddc"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a14f12b8b0178df2e32e2023bd4564ddc">fourdst::composition::CompositionEntry::getMassFracMode</a></div><divclass="ttdeci">bool getMassFracMode() const</div><divclass="ttdoc">Gets the mode of the composition entry.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00172">composition.cpp:172</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a1cccb94c150dd1dcde860f55fbeaf2bd"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a1cccb94c150dd1dcde860f55fbeaf2bd">fourdst::composition::CompositionEntry::CompositionEntry</a></div><divclass="ttdeci">CompositionEntry()</div><divclass="ttdoc">Default constructor. Initializes a default entry (H-1), but in an uninitialized state.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00063">composition.cpp:63</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a1e860519bea86793413ed67c76d18c8b"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a1e860519bea86793413ed67c76d18c8b">fourdst::composition::CompositionEntry::m_massFracMode</a></div><divclass="ttdeci">bool m_massFracMode</div><divclass="ttdoc">The mode of the composition entry. True if mass fraction, false if number fraction.</div><divclass="ttdef"><b>Definition</b><ahref="#l00086">composition.h:86</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a2b5e245f7dabb11076efdbe1ed516d9f"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a2b5e245f7dabb11076efdbe1ed516d9f">fourdst::composition::CompositionEntry::m_numberFraction</a></div><divclass="ttdeci">double m_numberFraction</div><divclass="ttdoc">The number fraction (mole fraction) of the species. Valid only if m_massFracMode is false.</div><divclass="ttdef"><b>Definition</b><ahref="#l00089">composition.h:89</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a2d55492d285068d4a64db5602dfb1c78"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a2d55492d285068d4a64db5602dfb1c78">fourdst::composition::CompositionEntry::number_fraction</a></div><divclass="ttdeci">double number_fraction() const</div><divclass="ttdoc">Gets the number fraction of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00114">composition.cpp:114</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a391e899874cd7ef299a3ae1f64c016d2"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a391e899874cd7ef299a3ae1f64c016d2">fourdst::composition::CompositionEntry::m_initialized</a></div><divclass="ttdeci">bool m_initialized</div><divclass="ttdoc">True if the composition entry has been initialized with a valid species.</div><divclass="ttdef"><b>Definition</b><ahref="#l00092">composition.h:92</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a3fb3f63a4e5675c6fefb662a8e3e7aa3"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a3fb3f63a4e5675c6fefb662a8e3e7aa3">fourdst::composition::CompositionEntry::setMassFracMode</a></div><divclass="ttdeci">bool setMassFracMode(double meanMolarMass)</div><divclass="ttdoc">Switches the mode to mass fraction mode.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00154">composition.cpp:154</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a4d6df43e098e7e2e2d94ff7fb76cb4c2"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a4d6df43e098e7e2e2d94ff7fb76cb4c2">fourdst::composition::CompositionEntry::setMassFraction</a></div><divclass="ttdeci">void setMassFraction(double mass_fraction)</div><divclass="ttdoc">Sets the mass fraction of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00138">composition.cpp:138</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a50d18b4c27611fa9314dd756af54c2f0"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a50d18b4c27611fa9314dd756af54c2f0">fourdst::composition::CompositionEntry::symbol</a></div><divclass="ttdeci">std::string symbol() const</div><divclass="ttdoc">Gets the chemical symbol of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00093">composition.cpp:93</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a5885a0e33687bceb15b225a00163e9d3"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a5885a0e33687bceb15b225a00163e9d3">fourdst::composition::CompositionEntry::setSpecies</a></div><divclass="ttdeci">void setSpecies(const std::string &symbol)</div><divclass="ttdoc">Sets the species for the composition entry. This can only be done once.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00081">composition.cpp:81</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a66cb086719d7f654869bd7b0cee87ffc"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a66cb086719d7f654869bd7b0cee87ffc">fourdst::composition::CompositionEntry::mass_fraction</a></div><divclass="ttdeci">double mass_fraction() const</div><divclass="ttdoc">Gets the mass fraction of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00097">composition.cpp:97</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a743042d1998875851150d789817f5473"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a743042d1998875851150d789817f5473">fourdst::composition::CompositionEntry::setNumberFracMode</a></div><divclass="ttdeci">bool setNumberFracMode(double totalMoles)</div><divclass="ttdoc">Switches the mode to number fraction mode.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00163">composition.cpp:163</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_a9ec47cf4b3399128d3836c1b24b031b0"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#a9ec47cf4b3399128d3836c1b24b031b0">fourdst::composition::CompositionEntry::setNumberFraction</a></div><divclass="ttdeci">void setNumberFraction(double number_fraction)</div><divclass="ttdoc">Sets the number fraction of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00146">composition.cpp:146</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_ab6619d23e111905d1e3ab16ee822d96c"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#ab6619d23e111905d1e3ab16ee822d96c">fourdst::composition::CompositionEntry::rel_abundance</a></div><divclass="ttdeci">double rel_abundance() const</div><divclass="ttdoc">Gets the relative abundance of the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00130">composition.cpp:130</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_ac273debdba6a1b3ac0f11698c399d38e"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#ac273debdba6a1b3ac0f11698c399d38e">fourdst::composition::CompositionEntry::m_symbol</a></div><divclass="ttdeci">std::string m_symbol</div><divclass="ttdoc">The chemical symbol of the species (e.g., "H-1", "Fe-56").</div><divclass="ttdef"><b>Definition</b><ahref="#l00084">composition.h:84</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_adc20165bf94e18eea3458003025579ac"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#adc20165bf94e18eea3458003025579ac">fourdst::composition::CompositionEntry::m_massFraction</a></div><divclass="ttdeci">double m_massFraction</div><divclass="ttdoc">The mass fraction of the species. Valid only if m_massFracMode is true.</div><divclass="ttdef"><b>Definition</b><ahref="#l00088">composition.h:88</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_ae7a6a113fc5914248eff5629716d6eb2"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#ae7a6a113fc5914248eff5629716d6eb2">fourdst::composition::CompositionEntry::operator<<</a></div><divclass="ttdeci">friend std::ostream & operator<<(std::ostream &os, const CompositionEntry &entry)</div><divclass="ttdoc">Overloaded output stream operator for CompositionEntry.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00932">composition.cpp:932</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_composition_entry_html_af4f8d292d18755670a914072e2260dfb"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_composition_entry.html#af4f8d292d18755670a914072e2260dfb">fourdst::composition::CompositionEntry::isotope</a></div><divclass="ttdeci">atomic::Species isotope() const</div><divclass="ttdoc">Gets the isotope data for the species.</div><divclass="ttdef"><b>Definition</b><ahref="composition_8cpp_source.html#l00134">composition.cpp:134</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_global_composition_html"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_global_composition.html">fourdst::composition::GlobalComposition</a></div><divclass="ttdoc">Represents global properties of a finalized composition.</div><divclass="ttdef"><b>Definition</b><ahref="#l00069">composition.h:69</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_global_composition_html_a0df6ecfe28d13cbffd0abcbfec9aee41"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_global_composition.html#a0df6ecfe28d13cbffd0abcbfec9aee41">fourdst::composition::GlobalComposition::specificNumberDensity</a></div><divclass="ttdeci">double specificNumberDensity</div><divclass="ttdoc">The specific number density (moles per unit mass, sum of X_i/M_i), where X_i is mass fraction and M_i...</div><divclass="ttdef"><b>Definition</b><ahref="#l00070">composition.h:70</a></div></div>
<divclass="ttc"id="astructfourdst_1_1composition_1_1_global_composition_html_a9c35810d965841a755da9ce4644a2f1b"><divclass="ttname"><ahref="structfourdst_1_1composition_1_1_global_composition.html#a9c35810d965841a755da9ce4644a2f1b">fourdst::composition::GlobalComposition::meanParticleMass</a></div><divclass="ttdeci">double meanParticleMass</div><divclass="ttdoc">The mean mass per particle (inverse of specific number density). Units: g/mol.</div><divclass="ttdef"><b>Definition</b><ahref="#l00071">composition.h:71</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<divid="nav-path"class="navpath"><!-- id is needed for treeview function! -->
<liclass="footer">Generated by <ahref="https://www.doxygen.org/index.html"><imgclass="footer"src="doxygen.svg"width="104"height="31"alt="doxygen"/></a> 1.13.2 </li>