<metaname="description"content="PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.">
<!-- iframe showing the search results (closed by default) -->
<divid="MSearchResultsWindow">
<iframesrc="javascript:void(0)"frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<divclass="header">
<divclass="headertitle">
<divclass="title">property.hpp</div></div>
</div><!--header-->
<divclass="contents">
<ahref="property_8hpp.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<divclass="line"><aname="l00002"></a><spanclass="lineno"> 2</span> <spanclass="comment"> O C enter of</span></div>
<divclass="line"><aname="l00003"></a><spanclass="lineno"> 3</span> <spanclass="comment"> O O E ngineering and</span></div>
<divclass="line"><aname="l00004"></a><spanclass="lineno"> 4</span> <spanclass="comment"> O O M ultiscale modeling of</span></div>
<divclass="line"><aname="l00005"></a><spanclass="lineno"> 5</span> <spanclass="comment"> OOOOOOO F luid flow </span></div>
<divclass="line"><aname="l00011"></a><spanclass="lineno"> 11</span> <spanclass="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<divclass="line"><aname="l00012"></a><spanclass="lineno"> 12</span> <spanclass="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<divclass="line"><aname="l00013"></a><spanclass="lineno"> 13</span> <spanclass="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<divclass="line"><aname="l00015"></a><spanclass="lineno"> 15</span> <spanclass="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<divclass="line"><aname="l00016"></a><spanclass="lineno"> 16</span> <spanclass="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<divclass="line"><aname="l00017"></a><spanclass="lineno"> 17</span> <spanclass="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<divclass="line"><aname="l00134"></a><spanclass="lineno"><aclass="line"href="classpFlow_1_1property.html#afe043c12ccbdcff21ec098dce9704ffc"> 134</a></span> <spanclass="keyword">inline</span><spanclass="keywordtype">bool</span><aclass="code"href="classpFlow_1_1property.html#afe043c12ccbdcff21ec098dce9704ffc">material</a>(<aclass="code"href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i, <aclass="code"href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&<aclass="code"href="classpFlow_1_1iEntry.html#a73572f70de721e7793f801ae26c5a6c5">name</a>)<spanclass="keyword">const</span></div>
<divclass="line"><aname="l00156"></a><spanclass="lineno"><aclass="line"href="classpFlow_1_1property.html#a2e4edb9e315736953f3c0ca26777ebbf"> 156</a></span> <spanclass="keyword">inline</span><spanclass="keywordtype">bool</span><aclass="code"href="classpFlow_1_1property.html#a2e4edb9e315736953f3c0ca26777ebbf">density</a>(<aclass="code"href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i, <aclass="code"href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a>& rho)<spanclass="keyword">const</span></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a1d743ba937653e990ae449b3e1acd22a"><divclass="ttname"><ahref="classpFlow_1_1property.html#a1d743ba937653e990ae449b3e1acd22a">pFlow::property::densities_</a></div><divclass="ttdeci">realVector densities_</div><divclass="ttdoc">list of density of materials</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00049">property.hpp:49</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a81429b86cbb3fb83ee6752cc2308c094"><divclass="ttname"><ahref="classpFlow_1_1property.html#a81429b86cbb3fb83ee6752cc2308c094">pFlow::property::makeNameIndex</a></div><divclass="ttdeci">bool makeNameIndex()</div><divclass="ttdoc">creates a mapp</div><divclass="ttdef"><b>Definition:</b><ahref="property_8cpp_source.html#l00063">property.cpp:63</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_af88fce6a49f1871a485ece4bb1772a55"><divclass="ttname"><ahref="classpFlow_1_1property.html#af88fce6a49f1871a485ece4bb1772a55">pFlow::property::readDictionary</a></div><divclass="ttdeci">bool readDictionary()</div><divclass="ttdoc">read from dict</div><divclass="ttdef"><b>Definition:</b><ahref="property_8cpp_source.html#l00024">property.cpp:24</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a437403f7d71404549fdfc4fc1825cff2"><divclass="ttname"><ahref="classpFlow_1_1property.html#a437403f7d71404549fdfc4fc1825cff2">pFlow::property::materials_</a></div><divclass="ttdeci">wordVector materials_</div><divclass="ttdoc">list of name of materials</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00046">property.hpp:46</a></div></div>
<divclass="ttc"id="anamespacepFlow_html_abd01e8e67e3d94cab04ecaaf4f85ac1b"><divclass="ttname"><ahref="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">pFlow::uint32</a></div><divclass="ttdeci">unsigned int uint32</div><divclass="ttdef"><b>Definition:</b><ahref="builtinTypes_8hpp_source.html#l00056">builtinTypes.hpp:56</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a67ec7c434ccc08a62c8d355d868c79fd"><divclass="ttname"><ahref="classpFlow_1_1property.html#a67ec7c434ccc08a62c8d355d868c79fd">pFlow::property::densities</a></div><divclass="ttdeci">const auto & densities() const</div><divclass="ttdoc">Return the list of densities.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00122">property.hpp:122</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a367d7f61db881cda950acff2dc2f7fe7"><divclass="ttname"><ahref="classpFlow_1_1property.html#a367d7f61db881cda950acff2dc2f7fe7">pFlow::property::property</a></div><divclass="ttdeci">property(const word &fileName, repository *owner=nullptr)</div><divclass="ttdef"><b>Definition:</b><ahref="property_8cpp_source.html#l00122">property.cpp:122</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a03ed41e9229fa7fb6f7103af84f1ddaf"><divclass="ttname"><ahref="classpFlow_1_1property.html#a03ed41e9229fa7fb6f7103af84f1ddaf">pFlow::property::material</a></div><divclass="ttdeci">const word & material(uint32 i) const</div><divclass="ttdoc">Return the material name of material i.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00127">property.hpp:127</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1fileSystem_html"><divclass="ttname"><ahref="classpFlow_1_1fileSystem.html">pFlow::fileSystem</a></div><divclass="ttdoc">Manages file pathes, manupulate and combines them.</div><divclass="ttdef"><b>Definition:</b><ahref="fileSystem_8hpp_source.html#l00071">fileSystem.hpp:71</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_aaeda027258dc1f7b8d1af3a482a2367a"><divclass="ttname"><ahref="classpFlow_1_1property.html#aaeda027258dc1f7b8d1af3a482a2367a">pFlow::property::materials</a></div><divclass="ttdeci">const auto & materials() const</div><divclass="ttdoc">Return list of material names.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00117">property.hpp:117</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a07df12e433bb81d9fbab91604376e291"><divclass="ttname"><ahref="classpFlow_1_1property.html#a07df12e433bb81d9fbab91604376e291">pFlow::property::writeDictionary</a></div><divclass="ttdeci">bool writeDictionary()</div><divclass="ttdoc">write to dict</div><divclass="ttdef"><b>Definition:</b><ahref="property_8cpp_source.html#l00043">property.cpp:43</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_afe043c12ccbdcff21ec098dce9704ffc"><divclass="ttname"><ahref="classpFlow_1_1property.html#afe043c12ccbdcff21ec098dce9704ffc">pFlow::property::material</a></div><divclass="ttdeci">bool material(uint32 i, word &name) const</div><divclass="ttdoc">Get the name of material i.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00134">property.hpp:134</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a1092ec0af64496d0215071cce3f90c41"><divclass="ttname"><ahref="classpFlow_1_1property.html#a1092ec0af64496d0215071cce3f90c41">pFlow::property::nameIndex_</a></div><divclass="ttdeci">wordHashMap< uint32 > nameIndex_</div><divclass="ttdoc">rapid mapping from name to index</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00052">property.hpp:52</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_ad53527edc63114fb6bebe409db8dedbf"><divclass="ttname"><ahref="classpFlow_1_1property.html#ad53527edc63114fb6bebe409db8dedbf">pFlow::property::nameToIndex</a></div><divclass="ttdeci">bool nameToIndex(const word &name, uint32 &idx) const</div><divclass="ttdoc">Get the name of material in index idx Return true, if the name found, otherwise false.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00172">property.hpp:172</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_adc62e81491a3115339f0724c406b39dc"><divclass="ttname"><ahref="classpFlow_1_1property.html#adc62e81491a3115339f0724c406b39dc">pFlow::property::numMaterials</a></div><divclass="ttdeci">auto numMaterials() const</div><divclass="ttdoc">Return number of materials.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00111">property.hpp:111</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1iEntry_html_a73572f70de721e7793f801ae26c5a6c5"><divclass="ttname"><ahref="classpFlow_1_1iEntry.html#a73572f70de721e7793f801ae26c5a6c5">pFlow::iEntry::name</a></div><divclass="ttdeci">virtual word name() const</div><divclass="ttdoc">name/keyword of entry</div><divclass="ttdef"><b>Definition:</b><ahref="iEntry_8hpp_source.html#l00100">iEntry.hpp:100</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html"><divclass="ttname"><ahref="classpFlow_1_1property.html">pFlow::property</a></div><divclass="ttdoc">property holds the pure properties of materials.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00037">property.hpp:37</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a2e4edb9e315736953f3c0ca26777ebbf"><divclass="ttname"><ahref="classpFlow_1_1property.html#a2e4edb9e315736953f3c0ca26777ebbf">pFlow::property::density</a></div><divclass="ttdeci">bool density(uint32 i, real &rho) const</div><divclass="ttdoc">Get the density of material i.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00156">property.hpp:156</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_ad1dfa4ff1700e5649d5651714ad559fa"><divclass="ttname"><ahref="classpFlow_1_1property.html#ad1dfa4ff1700e5649d5651714ad559fa">pFlow::property::numMaterials_</a></div><divclass="ttdeci">uint32 numMaterials_</div><divclass="ttdoc">number of materials</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00056">property.hpp:56</a></div></div>
<divclass="ttc"id="aclasspFlow_1_1property_html_a88776ce7e066f6b5fbf5238545881f0b"><divclass="ttname"><ahref="classpFlow_1_1property.html#a88776ce7e066f6b5fbf5238545881f0b">pFlow::property::density</a></div><divclass="ttdeci">real density(uint32 i) const</div><divclass="ttdoc">Return density of material i.</div><divclass="ttdef"><b>Definition:</b><ahref="property_8hpp_source.html#l00149">property.hpp:149</a></div></div>