19 Commits

Author SHA1 Message Date
HRN
0acd52f1b1 documentation for v1.0 2025-01-10 13:02:07 +03:30
HRN
53c7b23728 merge from main 2025-01-10 12:37:42 +03:30
ce7070dc37 doc/html updated for integration 2023-04-23 12:52:57 -07:00
01034d0a26 Merge branch 'main' into documentation 2023-04-23 12:50:42 -07:00
aef6654c32 ggl code 2023-04-19 02:32:53 -07:00
67a93a006b meta 2023-04-18 13:17:24 -07:00
eeea0077ec Merge branch 'main' into documentation 2023-04-18 13:16:05 -07:00
93f6d6cfc3 logo added to documentation 2023-04-14 10:28:41 -07:00
3b4ed58bb1 Merge branch 'main' into documentation 2023-04-14 10:27:33 -07:00
123023579a doc for Geometry 2023-04-13 11:46:41 -07:00
895e48d89f Merge branch 'main' into documentation 2023-04-13 11:43:45 -07:00
f0e9896b26 style of documentation changed 2023-04-02 14:53:54 -07:00
57a47752cf Documentation style changed 2023-04-02 14:52:11 -07:00
b66082af0d doc 2023-04-02 11:35:43 -07:00
1ead684e8b Merge branch 'main' into documentation 2023-04-02 09:20:34 -07:00
bf59781bec rotating axis motion 2023-03-31 10:54:16 -07:00
6bf532ceb3 documentation for rotatingAxis 2023-03-31 10:50:39 -07:00
fa666de68a Merge branch 'main' into documentation 2023-03-31 10:49:33 -07:00
04f3b2a150 how to build added 2023-03-27 10:16:23 -07:00
7915 changed files with 828276 additions and 2 deletions

1
.gitignore vendored
View File

@ -44,7 +44,6 @@ bin/**
lib/**
test*/**
**/**notnow
doc/code-documentation/
doc/DTAGS
# all possible time folders
**/[0-9]

View File

@ -0,0 +1,146 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AB2Kernels.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AB2Kernels_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">AB2Kernels.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AB2Kernels.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AB2Kernels_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth2_2AB2Kernels_8hpp" alt=""/></div>
</div>
</div>
<p><a href="AB2Kernels_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespacepFlow_1_1AB2Kernels"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow_1_1AB2Kernels.html">pFlow::AB2Kernels</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a1d3752d19417e5f211093381ef34cbc9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow_1_1AB2Kernels.html#a1d3752d19417e5f211093381ef34cbc9">intAllActive</a> (const word &amp;name, real dt, rangeU32 activeRng, const deviceViewType1D&lt; realx3 &gt; &amp;y, const deviceViewType1D&lt; realx3 &gt; &amp;dy, const deviceViewType1D&lt; realx3 &gt; &amp;dy1)</td></tr>
<tr class="separator:a1d3752d19417e5f211093381ef34cbc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e684a0c67df0388c9ab00a8abea55c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow_1_1AB2Kernels.html#a0e684a0c67df0388c9ab00a8abea55c4">intScattered</a> (const word &amp;name, real dt, const pFlagTypeDevice &amp;activePoints, const deviceViewType1D&lt; realx3 &gt; &amp;y, const deviceViewType1D&lt; realx3 &gt; &amp;dy, const deviceViewType1D&lt; realx3 &gt; &amp;dy1)</td></tr>
<tr class="separator:a0e684a0c67df0388c9ab00a8abea55c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AB2Kernels_8hpp.html">AB2Kernels.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,5 @@
var AB2Kernels_8hpp =
[
[ "intAllActive", "AB2Kernels_8hpp.html#a1d3752d19417e5f211093381ef34cbc9", null ],
[ "intScattered", "AB2Kernels_8hpp.html#a0e684a0c67df0388c9ab00a8abea55c4", null ]
];

View File

@ -0,0 +1,11 @@
digraph "src/Integration/AdamsBashforth2/AB2Kernels.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth2\l/AB2Kernels.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="KokkosTypes.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$KokkosTypes_8hpp.html",tooltip=" "];
Node1 -> Node9 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node9 [label="types.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$types_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,198 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AB2Kernels.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AB2Kernels_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AB2Kernels.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AB2Kernels_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160; </div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160; </div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#ifndef __AB2Kernels_hpp__</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#define __AB2Kernels_hpp__</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160; </div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="KokkosTypes_8hpp.html">KokkosTypes.hpp</a>&quot;</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">types.hpp</a>&quot;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; </div>
<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="namespacepFlow_1_1AB2Kernels.html"> 9</a></span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow_1_1AB2Kernels.html">pFlow::AB2Kernels</a></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;{</div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="keyword">inline</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"><a class="line" href="namespacepFlow_1_1AB2Kernels.html#a1d3752d19417e5f211093381ef34cbc9"> 12</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespacepFlow_1_1AB2Kernels.html#a1d3752d19417e5f211093381ef34cbc9">intAllActive</a>(</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; name,</div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; <a class="code" href="structpFlow_1_1Range.html">rangeU32</a> activeRng,</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; y, </div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; dy,</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; dy1</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;)</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;{</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; name,</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; <a class="code" href="namespacepFlow.html#a6ea32be3339f3023ab349c9c3775c916">deviceRPolicyStatic</a> (activeRng.<a class="code" href="structpFlow_1_1Range.html#a8ade4cd349991c4c7ed9131410ddd8f0">start</a>(), activeRng.<a class="code" href="structpFlow_1_1Range.html#a38ebf09d6bfa7f04d4a95ff7f0d3aef4">end</a>()),</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i){</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; y[i] += dt*(<span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.5) * dy[i] - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(0.5) * dy1[i]);</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; dy1[i] = dy[i];</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; });</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;}</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">inline</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespacepFlow_1_1AB2Kernels.html#a0e684a0c67df0388c9ab00a8abea55c4">intScattered</a></div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="namespacepFlow_1_1AB2Kernels.html#a0e684a0c67df0388c9ab00a8abea55c4"> 35</a></span>&#160;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; name,</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointFlag.html">pFlagTypeDevice</a>&amp; activePoints,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; y, </div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; dy,</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">deviceViewType1D&lt;realx3&gt;</a>&amp; dy1</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;)</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; name,</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="namespacepFlow.html#a6ea32be3339f3023ab349c9c3775c916">deviceRPolicyStatic</a> (activePoints.<a class="code" href="classpFlow_1_1pointFlag.html#a766f5bcd312f3e0ca10011181b05f318">activeRange</a>().start(), activePoints.<a class="code" href="classpFlow_1_1pointFlag.html#a766f5bcd312f3e0ca10011181b05f318">activeRange</a>().end()),</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i){</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">if</span>( activePoints(i))</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; y[i] += dt*(<span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.5) * dy[i] - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(0.5) * dy1[i]);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; dy1[i] = dy[i];</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; });</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;}</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;}</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="atypes_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div></div>
<div class="ttc" id="astructpFlow_1_1Range_html_a38ebf09d6bfa7f04d4a95ff7f0d3aef4"><div class="ttname"><a href="structpFlow_1_1Range.html#a38ebf09d6bfa7f04d4a95ff7f0d3aef4">pFlow::Range::end</a></div><div class="ttdeci">INLINE_FUNCTION_HD T &amp; end()</div><div class="ttdoc">End.</div><div class="ttdef"><b>Definition:</b> <a href="Range_8hpp_source.html#l00101">Range.hpp:101</a></div></div>
<div class="ttc" id="anamespacepFlow_html_abd01e8e67e3d94cab04ecaaf4f85ac1b"><div class="ttname"><a href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">pFlow::uint32</a></div><div class="ttdeci">unsigned int uint32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00056">builtinTypes.hpp:56</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="astructpFlow_1_1Range_html_a8ade4cd349991c4c7ed9131410ddd8f0"><div class="ttname"><a href="structpFlow_1_1Range.html#a8ade4cd349991c4c7ed9131410ddd8f0">pFlow::Range::start</a></div><div class="ttdeci">INLINE_FUNCTION_HD T &amp; start()</div><div class="ttdoc">Start.</div><div class="ttdef"><b>Definition:</b> <a href="Range_8hpp_source.html#l00094">Range.hpp:94</a></div></div>
<div class="ttc" id="aKokkosTypes_8hpp_html"><div class="ttname"><a href="KokkosTypes_8hpp.html">KokkosTypes.hpp</a></div></div>
<div class="ttc" id="anamespacepFlow_1_1AB2Kernels_html"><div class="ttname"><a href="namespacepFlow_1_1AB2Kernels.html">pFlow::AB2Kernels</a></div><div class="ttdef"><b>Definition:</b> <a href="AB2Kernels_8hpp_source.html#l00009">AB2Kernels.hpp:9</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa5276597d4016d6696f1f265a13d2164"><div class="ttname"><a href="namespacepFlow.html#aa5276597d4016d6696f1f265a13d2164">pFlow::deviceViewType1D</a></div><div class="ttdeci">Kokkos::View&lt; T * &gt; deviceViewType1D</div><div class="ttdoc">1D array (vector) with default device (memory space and execution space)</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00121">KokkosTypes.hpp:121</a></div></div>
<div class="ttc" id="anamespacepFlow_1_1AB2Kernels_html_a1d3752d19417e5f211093381ef34cbc9"><div class="ttname"><a href="namespacepFlow_1_1AB2Kernels.html#a1d3752d19417e5f211093381ef34cbc9">pFlow::AB2Kernels::intAllActive</a></div><div class="ttdeci">bool intAllActive(const word &amp;name, real dt, rangeU32 activeRng, const deviceViewType1D&lt; realx3 &gt; &amp;y, const deviceViewType1D&lt; realx3 &gt; &amp;dy, const deviceViewType1D&lt; realx3 &gt; &amp;dy1)</div><div class="ttdef"><b>Definition:</b> <a href="AB2Kernels_8hpp_source.html#l00012">AB2Kernels.hpp:12</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointFlag_html_a766f5bcd312f3e0ca10011181b05f318"><div class="ttname"><a href="classpFlow_1_1pointFlag.html#a766f5bcd312f3e0ca10011181b05f318">pFlow::pointFlag::activeRange</a></div><div class="ttdeci">const INLINE_FUNCTION_HD auto &amp; activeRange() const</div><div class="ttdef"><b>Definition:</b> <a href="pointFlag_8hpp_source.html#l00179">pointFlag.hpp:179</a></div></div>
<div class="ttc" id="astructpFlow_1_1Range_html"><div class="ttname"><a href="structpFlow_1_1Range.html">pFlow::Range&lt; uint32 &gt;</a></div></div>
<div class="ttc" id="anamespacepFlow_1_1AB2Kernels_html_a0e684a0c67df0388c9ab00a8abea55c4"><div class="ttname"><a href="namespacepFlow_1_1AB2Kernels.html#a0e684a0c67df0388c9ab00a8abea55c4">pFlow::AB2Kernels::intScattered</a></div><div class="ttdeci">bool intScattered(const word &amp;name, real dt, const pFlagTypeDevice &amp;activePoints, const deviceViewType1D&lt; realx3 &gt; &amp;y, const deviceViewType1D&lt; realx3 &gt; &amp;dy, const deviceViewType1D&lt; realx3 &gt; &amp;dy1)</div><div class="ttdef"><b>Definition:</b> <a href="AB2Kernels_8hpp_source.html#l00035">AB2Kernels.hpp:35</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6ea32be3339f3023ab349c9c3775c916"><div class="ttname"><a href="namespacepFlow.html#a6ea32be3339f3023ab349c9c3775c916">pFlow::deviceRPolicyStatic</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; Kokkos::DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; pFlow::uint32 &gt; &gt; deviceRPolicyStatic</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00066">KokkosTypes.hpp:66</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointFlag_html"><div class="ttname"><a href="classpFlow_1_1pointFlag.html">pFlow::pointFlag&lt; DefaultExecutionSpace &gt;</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AB2Kernels_8hpp.html">AB2Kernels.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,151 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AdamsBashforth2.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth2_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">AdamsBashforth2.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth2.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth2_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth2_2AdamsBashforth2_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth2_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a42ff9b272180d6b5b128aafacd50a411"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">rpIntegration</a> = Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; uint32 &gt; &gt;</td></tr>
<tr class="memdesc:a42ff9b272180d6b5b128aafacd50a411"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structpFlow_1_1Range.html" title="Range for elements in an vector [start,end)">Range</a> policy for integration kernel (alias) <a href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">More...</a><br /></td></tr>
<tr class="separator:a42ff9b272180d6b5b128aafacd50a411"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ad07d1cb3572f2d482cdf0e9f2868071b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b">intAllActive</a> (real dt, realx3Field_D &amp;y, realx3PointField_D &amp;dy, realx3PointField_D &amp;dy1)</td></tr>
<tr class="separator:ad07d1cb3572f2d482cdf0e9f2868071b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19c4c4ae40e7e332c50f85bcf8fb93d9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9">intScattered</a> (real dt, realx3Field_D &amp;y, realx3PointField_D &amp;dy, realx3PointField_D &amp;dy1)</td></tr>
<tr class="separator:a19c4c4ae40e7e332c50f85bcf8fb93d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AdamsBashforth2_8cpp.html">AdamsBashforth2.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,6 @@
var AdamsBashforth2_8cpp =
[
[ "rpIntegration", "AdamsBashforth2_8cpp.html#a42ff9b272180d6b5b128aafacd50a411", null ],
[ "intAllActive", "AdamsBashforth2_8cpp.html#ad07d1cb3572f2d482cdf0e9f2868071b", null ],
[ "intScattered", "AdamsBashforth2_8cpp.html#a19c4c4ae40e7e332c50f85bcf8fb93d9", null ]
];

View File

@ -0,0 +1,15 @@
digraph "src/Integration/AdamsBashforth2/AdamsBashforth2.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth2\l/AdamsBashforth2.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsBashforth2.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsBashforth2_8hpp.html",tooltip=" "];
Node1 -> Node89 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node89 [label="pointStructure.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointStructure_8hpp.html",tooltip=" "];
Node1 -> Node156 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node156 [label="Time.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Time_8hpp.html",tooltip=" "];
Node1 -> Node166 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node166 [label="vocabs.hpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$vocabs_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,349 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AdamsBashforth2.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth2_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth2.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth2_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsBashforth2_8hpp.html">AdamsBashforth2.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointStructure_8hpp.html">pointStructure.hpp</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Time_8hpp.html">Time.hpp</a>&quot;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="vocabs_8hpp.html">vocabs.hpp</a>&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;{</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">using</span> <a class="code" href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; Kokkos::IndexType&lt;uint32&gt;</div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411"> 34</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b"> 36</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b">intAllActive</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a>&amp; y, </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy1)</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1internalField.html#a65a1eeccd800386379e7db5dd61ea9aa">deviceView</a>();</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a1fabd2a58aae204d5639f041216f54da">deviceView</a>();</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">auto</span> d_dy1= dy1.<a class="code" href="classpFlow_1_1internalField.html#a65a1eeccd800386379e7db5dd61ea9aa">deviceView</a>();</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">auto</span> activeRng = dy1.<a class="code" href="classpFlow_1_1pointField.html#afef304b4d4497e45857f6edef9b049e6">activeRange</a>();</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="stringliteral">&quot;AdamsBashforth2::correct&quot;</span>,</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">rpIntegration</a> (activeRng.start(), activeRng.end()),</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i){</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; d_y[i] += dt*(<span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.5) * d_dy[i] - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(0.5) * d_dy1[i]);</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; d_dy1[i] = d_dy[i];</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; });</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9">intScattered</a></div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9"> 61</a></span>&#160;(</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a>&amp; y,</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy,</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy1</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;)</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1internalField.html#a65a1eeccd800386379e7db5dd61ea9aa">deviceView</a>();</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a1fabd2a58aae204d5639f041216f54da">deviceView</a>();</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1.<a class="code" href="classpFlow_1_1internalField.html#a65a1eeccd800386379e7db5dd61ea9aa">deviceView</a>();</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">auto</span> activeRng = dy1.<a class="code" href="classpFlow_1_1pointField.html#afef304b4d4497e45857f6edef9b049e6">activeRange</a>();</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; activeP = dy1.<a class="code" href="classpFlow_1_1internalField.html#a67d82cfcfc613c9ffbccd1f9a9aa0ce6">activePointsMaskDevice</a>();</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="stringliteral">&quot;AdamsBashforth2::correct&quot;</span>,</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">rpIntegration</a> (activeRng.start(), activeRng.end()),</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> i){</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; d_y[i] += dt*(<span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.5) * d_dy[i] - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(0.5) * d_dy1[i]);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; d_dy1[i] = d_dy[i];</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; });</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<a class="code" href="classpFlow_1_1AdamsBashforth2.html#a1e7473dc6951c5718277fadf484d4c7d">pFlow::AdamsBashforth2::AdamsBashforth2</a></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a1e7473dc6951c5718277fadf484d4c7d"> 94</a></span>&#160;(</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a>&amp; initialValField</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;)</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;:</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method, initialValField),</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="namespacepFlow.html#af547b8e736ebac3297672aff612d426a">realx3PointField_D</a></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; (</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; (</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy1&quot;</span>),</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>.time().integrationFolder(),</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; objectFile::WRITE_ALWAYS</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; ),</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; ),</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; boundaryList_(<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method, *<span class="keyword">this</span>)</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;{}</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#abd77556ae6ba5220c472e06b2ef2da31"> 118</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#abd77556ae6ba5220c472e06b2ef2da31">pFlow::AdamsBashforth2::updateBoundariesSlaveToMasterIfRequested</a>()</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;{</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="classpFlow_1_1pointField.html#a4df96ffd1fa1b1fad9fc5dbd8bf03431">realx3PointField_D::updateBoundariesSlaveToMasterIfRequested</a>();</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;}</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69"> 123</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">pFlow::AdamsBashforth2::predict</a>(</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a> &amp;<a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a> &amp;<a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy))</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;{</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;}</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">pFlow::AdamsBashforth2::predict</a></div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a4f0aee8b7d5ace2fd263b10f1f29ffde"> 132</a></span>&#160;(</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a> &amp;y, </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a> &amp;dy</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;)</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;{</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a31ed4ecb323de5dc3f004927060fdc45">pFlow::AdamsBashforth2::correct</a></div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a31ed4ecb323de5dc3f004927060fdc45"> 142</a></span>&#160;(</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; y,</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;)</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">auto</span>&amp; dy1l = dy1();</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordtype">bool</span> success = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span>(dy1l.isAllActive())</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; {</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; success = <a class="code" href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b">intAllActive</a>(dt, y.<a class="code" href="classpFlow_1_1internalField.html#a0b7cdb82732a46cf6c7aa342cf9c6c33">field</a>(), dy, dy1l);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; {</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; success = <a class="code" href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9">intScattered</a>(dt, y.<a class="code" href="classpFlow_1_1internalField.html#a0b7cdb82732a46cf6c7aa342cf9c6c33">field</a>(), dy, dy1l);</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; success = success &amp;&amp; boundaryList_.correct(dt, y, dy);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> success;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;}</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a2dfa8f3fb9e8b803ed22d20d63e2f094"> 165</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a2dfa8f3fb9e8b803ed22d20d63e2f094">pFlow::AdamsBashforth2::correctPStruct</a>(</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a> &amp;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a> &amp;vel)</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">auto</span>&amp; dy1l = dy1();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordtype">bool</span> success = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span>(dy1l.isAllActive())</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; success = <a class="code" href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b">intAllActive</a>(dt, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>.pointPosition(), vel, dy1l);</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; {</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; success = <a class="code" href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9">intScattered</a>(dt, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>.pointPosition(), vel, dy1l);</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; success = success &amp;&amp; boundaryList_.correctPStruct(dt, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, vel);</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> success;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;}</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; </div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#ad114a4a04b76ea8e10d4388756912a7e"> 187</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#ad114a4a04b76ea8e10d4388756912a7e">pFlow::AdamsBashforth2::setInitialVals</a>(</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;{</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;}</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a5595208ecd7c3d8fdc960c8d2fd9bb69"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">pFlow::AdamsBashforth2::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3PointField_D &amp;UNUSED(y), realx3PointField_D &amp;UNUSED(dy)) final</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00123">AdamsBashforth2.cpp:123</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="anamespacepFlow_html_abd01e8e67e3d94cab04ecaaf4f85ac1b"><div class="ttname"><a href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">pFlow::uint32</a></div><div class="ttdeci">unsigned int uint32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00056">builtinTypes.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a1e7473dc6951c5718277fadf484d4c7d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a1e7473dc6951c5718277fadf484d4c7d">pFlow::AdamsBashforth2::AdamsBashforth2</a></div><div class="ttdeci">AdamsBashforth2(const word &amp;baseName, pointStructure &amp;pStruct, const word &amp;method, const realx3Field_D &amp;initialValField)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00094">AdamsBashforth2.cpp:94</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_a67d82cfcfc613c9ffbccd1f9a9aa0ce6"><div class="ttname"><a href="classpFlow_1_1internalField.html#a67d82cfcfc613c9ffbccd1f9a9aa0ce6">pFlow::internalField::activePointsMaskDevice</a></div><div class="ttdeci">const pFlagTypeDevice &amp; activePointsMaskDevice() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00120">internalField.hpp:120</a></div></div>
<div class="ttc" id="anamespacepFlow_html_af547b8e736ebac3297672aff612d426a"><div class="ttname"><a href="namespacepFlow.html#af547b8e736ebac3297672aff612d426a">pFlow::realx3PointField_D</a></div><div class="ttdeci">pointField_D&lt; realx3 &gt; realx3PointField_D</div><div class="ttdef"><b>Definition:</b> <a href="pointFields_8hpp_source.html#l00052">pointFields.hpp:52</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="anamespacepFlow_html_ad07d1cb3572f2d482cdf0e9f2868071b"><div class="ttname"><a href="namespacepFlow.html#ad07d1cb3572f2d482cdf0e9f2868071b">pFlow::intAllActive</a></div><div class="ttdeci">bool intAllActive(real dt, realx3Field_D &amp;y, realx3PointField_D &amp;dy, realx3PointField_D &amp;dy1)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00036">AdamsBashforth2.cpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html"><div class="ttname"><a href="classpFlow_1_1Field.html">pFlow::Field&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a31ed4ecb323de5dc3f004927060fdc45"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a31ed4ecb323de5dc3f004927060fdc45">pFlow::AdamsBashforth2::correct</a></div><div class="ttdeci">bool correct(real dt, realx3PointField_D &amp;y, realx3PointField_D &amp;dy) final</div><div class="ttdoc">Correction/main integration step.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00142">AdamsBashforth2.cpp:142</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a19c4c4ae40e7e332c50f85bcf8fb93d9"><div class="ttname"><a href="namespacepFlow.html#a19c4c4ae40e7e332c50f85bcf8fb93d9">pFlow::intScattered</a></div><div class="ttdeci">bool intScattered(real dt, realx3Field_D &amp;y, realx3PointField_D &amp;dy, realx3PointField_D &amp;dy1)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00061">AdamsBashforth2.cpp:61</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a1fabd2a58aae204d5639f041216f54da"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a1fabd2a58aae204d5639f041216f54da">pFlow::VectorSingle::deviceView</a></div><div class="ttdeci">INLINE_FUNCTION_H auto deviceView() const</div><div class="ttdoc">Device view range [0, size)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00263">VectorSingle.cpp:263</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a2dfa8f3fb9e8b803ed22d20d63e2f094"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a2dfa8f3fb9e8b803ed22d20d63e2f094">pFlow::AdamsBashforth2::correctPStruct</a></div><div class="ttdeci">bool correctPStruct(real dt, pointStructure &amp;pStruct, realx3PointField_D &amp;vel) final</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00165">AdamsBashforth2.cpp:165</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_a0b7cdb82732a46cf6c7aa342cf9c6c33"><div class="ttname"><a href="classpFlow_1_1internalField.html#a0b7cdb82732a46cf6c7aa342cf9c6c33">pFlow::internalField::field</a></div><div class="ttdeci">const FieldType &amp; field() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00109">internalField.hpp:109</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a42ff9b272180d6b5b128aafacd50a411"><div class="ttname"><a href="namespacepFlow.html#a42ff9b272180d6b5b128aafacd50a411">pFlow::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; uint32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel (alias)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00034">AdamsBashforth2.cpp:34</a></div></div>
<div class="ttc" id="aTime_8hpp_html"><div class="ttname"><a href="Time_8hpp.html">Time.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html_afef304b4d4497e45857f6edef9b049e6"><div class="ttname"><a href="classpFlow_1_1pointField.html#afef304b4d4497e45857f6edef9b049e6">pFlow::pointField::activeRange</a></div><div class="ttdeci">range activeRange() const</div><div class="ttdef"><b>Definition:</b> <a href="pointField__old_8hpp_source.html#l00138">pointField_old.hpp:138</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="aAdamsBashforth2_8hpp_html"><div class="ttname"><a href="AdamsBashforth2_8hpp.html">AdamsBashforth2.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_ad114a4a04b76ea8e10d4388756912a7e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#ad114a4a04b76ea8e10d4388756912a7e">pFlow::AdamsBashforth2::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) final</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00187">AdamsBashforth2.cpp:187</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html_a4df96ffd1fa1b1fad9fc5dbd8bf03431"><div class="ttname"><a href="classpFlow_1_1pointField.html#a4df96ffd1fa1b1fad9fc5dbd8bf03431">pFlow::pointField::updateBoundariesSlaveToMasterIfRequested</a></div><div class="ttdeci">void updateBoundariesSlaveToMasterIfRequested()</div><div class="ttdoc">update boundaries if it is requested previousely (slave to master).</div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00115">pointField.hpp:115</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_abd77556ae6ba5220c472e06b2ef2da31"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#abd77556ae6ba5220c472e06b2ef2da31">pFlow::AdamsBashforth2::updateBoundariesSlaveToMasterIfRequested</a></div><div class="ttdeci">void updateBoundariesSlaveToMasterIfRequested() override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00118">AdamsBashforth2.cpp:118</a></div></div>
<div class="ttc" id="avocabs_8hpp_html"><div class="ttname"><a href="vocabs_8hpp.html">vocabs.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="apointStructure_8hpp_html"><div class="ttname"><a href="pointStructure_8hpp.html">pointStructure.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_a65a1eeccd800386379e7db5dd61ea9aa"><div class="ttname"><a href="classpFlow_1_1internalField.html#a65a1eeccd800386379e7db5dd61ea9aa">pFlow::internalField::deviceView</a></div><div class="ttdeci">auto deviceView() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00097">internalField.hpp:97</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AdamsBashforth2_8cpp.html">AdamsBashforth2.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AdamsBashforth2.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth2_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">AdamsBashforth2.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth2.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth2_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth2_2AdamsBashforth2_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth2_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth2_2AdamsBashforth2_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth2_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsBashforth2.html">AdamsBashforth2</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Second order Adams-Bashforth integration method for solving ODE. <a href="classpFlow_1_1AdamsBashforth2.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AdamsBashforth2_8hpp.html">AdamsBashforth2.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth2/AdamsBashforth2.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth2\l/AdamsBashforth2.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsBashforth2\l/AdamsBashforth2.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsBashforth2_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,14 @@
digraph "src/Integration/AdamsBashforth2/AdamsBashforth2.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth2\l/AdamsBashforth2.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node1 -> Node163 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node163 [label="boundaryIntegrationList.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$boundaryIntegrationList_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,276 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth2/AdamsBashforth2.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth2_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth2.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth2_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#ifndef __AdamsBashforth2_hpp__</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define __AdamsBashforth2_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="boundaryIntegrationList_8hpp.html">boundaryIntegrationList.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html"> 37</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsBashforth2.html">AdamsBashforth2</a></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;:</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#aac898ef26b84e559b552fb63b187e4a3"> 44</a></span>&#160; <a class="code" href="classpFlow_1_1boundaryIntegrationList.html">boundaryIntegrationList</a> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#aac898ef26b84e559b552fb63b187e4a3">boundaryList_</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#acfc416287e9f31450d930160b1ccaef3"> 46</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsBashforth2.html#acfc416287e9f31450d930160b1ccaef3">processorAB2BoundaryIntegration</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#aec90bedeff0a2a031a0d310526a33f3b"> 48</a></span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#aec90bedeff0a2a031a0d310526a33f3b">dy1</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keyword">const </span><a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp;<span class="keyword">&gt;</span>(*this);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a08830f3ac97ae61ab7971024f5bfc99f"> 53</a></span>&#160; <span class="keyword">auto</span>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a08830f3ac97ae61ab7971024f5bfc99f">dy1</a>()</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp;<span class="keyword">&gt;</span>(*this);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a4db1a4db4a3c5af1dc7037acec0e40a9">ClassInfo</a>(<span class="stringliteral">&quot;AdamsBashforth2&quot;</span>);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a1e7473dc6951c5718277fadf484d4c7d">AdamsBashforth2</a>(</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a307a24e988c782099db9fc49291efe1e">method</a>,</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a>&amp; initialValField);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a0e0f8a5b0250e97e857de7bd6a5e9731">~AdamsBashforth2</a>()final = default;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a3f4d930dbe074e5170da8b9a74f3c8b8">add_vCtor</a>(</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth2.html">AdamsBashforth2</a>,</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; </div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#abd77556ae6ba5220c472e06b2ef2da31">updateBoundariesSlaveToMasterIfRequested</a>()override;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a307a24e988c782099db9fc49291efe1e"> 87</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a307a24e988c782099db9fc49291efe1e">method</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;AdamsBashforth2&quot;</span>;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">predict</a>(</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt), </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y), </div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)) <span class="keyword">final</span>;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">predict</a>(</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a>&amp; y, </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy) <span class="keyword">final</span>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a31ed4ecb323de5dc3f004927060fdc45">correct</a>(</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; y, </div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; dy) <span class="keyword">final</span>;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a2dfa8f3fb9e8b803ed22d20d63e2f094">correctPStruct</a>(</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>, </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; vel) <span class="keyword">final</span>;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">/*bool hearChanges</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> (</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> real t,</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> real dt,</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> uint32 iter,</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> const message&amp; msg, </span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> const anyList&amp; varList</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> ) override;*/</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#ad114a4a04b76ea8e10d4388756912a7e">setInitialVals</a>(</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">final</span>;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth2.html#a5fd0dfea4bc213a1a941358d72bedde0"> 126</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth2.html#a5fd0dfea4bc213a1a941358d72bedde0">needSetInitialVals</a>()const final</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; {</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;};</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; </div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor">#endif //__integration_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a0e0f8a5b0250e97e857de7bd6a5e9731"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a0e0f8a5b0250e97e857de7bd6a5e9731">pFlow::AdamsBashforth2::~AdamsBashforth2</a></div><div class="ttdeci">~AdamsBashforth2() final=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a307a24e988c782099db9fc49291efe1e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a307a24e988c782099db9fc49291efe1e">pFlow::AdamsBashforth2::method</a></div><div class="ttdeci">word method() const override</div><div class="ttdoc">return integration method</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00087">AdamsBashforth2.hpp:87</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a5595208ecd7c3d8fdc960c8d2fd9bb69"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a5595208ecd7c3d8fdc960c8d2fd9bb69">pFlow::AdamsBashforth2::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3PointField_D &amp;UNUSED(y), realx3PointField_D &amp;UNUSED(dy)) final</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00123">AdamsBashforth2.cpp:123</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a1e7473dc6951c5718277fadf484d4c7d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a1e7473dc6951c5718277fadf484d4c7d">pFlow::AdamsBashforth2::AdamsBashforth2</a></div><div class="ttdeci">AdamsBashforth2(const word &amp;baseName, pointStructure &amp;pStruct, const word &amp;method, const realx3Field_D &amp;initialValField)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00094">AdamsBashforth2.cpp:94</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a4db1a4db4a3c5af1dc7037acec0e40a9"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a4db1a4db4a3c5af1dc7037acec0e40a9">pFlow::AdamsBashforth2::ClassInfo</a></div><div class="ttdeci">ClassInfo(&quot;AdamsBashforth2&quot;)</div><div class="ttdoc">Class info.</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a08830f3ac97ae61ab7971024f5bfc99f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a08830f3ac97ae61ab7971024f5bfc99f">pFlow::AdamsBashforth2::dy1</a></div><div class="ttdeci">auto &amp; dy1()</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00053">AdamsBashforth2.hpp:53</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html"><div class="ttname"><a href="classpFlow_1_1Field.html">pFlow::Field&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a5fd0dfea4bc213a1a941358d72bedde0"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a5fd0dfea4bc213a1a941358d72bedde0">pFlow::AdamsBashforth2::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const final</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00126">AdamsBashforth2.hpp:126</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_aac898ef26b84e559b552fb63b187e4a3"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#aac898ef26b84e559b552fb63b187e4a3">pFlow::AdamsBashforth2::boundaryList_</a></div><div class="ttdeci">boundaryIntegrationList boundaryList_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00044">AdamsBashforth2.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a31ed4ecb323de5dc3f004927060fdc45"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a31ed4ecb323de5dc3f004927060fdc45">pFlow::AdamsBashforth2::correct</a></div><div class="ttdeci">bool correct(real dt, realx3PointField_D &amp;y, realx3PointField_D &amp;dy) final</div><div class="ttdoc">Correction/main integration step.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00142">AdamsBashforth2.cpp:142</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a2dfa8f3fb9e8b803ed22d20d63e2f094"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a2dfa8f3fb9e8b803ed22d20d63e2f094">pFlow::AdamsBashforth2::correctPStruct</a></div><div class="ttdeci">bool correctPStruct(real dt, pointStructure &amp;pStruct, realx3PointField_D &amp;vel) final</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00165">AdamsBashforth2.cpp:165</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_aec90bedeff0a2a031a0d310526a33f3b"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#aec90bedeff0a2a031a0d310526a33f3b">pFlow::AdamsBashforth2::dy1</a></div><div class="ttdeci">const auto &amp; dy1() const</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00048">AdamsBashforth2.hpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_acfc416287e9f31450d930160b1ccaef3"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#acfc416287e9f31450d930160b1ccaef3">pFlow::AdamsBashforth2::processorAB2BoundaryIntegration</a></div><div class="ttdeci">friend class processorAB2BoundaryIntegration</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00046">AdamsBashforth2.hpp:46</a></div></div>
<div class="ttc" id="aclasspFlow_1_1boundaryIntegrationList_html"><div class="ttname"><a href="classpFlow_1_1boundaryIntegrationList.html">pFlow::boundaryIntegrationList</a></div><div class="ttdef"><b>Definition:</b> <a href="boundaryIntegrationList_8hpp_source.html#l00016">boundaryIntegrationList.hpp:16</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_ad114a4a04b76ea8e10d4388756912a7e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#ad114a4a04b76ea8e10d4388756912a7e">pFlow::AdamsBashforth2::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) final</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00187">AdamsBashforth2.cpp:187</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html">pFlow::AdamsBashforth2</a></div><div class="ttdoc">Second order Adams-Bashforth integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8hpp_source.html#l00037">AdamsBashforth2.hpp:37</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_abd77556ae6ba5220c472e06b2ef2da31"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#abd77556ae6ba5220c472e06b2ef2da31">pFlow::AdamsBashforth2::updateBoundariesSlaveToMasterIfRequested</a></div><div class="ttdeci">void updateBoundariesSlaveToMasterIfRequested() override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth2_8cpp_source.html#l00118">AdamsBashforth2.cpp:118</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aboundaryIntegrationList_8hpp_html"><div class="ttname"><a href="boundaryIntegrationList_8hpp.html">boundaryIntegrationList.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth2_html_a3f4d930dbe074e5170da8b9a74f3c8b8"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth2.html#a3f4d930dbe074e5170da8b9a74f3c8b8">pFlow::AdamsBashforth2::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsBashforth2, word)</div><div class="ttdoc">Add this to the virtual constructor table.</div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_eb84e0c9bccf6469316a77378e4a6fe1.html">AdamsBashforth2</a></li><li class="navelem"><a class="el" href="AdamsBashforth2_8hpp.html">AdamsBashforth2.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth3/AdamsBashforth3.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth3_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth3.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth3.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth3_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth3_2AdamsBashforth3_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth3_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_9fe92fbd2d3b874c8837b9b8f1c20305.html">AdamsBashforth3</a></li><li class="navelem"><a class="el" href="AdamsBashforth3_8cpp.html">AdamsBashforth3.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth3/AdamsBashforth3.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth3\l/AdamsBashforth3.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsBashforth3.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsBashforth3_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,254 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth3/AdamsBashforth3.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth3_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth3.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth3_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsBashforth3_8hpp.html">AdamsBashforth3.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">//const real AB3_coef[] = { 23.0 / 12.0, 16.0 / 12.0, 5.0 / 12.0 };</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<a class="code" href="classpFlow_1_1AdamsBashforth3.html#a1f266356c0127865641500aea4aca002">pFlow::AdamsBashforth3::AdamsBashforth3</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#a1f266356c0127865641500aea4aca002"> 26</a></span>&#160;(</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;)</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; history_(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB3History&gt;</a>&gt;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;AB3History&quot;</span>),</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="structpFlow_1_1AB3History.html">AB3History</a>({<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>})))</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth3::predict</a></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#afb1938bc6cfc199cbd70f224040d4afc"> 49</a></span>&#160;(</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;)</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth3::correct</a></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 60</a></span>&#160;(</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;)</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 79</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth3::setInitialVals</a>(</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;}</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#a152b752a6b7b37e70fa5e7c99a484783"> 86</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth3::intAll</a>(</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; range activeRng)</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">auto</span> d_history = history_.deviceViewAll();</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="stringliteral">&quot;AdamsBashforth3::correct&quot;</span>,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">auto</span> ldy = d_dy[i];</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; d_y[i] += dt*( <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(23.0 / 12.0) * ldy </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(16.0 / 12.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(5.0 / 12.0) * d_history[i].dy2_);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; d_history[i] = {ldy ,d_history[i].dy1_};</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; });</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth3::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00079">AdamsBashforth3.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth3::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00087">AdamsBashforth3.hpp:87</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB3History_html"><div class="ttname"><a href="structpFlow_1_1AB3History.html">pFlow::AB3History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00031">AdamsBashforth3.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth3::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00049">AdamsBashforth3.cpp:49</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="aAdamsBashforth3_8hpp_html"><div class="ttname"><a href="AdamsBashforth3_8hpp.html">AdamsBashforth3.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth3::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00060">AdamsBashforth3.cpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a1f266356c0127865641500aea4aca002"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a1f266356c0127865641500aea4aca002">pFlow::AdamsBashforth3::AdamsBashforth3</a></div><div class="ttdeci">AdamsBashforth3(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00026">AdamsBashforth3.cpp:26</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth3::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00086">AdamsBashforth3.cpp:86</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_9fe92fbd2d3b874c8837b9b8f1c20305.html">AdamsBashforth3</a></li><li class="navelem"><a class="el" href="AdamsBashforth3_8cpp.html">AdamsBashforth3.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,160 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth3/AdamsBashforth3.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth3_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">AdamsBashforth3.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth3.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth3_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth3_2AdamsBashforth3_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth3_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth3_2AdamsBashforth3_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth3_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpFlow_1_1AB3History.html">AB3History</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsBashforth3.html">AdamsBashforth3</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Third order Adams-Bashforth integration method for solving ODE. <a href="classpFlow_1_1AdamsBashforth3.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a85ed561d066dae339196cd058783674f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iIstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">operator&gt;&gt;</a> (iIstream &amp;str, AB3History &amp;ab3)</td></tr>
<tr class="separator:a85ed561d066dae339196cd058783674f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a148d74ad0977268be8ea8b26a147f619"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iOstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">operator&lt;&lt;</a> (iOstream &amp;str, const AB3History &amp;ab3)</td></tr>
<tr class="separator:a148d74ad0977268be8ea8b26a147f619"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_9fe92fbd2d3b874c8837b9b8f1c20305.html">AdamsBashforth3</a></li><li class="navelem"><a class="el" href="AdamsBashforth3_8hpp.html">AdamsBashforth3.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,7 @@
var AdamsBashforth3_8hpp =
[
[ "AB3History", "structpFlow_1_1AB3History.html", "structpFlow_1_1AB3History" ],
[ "AdamsBashforth3", "classpFlow_1_1AdamsBashforth3.html", "classpFlow_1_1AdamsBashforth3" ],
[ "operator>>", "AdamsBashforth3_8hpp.html#a85ed561d066dae339196cd058783674f", null ],
[ "operator<<", "AdamsBashforth3_8hpp.html#a148d74ad0977268be8ea8b26a147f619", null ]
];

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth3/AdamsBashforth3.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth3\l/AdamsBashforth3.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsBashforth3\l/AdamsBashforth3.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsBashforth3_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsBashforth3/AdamsBashforth3.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth3\l/AdamsBashforth3.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,349 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth3/AdamsBashforth3.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth3_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth3.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth3_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsBashforth3_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsBashforth3_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB3History.html"> 31</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpFlow_1_1AB3History.html">AB3History</a></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;{</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="structpFlow_1_1AB3History.html#ad542852c8da95d45b6a6014d9f42a663">TypeInfoNV</a>(<span class="stringliteral">&quot;AB3History&quot;</span>);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB3History.html#a419568ee851e74f5356a30fc5ce2eddf"> 35</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB3History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>={0,0,0};</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB3History.html#a63d020867c10f8f3fde329eb526a066b"> 36</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB3History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>={0,0,0};</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;};</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f"> 41</a></span>&#160;<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; <a class="code" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">operator&gt;&gt;</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; str, <a class="code" href="structpFlow_1_1AB3History.html">AB3History</a>&amp; ab3)</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">readBegin</a>(<span class="stringliteral">&quot;AB3History&quot;</span>);</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; str &gt;&gt; ab3.<a class="code" href="structpFlow_1_1AB3History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; str &gt;&gt; ab3.<a class="code" href="structpFlow_1_1AB3History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">readEnd</a>(<span class="stringliteral">&quot;AB3History&quot;</span>);</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619"> 57</a></span>&#160;<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; <a class="code" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">operator&lt;&lt;</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; str, <span class="keyword">const</span> <a class="code" href="structpFlow_1_1AB3History.html">AB3History</a>&amp; ab3)</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; str &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">token::BEGIN_LIST</a> &lt;&lt; ab3.<a class="code" href="structpFlow_1_1AB3History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab3.<a class="code" href="structpFlow_1_1AB3History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">token::END_LIST</a>; </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;}</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html"> 73</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsBashforth3.html">AdamsBashforth3</a></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;:</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;{</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#ac46bad4a80ef6f7507d3b795f42b7326"> 80</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB3History&gt;</a>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ac46bad4a80ef6f7507d3b795f42b7326">history_</a>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 87</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">// type info</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#af73af994d6bfc50ff9bda4606cac960b">TypeInfo</a>(<span class="stringliteral">&quot;AdamsBashforth3&quot;</span>);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a1f266356c0127865641500aea4aca002">AdamsBashforth3</a>(</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#a29f8a3197295f0ffa73d24bbacc6228c"> 103</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsBashforth3&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#aaef6f6937fdab620942909e86c18cb3a">~AdamsBashforth3</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a9626dd5e2e9be37e395ace9fc484d879">add_vCtor</a>(</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html">AdamsBashforth3</a>,</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#afb1938bc6cfc199cbd70f224040d4afc">predict</a>(</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(<a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; y,</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 133</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; range activeRng);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; activeFunctor activeP );</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;};</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; </div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth3.html#a191dc9197b587f09bb5ee7989b0ba43e"> 157</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth3.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth3::intRange</a>(</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;{</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">auto</span> d_history = history_.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="stringliteral">&quot;AdamsBashforth3::correct&quot;</span>,</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; {</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">auto</span> ldy = d_dy[i];</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; d_y[i] += dt*( <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(23.0 / 12.0) * ldy </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(16.0 / 12.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(5.0 / 12.0) * d_history[i].dy2_);</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; d_history[i] = {ldy ,d_history[i].dy1_};</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; });</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;}</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; </div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="preprocessor">#endif //__integration_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1iIstream_html_aecfc9cc0a499c7d44de6a7562bcfea3f"><div class="ttname"><a href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">pFlow::iIstream::readBegin</a></div><div class="ttdeci">bool readBegin(const char *funcName)</div><div class="ttdoc">Begin read of data chunk, starts with '('.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00238">iIstream.cpp:238</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth3::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00079">AdamsBashforth3.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_ac46bad4a80ef6f7507d3b795f42b7326"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#ac46bad4a80ef6f7507d3b795f42b7326">pFlow::AdamsBashforth3::history_</a></div><div class="ttdeci">pointField&lt; VectorSingle, AB3History &gt; &amp; history_</div><div class="ttdoc">Integration history.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00080">AdamsBashforth3.hpp:80</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_afc491fbd69e70abdcb02a8cd3ce2939e"><div class="ttname"><a href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div><div class="ttdeci">#define INLINE_FUNCTION</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00066">pFlowMacros.hpp:66</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth3::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00087">AdamsBashforth3.hpp:87</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB3History_html"><div class="ttname"><a href="structpFlow_1_1AB3History.html">pFlow::AB3History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00031">AdamsBashforth3.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth3::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00049">AdamsBashforth3.cpp:49</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsBashforth3::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00133">AdamsBashforth3.hpp:133</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField&lt; T, void &gt;::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_a8d82c951160ac1444ee2a2d9ae1ecb11"><div class="ttname"><a href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">pFlow::iIstream::readEnd</a></div><div class="ttdeci">bool readEnd(const char *funcName)</div><div class="ttdoc">End read of data chunk, ends with ')' return true or FatalIOError.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00258">iIstream.cpp:258</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a922d2784284e8f6ee4009c3d92ba48b6"><div class="ttname"><a href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a></div><div class="ttdeci">#define FUNCTION_NAME</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00029">pFlowMacros.hpp:29</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_aaef6f6937fdab620942909e86c18cb3a"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#aaef6f6937fdab620942909e86c18cb3a">pFlow::AdamsBashforth3::~AdamsBashforth3</a></div><div class="ttdeci">virtual ~AdamsBashforth3()=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth3::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00060">AdamsBashforth3.cpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a1f266356c0127865641500aea4aca002"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a1f266356c0127865641500aea4aca002">pFlow::AdamsBashforth3::AdamsBashforth3</a></div><div class="ttdeci">AdamsBashforth3(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00026">AdamsBashforth3.cpp:26</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">pFlow::token::SPACE</a></div><div class="ttdeci">@ SPACE</div><div class="ttdoc">Nul character.</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00086">token.hpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a367eb3425fc4e8270e2aa961df8ac8a5"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">pFlow::IOstream::check</a></div><div class="ttdeci">virtual bool check(const char *operation) const</div><div class="ttdoc">Check IOstream status for given operation.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00042">IOstream.cpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth3::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00157">AdamsBashforth3.hpp:157</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a9626dd5e2e9be37e395ace9fc484d879"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a9626dd5e2e9be37e395ace9fc484d879">pFlow::AdamsBashforth3::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsBashforth3, word)</div><div class="ttdoc">Add this to the virtual constructor table.</div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a85ed561d066dae339196cd058783674f"><div class="ttname"><a href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">pFlow::operator&gt;&gt;</a></div><div class="ttdeci">INLINE_FUNCTION iIstream &amp; operator&gt;&gt;(iIstream &amp;str, AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00041">AdamsBashforth3.hpp:41</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB3History_html_a63d020867c10f8f3fde329eb526a066b"><div class="ttname"><a href="structpFlow_1_1AB3History.html#a63d020867c10f8f3fde329eb526a066b">pFlow::AB3History::dy2_</a></div><div class="ttdeci">realx3 dy2_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00036">AdamsBashforth3.hpp:36</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB3History_html_ad542852c8da95d45b6a6014d9f42a663"><div class="ttname"><a href="structpFlow_1_1AB3History.html#ad542852c8da95d45b6a6014d9f42a663">pFlow::AB3History::TypeInfoNV</a></div><div class="ttdeci">TypeInfoNV(&quot;AB3History&quot;)</div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">pFlow::token::END_LIST</a></div><div class="ttdeci">@ END_LIST</div><div class="ttdoc">Begin list [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00092">token.hpp:92</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB3History_html_a419568ee851e74f5356a30fc5ce2eddf"><div class="ttname"><a href="structpFlow_1_1AB3History.html#a419568ee851e74f5356a30fc5ce2eddf">pFlow::AB3History::dy1_</a></div><div class="ttdeci">realx3 dy1_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00035">AdamsBashforth3.hpp:35</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a148d74ad0977268be8ea8b26a147f619"><div class="ttname"><a href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">pFlow::operator&lt;&lt;</a></div><div class="ttdeci">INLINE_FUNCTION iOstream &amp; operator&lt;&lt;(iOstream &amp;str, const AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00057">AdamsBashforth3.hpp:57</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth3::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8cpp_source.html#l00086">AdamsBashforth3.cpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">pFlow::token::BEGIN_LIST</a></div><div class="ttdeci">@ BEGIN_LIST</div><div class="ttdoc">End entry [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00091">token.hpp:91</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsBashforth3::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00103">AdamsBashforth3.hpp:103</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html_af73af994d6bfc50ff9bda4606cac960b"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html#af73af994d6bfc50ff9bda4606cac960b">pFlow::AdamsBashforth3::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsBashforth3&quot;)</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth3_html"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth3.html">pFlow::AdamsBashforth3</a></div><div class="ttdoc">Third order Adams-Bashforth integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00073">AdamsBashforth3.hpp:73</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triple_html"><div class="ttname"><a href="classpFlow_1_1triple.html">pFlow::triple&lt; real &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_9fe92fbd2d3b874c8837b9b8f1c20305.html">AdamsBashforth3</a></li><li class="navelem"><a class="el" href="AdamsBashforth3_8hpp.html">AdamsBashforth3.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth4/AdamsBashforth4.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth4_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth4.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth4.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth4_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth4_2AdamsBashforth4_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth4_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_543abfe930aaf536629272b1dc711075.html">AdamsBashforth4</a></li><li class="navelem"><a class="el" href="AdamsBashforth4_8cpp.html">AdamsBashforth4.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth4/AdamsBashforth4.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth4\l/AdamsBashforth4.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsBashforth4.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsBashforth4_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,260 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth4/AdamsBashforth4.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth4_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth4.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth4_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsBashforth4_8hpp.html">AdamsBashforth4.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<a class="code" href="classpFlow_1_1AdamsBashforth4.html#a69029aec4bfcd45b781d1cfc65359fcb">pFlow::AdamsBashforth4::AdamsBashforth4</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#a69029aec4bfcd45b781d1cfc65359fcb"> 26</a></span>&#160;(</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;)</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; history_(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB4History&gt;</a>&gt;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;AB4History&quot;</span>),</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="structpFlow_1_1AB4History.html">AB4History</a>({<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>, <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>})))</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth4::predict</a></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#afb1938bc6cfc199cbd70f224040d4afc"> 49</a></span>&#160;(</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;)</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth4::correct</a></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 60</a></span>&#160;(</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;)</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 79</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth4::setInitialVals</a>(</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;}</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#a152b752a6b7b37e70fa5e7c99a484783"> 86</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth4::intAll</a>(</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; range activeRng)</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">auto</span> d_history = history_.deviceViewAll();</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="stringliteral">&quot;AdamsBashforth4::correct&quot;</span>,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){ </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; d_y[i] += dt*( </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(55.0 / 24.0) * d_dy[i]</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(59.0 / 24.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(37.0 / 24.0) * d_history[i].dy2_</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 9.0 / 24.0) * d_history[i].dy3_</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; );</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; d_history[i].dy3_ = d_history[i].dy2_;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; d_history[i].dy2_ = d_history[i].dy1_;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; d_history[i].dy1_ = d_dy[i];</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; });</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth4::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00091">AdamsBashforth4.hpp:91</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth4::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00049">AdamsBashforth4.cpp:49</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a69029aec4bfcd45b781d1cfc65359fcb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a69029aec4bfcd45b781d1cfc65359fcb">pFlow::AdamsBashforth4::AdamsBashforth4</a></div><div class="ttdeci">AdamsBashforth4(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00026">AdamsBashforth4.cpp:26</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aAdamsBashforth4_8hpp_html"><div class="ttname"><a href="AdamsBashforth4_8hpp.html">AdamsBashforth4.hpp</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth4::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00079">AdamsBashforth4.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB4History_html"><div class="ttname"><a href="structpFlow_1_1AB4History.html">pFlow::AB4History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00031">AdamsBashforth4.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth4::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00086">AdamsBashforth4.cpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth4::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00060">AdamsBashforth4.cpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_543abfe930aaf536629272b1dc711075.html">AdamsBashforth4</a></li><li class="navelem"><a class="el" href="AdamsBashforth4_8cpp.html">AdamsBashforth4.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,160 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth4/AdamsBashforth4.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth4_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">AdamsBashforth4.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth4.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth4_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth4_2AdamsBashforth4_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth4_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth4_2AdamsBashforth4_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth4_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpFlow_1_1AB4History.html">AB4History</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsBashforth4.html">AdamsBashforth4</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fourth order Adams-Bashforth integration method for solving ODE. <a href="classpFlow_1_1AdamsBashforth4.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a4719ac7229618782ebf68ae575a0b2e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iIstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a4719ac7229618782ebf68ae575a0b2e0">operator&gt;&gt;</a> (iIstream &amp;str, AB4History &amp;ab4)</td></tr>
<tr class="separator:a4719ac7229618782ebf68ae575a0b2e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa85d76c90b7f76203f3d8ff43c85855d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iOstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#aa85d76c90b7f76203f3d8ff43c85855d">operator&lt;&lt;</a> (iOstream &amp;str, const AB4History &amp;ab4)</td></tr>
<tr class="separator:aa85d76c90b7f76203f3d8ff43c85855d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_543abfe930aaf536629272b1dc711075.html">AdamsBashforth4</a></li><li class="navelem"><a class="el" href="AdamsBashforth4_8hpp.html">AdamsBashforth4.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,7 @@
var AdamsBashforth4_8hpp =
[
[ "AB4History", "structpFlow_1_1AB4History.html", "structpFlow_1_1AB4History" ],
[ "AdamsBashforth4", "classpFlow_1_1AdamsBashforth4.html", "classpFlow_1_1AdamsBashforth4" ],
[ "operator>>", "AdamsBashforth4_8hpp.html#a4719ac7229618782ebf68ae575a0b2e0", null ],
[ "operator<<", "AdamsBashforth4_8hpp.html#aa85d76c90b7f76203f3d8ff43c85855d", null ]
];

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth4/AdamsBashforth4.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth4\l/AdamsBashforth4.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsBashforth4\l/AdamsBashforth4.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsBashforth4_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsBashforth4/AdamsBashforth4.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth4\l/AdamsBashforth4.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,359 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth4/AdamsBashforth4.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth4_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth4.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth4_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsBashforth4_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsBashforth4_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB4History.html"> 31</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpFlow_1_1AB4History.html">AB4History</a></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;{</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="structpFlow_1_1AB4History.html#a8a588b9f1b4c4b66c2f3d025548fdd8e">TypeInfoNV</a>(<span class="stringliteral">&quot;AB4History&quot;</span>);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB4History.html#a419568ee851e74f5356a30fc5ce2eddf"> 35</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB4History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>={0,0,0};</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB4History.html#a63d020867c10f8f3fde329eb526a066b"> 36</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB4History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>={0,0,0};</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB4History.html#a63473eb8257f38bf8863a5c7bd03a330"> 37</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB4History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a>={0,0,0};</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;};</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a4719ac7229618782ebf68ae575a0b2e0"> 43</a></span>&#160;<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; <a class="code" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">operator&gt;&gt;</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; str, <a class="code" href="structpFlow_1_1AB4History.html">AB4History</a>&amp; ab4)</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">readBegin</a>(<span class="stringliteral">&quot;AB4History&quot;</span>);</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; str &gt;&gt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; str &gt;&gt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; str &gt;&gt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">readEnd</a>(<span class="stringliteral">&quot;AB4History&quot;</span>);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="namespacepFlow.html#aa85d76c90b7f76203f3d8ff43c85855d"> 60</a></span>&#160;<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; <a class="code" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">operator&lt;&lt;</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; str, <span class="keyword">const</span> <a class="code" href="structpFlow_1_1AB4History.html">AB4History</a>&amp; ab4)</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; str &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">token::BEGIN_LIST</a> &lt;&lt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab4.<a class="code" href="structpFlow_1_1AB4History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">token::END_LIST</a>; </div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html"> 77</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsBashforth4.html">AdamsBashforth4</a></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;:</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#afc6b0e49b18c62aa5edca2a8212c1292"> 84</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB4History&gt;</a>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#afc6b0e49b18c62aa5edca2a8212c1292">history_</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 91</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a7962c8cac5d82d0793dfeaba6c162f4d">TypeInfo</a>(<span class="stringliteral">&quot;AdamsBashforth4&quot;</span>);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a69029aec4bfcd45b781d1cfc65359fcb">AdamsBashforth4</a>(</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#a29f8a3197295f0ffa73d24bbacc6228c"> 107</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsBashforth4&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a8c3fff8fec7e5ef08cea578fed2e5fae">~AdamsBashforth4</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a1084909fe2f0dbd8f2af68ab4e94692a">add_vCtor</a>(</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html">AdamsBashforth4</a>,</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#afb1938bc6cfc199cbd70f224040d4afc">predict</a>(</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; y,</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 138</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; range activeRng);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; activeFunctor activeP );</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;};</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth4.html#a191dc9197b587f09bb5ee7989b0ba43e"> 162</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth4.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth4::intRange</a>(</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;{</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">auto</span> d_history = history_.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="stringliteral">&quot;AdamsBashforth4::correct&quot;</span>,</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; d_y[i] += dt*( </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(55.0 / 24.0) * d_dy[i]</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(59.0 / 24.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(37.0 / 24.0) * d_history[i].dy2_</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 9.0 / 24.0) * d_history[i].dy3_</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; );</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; d_history[i].dy3_ = d_history[i].dy2_;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; d_history[i].dy2_ = d_history[i].dy1_;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; d_history[i].dy1_ = d_dy[i];</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; });</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; </div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; </div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="preprocessor">#endif //__integration_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructpFlow_1_1AB4History_html_a63473eb8257f38bf8863a5c7bd03a330"><div class="ttname"><a href="structpFlow_1_1AB4History.html#a63473eb8257f38bf8863a5c7bd03a330">pFlow::AB4History::dy3_</a></div><div class="ttdeci">realx3 dy3_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00037">AdamsBashforth4.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth4::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00162">AdamsBashforth4.hpp:162</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_aecfc9cc0a499c7d44de6a7562bcfea3f"><div class="ttname"><a href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">pFlow::iIstream::readBegin</a></div><div class="ttdeci">bool readBegin(const char *funcName)</div><div class="ttdoc">Begin read of data chunk, starts with '('.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00238">iIstream.cpp:238</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_afc491fbd69e70abdcb02a8cd3ce2939e"><div class="ttname"><a href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div><div class="ttdeci">#define INLINE_FUNCTION</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00066">pFlowMacros.hpp:66</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsBashforth4::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00107">AdamsBashforth4.hpp:107</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField&lt; T, void &gt;::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_a8d82c951160ac1444ee2a2d9ae1ecb11"><div class="ttname"><a href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">pFlow::iIstream::readEnd</a></div><div class="ttdeci">bool readEnd(const char *funcName)</div><div class="ttdoc">End read of data chunk, ends with ')' return true or FatalIOError.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00258">iIstream.cpp:258</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a922d2784284e8f6ee4009c3d92ba48b6"><div class="ttname"><a href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a></div><div class="ttdeci">#define FUNCTION_NAME</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00029">pFlowMacros.hpp:29</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a1084909fe2f0dbd8f2af68ab4e94692a"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a1084909fe2f0dbd8f2af68ab4e94692a">pFlow::AdamsBashforth4::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsBashforth4, word)</div><div class="ttdoc">Add a this to the virtual constructor table.</div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">pFlow::token::SPACE</a></div><div class="ttdeci">@ SPACE</div><div class="ttdoc">Nul character.</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00086">token.hpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a7962c8cac5d82d0793dfeaba6c162f4d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a7962c8cac5d82d0793dfeaba6c162f4d">pFlow::AdamsBashforth4::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsBashforth4&quot;)</div><div class="ttdoc">Type info.</div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a367eb3425fc4e8270e2aa961df8ac8a5"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">pFlow::IOstream::check</a></div><div class="ttdeci">virtual bool check(const char *operation) const</div><div class="ttdoc">Check IOstream status for given operation.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00042">IOstream.cpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a8c3fff8fec7e5ef08cea578fed2e5fae"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a8c3fff8fec7e5ef08cea578fed2e5fae">pFlow::AdamsBashforth4::~AdamsBashforth4</a></div><div class="ttdeci">virtual ~AdamsBashforth4()=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth4::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00091">AdamsBashforth4.hpp:91</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth4::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00049">AdamsBashforth4.cpp:49</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB4History_html_a8a588b9f1b4c4b66c2f3d025548fdd8e"><div class="ttname"><a href="structpFlow_1_1AB4History.html#a8a588b9f1b4c4b66c2f3d025548fdd8e">pFlow::AB4History::TypeInfoNV</a></div><div class="ttdeci">TypeInfoNV(&quot;AB4History&quot;)</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsBashforth4::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00138">AdamsBashforth4.hpp:138</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a85ed561d066dae339196cd058783674f"><div class="ttname"><a href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">pFlow::operator&gt;&gt;</a></div><div class="ttdeci">INLINE_FUNCTION iIstream &amp; operator&gt;&gt;(iIstream &amp;str, AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00041">AdamsBashforth3.hpp:41</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">pFlow::token::END_LIST</a></div><div class="ttdeci">@ END_LIST</div><div class="ttdoc">Begin list [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00092">token.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html">pFlow::AdamsBashforth4</a></div><div class="ttdoc">Fourth order Adams-Bashforth integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00077">AdamsBashforth4.hpp:77</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a148d74ad0977268be8ea8b26a147f619"><div class="ttname"><a href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">pFlow::operator&lt;&lt;</a></div><div class="ttdeci">INLINE_FUNCTION iOstream &amp; operator&lt;&lt;(iOstream &amp;str, const AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00057">AdamsBashforth3.hpp:57</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a69029aec4bfcd45b781d1cfc65359fcb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a69029aec4bfcd45b781d1cfc65359fcb">pFlow::AdamsBashforth4::AdamsBashforth4</a></div><div class="ttdeci">AdamsBashforth4(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00026">AdamsBashforth4.cpp:26</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">pFlow::token::BEGIN_LIST</a></div><div class="ttdeci">@ BEGIN_LIST</div><div class="ttdoc">End entry [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00091">token.hpp:91</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth4::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00079">AdamsBashforth4.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_afc6b0e49b18c62aa5edca2a8212c1292"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#afc6b0e49b18c62aa5edca2a8212c1292">pFlow::AdamsBashforth4::history_</a></div><div class="ttdeci">pointField&lt; VectorSingle, AB4History &gt; &amp; history_</div><div class="ttdoc">Integration history.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00084">AdamsBashforth4.hpp:84</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB4History_html_a419568ee851e74f5356a30fc5ce2eddf"><div class="ttname"><a href="structpFlow_1_1AB4History.html#a419568ee851e74f5356a30fc5ce2eddf">pFlow::AB4History::dy1_</a></div><div class="ttdeci">realx3 dy1_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00035">AdamsBashforth4.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triple_html"><div class="ttname"><a href="classpFlow_1_1triple.html">pFlow::triple&lt; real &gt;</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB4History_html"><div class="ttname"><a href="structpFlow_1_1AB4History.html">pFlow::AB4History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00031">AdamsBashforth4.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth4::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00086">AdamsBashforth4.cpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB4History_html_a63d020867c10f8f3fde329eb526a066b"><div class="ttname"><a href="structpFlow_1_1AB4History.html#a63d020867c10f8f3fde329eb526a066b">pFlow::AB4History::dy2_</a></div><div class="ttdeci">realx3 dy2_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8hpp_source.html#l00036">AdamsBashforth4.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth4_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth4::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth4_8cpp_source.html#l00060">AdamsBashforth4.cpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_543abfe930aaf536629272b1dc711075.html">AdamsBashforth4</a></li><li class="navelem"><a class="el" href="AdamsBashforth4_8hpp.html">AdamsBashforth4.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth5/AdamsBashforth5.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth5_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth5.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth5.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth5_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth5_2AdamsBashforth5_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth5_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_d19bd4f5a5ffc8e61ede52143ccad050.html">AdamsBashforth5</a></li><li class="navelem"><a class="el" href="AdamsBashforth5_8cpp.html">AdamsBashforth5.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth5/AdamsBashforth5.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth5\l/AdamsBashforth5.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsBashforth5.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsBashforth5_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,257 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth5/AdamsBashforth5.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth5_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth5.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth5_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsBashforth5_8hpp.html">AdamsBashforth5.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<a class="code" href="classpFlow_1_1AdamsBashforth5.html#a129b1fb5fcc9dfcc9c803d8b13758cbc">pFlow::AdamsBashforth5::AdamsBashforth5</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a129b1fb5fcc9dfcc9c803d8b13758cbc"> 26</a></span>&#160;(</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;)</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; history_(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB5History&gt;</a>&gt;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;AB5History&quot;</span>),</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="structpFlow_1_1AB5History.html">AB5History</a>({<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,<a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>, <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>})))</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth5::predict</a></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#afb1938bc6cfc199cbd70f224040d4afc"> 49</a></span>&#160;(</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;)</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth5::correct</a></div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 60</a></span>&#160;(</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;)</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 79</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth5::setInitialVals</a>(</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;}</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a152b752a6b7b37e70fa5e7c99a484783"> 86</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth5::intAll</a>(</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; range activeRng)</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">auto</span> d_history = history_.deviceViewAll();</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="stringliteral">&quot;AdamsBashforth5::correct&quot;</span>,</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){ </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; d_y[i] += dt*( </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1901.0 / 720.0) * d_dy[i]</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(2774.0 / 720.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(2616.0 / 720.0) * d_history[i].dy2_</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1274.0 / 720.0) * d_history[i].dy3_</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 251.0 / 720.0) * d_history[i].dy4_</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; );</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; d_history[i] = {d_dy[i] ,d_history[i].dy1_, d_history[i].dy2_, d_history[i].dy3_};</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; });</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a129b1fb5fcc9dfcc9c803d8b13758cbc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a129b1fb5fcc9dfcc9c803d8b13758cbc">pFlow::AdamsBashforth5::AdamsBashforth5</a></div><div class="ttdeci">AdamsBashforth5(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00026">AdamsBashforth5.cpp:26</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth5::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00079">AdamsBashforth5.cpp:79</a></div></div>
<div class="ttc" id="aAdamsBashforth5_8hpp_html"><div class="ttname"><a href="AdamsBashforth5_8hpp.html">AdamsBashforth5.hpp</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html"><div class="ttname"><a href="structpFlow_1_1AB5History.html">pFlow::AB5History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00031">AdamsBashforth5.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth5::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00086">AdamsBashforth5.cpp:86</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth5::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00060">AdamsBashforth5.cpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth5::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00093">AdamsBashforth5.hpp:93</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth5::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00049">AdamsBashforth5.cpp:49</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_d19bd4f5a5ffc8e61ede52143ccad050.html">AdamsBashforth5</a></li><li class="navelem"><a class="el" href="AdamsBashforth5_8cpp.html">AdamsBashforth5.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,160 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth5/AdamsBashforth5.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth5_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">AdamsBashforth5.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsBashforth5.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth5_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth5_2AdamsBashforth5_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsBashforth5_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsBashforth5_2AdamsBashforth5_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsBashforth5_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpFlow_1_1AB5History.html">AB5History</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsBashforth5.html">AdamsBashforth5</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fifth order Adams-Bashforth integration method for solving ODE. <a href="classpFlow_1_1AdamsBashforth5.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a91f6f61249c02b68680178571f3ba1e4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iIstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a91f6f61249c02b68680178571f3ba1e4">operator&gt;&gt;</a> (iIstream &amp;str, AB5History &amp;ab5)</td></tr>
<tr class="separator:a91f6f61249c02b68680178571f3ba1e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aecbe4c42d601cec6361303d1c1db7ddc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a> iOstream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#aecbe4c42d601cec6361303d1c1db7ddc">operator&lt;&lt;</a> (iOstream &amp;str, const AB5History &amp;ab5)</td></tr>
<tr class="separator:aecbe4c42d601cec6361303d1c1db7ddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_d19bd4f5a5ffc8e61ede52143ccad050.html">AdamsBashforth5</a></li><li class="navelem"><a class="el" href="AdamsBashforth5_8hpp.html">AdamsBashforth5.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,7 @@
var AdamsBashforth5_8hpp =
[
[ "AB5History", "structpFlow_1_1AB5History.html", "structpFlow_1_1AB5History" ],
[ "AdamsBashforth5", "classpFlow_1_1AdamsBashforth5.html", "classpFlow_1_1AdamsBashforth5" ],
[ "operator>>", "AdamsBashforth5_8hpp.html#a91f6f61249c02b68680178571f3ba1e4", null ],
[ "operator<<", "AdamsBashforth5_8hpp.html#aecbe4c42d601cec6361303d1c1db7ddc", null ]
];

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsBashforth5/AdamsBashforth5.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth5\l/AdamsBashforth5.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsBashforth5\l/AdamsBashforth5.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsBashforth5_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsBashforth5/AdamsBashforth5.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsBashforth5\l/AdamsBashforth5.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,361 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsBashforth5/AdamsBashforth5.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsBashforth5_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsBashforth5.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsBashforth5_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsBashforth5_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsBashforth5_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB5History.html"> 31</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structpFlow_1_1AB5History.html">AB5History</a></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;{</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="structpFlow_1_1AB5History.html#a5de7b6e3fd724f7ef57a928b5eef18f7">TypeInfoNV</a>(<span class="stringliteral">&quot;AB5History&quot;</span>);</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB5History.html#a419568ee851e74f5356a30fc5ce2eddf"> 35</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB5History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>={0,0,0};</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB5History.html#a63d020867c10f8f3fde329eb526a066b"> 36</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB5History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>={0,0,0};</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB5History.html#a63473eb8257f38bf8863a5c7bd03a330"> 37</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB5History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a>={0,0,0};</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structpFlow_1_1AB5History.html#a5025c11bc753cdbe183c1c61d2687762"> 38</a></span>&#160; <a class="code" href="classpFlow_1_1triple.html">realx3</a> <a class="code" href="structpFlow_1_1AB5History.html#a5025c11bc753cdbe183c1c61d2687762">dy4_</a>={0,0,0};</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;};</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a91f6f61249c02b68680178571f3ba1e4"> 43</a></span>&#160;<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; <a class="code" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">operator&gt;&gt;</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; str, <a class="code" href="structpFlow_1_1AB5History.html">AB5History</a>&amp; ab5)</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">readBegin</a>(<span class="stringliteral">&quot;AB5History&quot;</span>);</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; str &gt;&gt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; str &gt;&gt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; str &gt;&gt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; str &gt;&gt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a5025c11bc753cdbe183c1c61d2687762">dy4_</a>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; str.<a class="code" href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">readEnd</a>(<span class="stringliteral">&quot;AB5History&quot;</span>);</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<a class="code" href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="namespacepFlow.html#aecbe4c42d601cec6361303d1c1db7ddc"> 61</a></span>&#160;<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; <a class="code" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">operator&lt;&lt;</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; str, <span class="keyword">const</span> <a class="code" href="structpFlow_1_1AB5History.html">AB5History</a>&amp; ab5)</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;{</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; str &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">token::BEGIN_LIST</a> &lt;&lt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a419568ee851e74f5356a30fc5ce2eddf">dy1_</a></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a63d020867c10f8f3fde329eb526a066b">dy2_</a></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a63473eb8257f38bf8863a5c7bd03a330">dy3_</a></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">token::SPACE</a> &lt;&lt; ab5.<a class="code" href="structpFlow_1_1AB5History.html#a5025c11bc753cdbe183c1c61d2687762">dy4_</a></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; &lt;&lt; <a class="code" href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">token::END_LIST</a>; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; str.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> str;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;}</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html"> 79</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsBashforth5.html">AdamsBashforth5</a></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;:</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a3b54213050031687c798fa68961a9296"> 86</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">pointField&lt;VectorSingle,AB5History&gt;</a>&amp; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a3b54213050031687c798fa68961a9296">history_</a>;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 93</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a3807bf6f59fc7de37ab4af95364335f2">TypeInfo</a>(<span class="stringliteral">&quot;AdamsBashforth5&quot;</span>);</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a129b1fb5fcc9dfcc9c803d8b13758cbc">AdamsBashforth5</a>(</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a29f8a3197295f0ffa73d24bbacc6228c"> 108</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsBashforth5&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a889e2aac594d1f14b8d243497b521cb8">~AdamsBashforth5</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a12a13b4372ff9e69e5e921529b13ac17">add_vCtor</a>(</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html">AdamsBashforth5</a>,</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#afb1938bc6cfc199cbd70f224040d4afc">predict</a>(</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dt),</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(y),</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; <a class="code" href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a>(dy)) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a> &amp; y,</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 138</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; range activeRng);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; activeFunctor activeP );</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;};</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsBashforth5.html#a191dc9197b587f09bb5ee7989b0ba43e"> 162</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsBashforth5.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth5::intRange</a>(</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;{</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">auto</span> d_history = history_.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="stringliteral">&quot;AdamsBashforth5::correct&quot;</span>,</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; {</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; d_y[i] += dt*( </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1901.0 / 720.0) * d_dy[i]</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(2774.0 / 720.0) * d_history[i].dy1_ </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(2616.0 / 720.0) * d_history[i].dy2_</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1274.0 / 720.0) * d_history[i].dy3_</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 251.0 / 720.0) * d_history[i].dy4_</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; );</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; d_history[i] = {d_dy[i] ,d_history[i].dy1_, d_history[i].dy2_, d_history[i].dy3_};</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; });</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; </div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;}</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; </div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; </div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor">#endif //</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1iIstream_html_aecfc9cc0a499c7d44de6a7562bcfea3f"><div class="ttname"><a href="classpFlow_1_1iIstream.html#aecfc9cc0a499c7d44de6a7562bcfea3f">pFlow::iIstream::readBegin</a></div><div class="ttdeci">bool readBegin(const char *funcName)</div><div class="ttdoc">Begin read of data chunk, starts with '('.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00238">iIstream.cpp:238</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_afc491fbd69e70abdcb02a8cd3ce2939e"><div class="ttname"><a href="pFlowMacros_8hpp.html#afc491fbd69e70abdcb02a8cd3ce2939e">INLINE_FUNCTION</a></div><div class="ttdeci">#define INLINE_FUNCTION</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00066">pFlowMacros.hpp:66</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a12a13b4372ff9e69e5e921529b13ac17"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a12a13b4372ff9e69e5e921529b13ac17">pFlow::AdamsBashforth5::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsBashforth5, word)</div><div class="ttdoc">Add this to the virtual constructor table.</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a3b54213050031687c798fa68961a9296"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a3b54213050031687c798fa68961a9296">pFlow::AdamsBashforth5::history_</a></div><div class="ttdeci">pointField&lt; VectorSingle, AB5History &gt; &amp; history_</div><div class="ttdoc">Integration history.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00086">AdamsBashforth5.hpp:86</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a86d500a34c624c2cae56bc25a31b12f3"><div class="ttname"><a href="pFlowMacros_8hpp.html#a86d500a34c624c2cae56bc25a31b12f3">UNUSED</a></div><div class="ttdeci">#define UNUSED(x)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00035">pFlowMacros.hpp:35</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html_a5025c11bc753cdbe183c1c61d2687762"><div class="ttname"><a href="structpFlow_1_1AB5History.html#a5025c11bc753cdbe183c1c61d2687762">pFlow::AB5History::dy4_</a></div><div class="ttdeci">realx3 dy4_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00038">AdamsBashforth5.hpp:38</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a129b1fb5fcc9dfcc9c803d8b13758cbc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a129b1fb5fcc9dfcc9c803d8b13758cbc">pFlow::AdamsBashforth5::AdamsBashforth5</a></div><div class="ttdeci">AdamsBashforth5(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00026">AdamsBashforth5.cpp:26</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField&lt; T, void &gt;::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsBashforth5::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00079">AdamsBashforth5.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_a8d82c951160ac1444ee2a2d9ae1ecb11"><div class="ttname"><a href="classpFlow_1_1iIstream.html#a8d82c951160ac1444ee2a2d9ae1ecb11">pFlow::iIstream::readEnd</a></div><div class="ttdeci">bool readEnd(const char *funcName)</div><div class="ttdoc">End read of data chunk, ends with ')' return true or FatalIOError.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00258">iIstream.cpp:258</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a922d2784284e8f6ee4009c3d92ba48b6"><div class="ttname"><a href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a></div><div class="ttdeci">#define FUNCTION_NAME</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00029">pFlowMacros.hpp:29</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html_a63473eb8257f38bf8863a5c7bd03a330"><div class="ttname"><a href="structpFlow_1_1AB5History.html#a63473eb8257f38bf8863a5c7bd03a330">pFlow::AB5History::dy3_</a></div><div class="ttdeci">realx3 dy3_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00037">AdamsBashforth5.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ac08dae7edcb5c5bb959fee5971fbad95">pFlow::token::SPACE</a></div><div class="ttdeci">@ SPACE</div><div class="ttdoc">Nul character.</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00086">token.hpp:86</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html">pFlow::AdamsBashforth5</a></div><div class="ttdoc">Fifth order Adams-Bashforth integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00079">AdamsBashforth5.hpp:79</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a367eb3425fc4e8270e2aa961df8ac8a5"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">pFlow::IOstream::check</a></div><div class="ttdeci">virtual bool check(const char *operation) const</div><div class="ttdoc">Check IOstream status for given operation.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00042">IOstream.cpp:42</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html"><div class="ttname"><a href="structpFlow_1_1AB5History.html">pFlow::AB5History</a></div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00031">AdamsBashforth5.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html_a63d020867c10f8f3fde329eb526a066b"><div class="ttname"><a href="structpFlow_1_1AB5History.html#a63d020867c10f8f3fde329eb526a066b">pFlow::AB5History::dy2_</a></div><div class="ttdeci">realx3 dy2_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00036">AdamsBashforth5.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsBashforth5::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00086">AdamsBashforth5.cpp:86</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html_a419568ee851e74f5356a30fc5ce2eddf"><div class="ttname"><a href="structpFlow_1_1AB5History.html#a419568ee851e74f5356a30fc5ce2eddf">pFlow::AB5History::dy1_</a></div><div class="ttdeci">realx3 dy1_</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00035">AdamsBashforth5.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsBashforth5::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00060">AdamsBashforth5.cpp:60</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a85ed561d066dae339196cd058783674f"><div class="ttname"><a href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">pFlow::operator&gt;&gt;</a></div><div class="ttdeci">INLINE_FUNCTION iIstream &amp; operator&gt;&gt;(iIstream &amp;str, AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00041">AdamsBashforth3.hpp:41</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31ab0421ccee09cdeadea4bc12e7f38be24">pFlow::token::END_LIST</a></div><div class="ttdeci">@ END_LIST</div><div class="ttdoc">Begin list [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00092">token.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsBashforth5::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00108">AdamsBashforth5.hpp:108</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsBashforth5::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00162">AdamsBashforth5.hpp:162</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a148d74ad0977268be8ea8b26a147f619"><div class="ttname"><a href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">pFlow::operator&lt;&lt;</a></div><div class="ttdeci">INLINE_FUNCTION iOstream &amp; operator&lt;&lt;(iOstream &amp;str, const AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00057">AdamsBashforth3.hpp:57</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a889e2aac594d1f14b8d243497b521cb8"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a889e2aac594d1f14b8d243497b521cb8">pFlow::AdamsBashforth5::~AdamsBashforth5</a></div><div class="ttdeci">virtual ~AdamsBashforth5()=default</div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1token_html_a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb"><div class="ttname"><a href="classpFlow_1_1token.html#a4aba281d025f1d580c3835d67656fd31a8042f41e6dc49acd5cf4e86844f79acb">pFlow::token::BEGIN_LIST</a></div><div class="ttdeci">@ BEGIN_LIST</div><div class="ttdoc">End entry [isseparator].</div><div class="ttdef"><b>Definition:</b> <a href="token_8hpp_source.html#l00091">token.hpp:91</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_a3807bf6f59fc7de37ab4af95364335f2"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#a3807bf6f59fc7de37ab4af95364335f2">pFlow::AdamsBashforth5::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsBashforth5&quot;)</div><div class="ttdoc">Type info.</div></div>
<div class="ttc" id="aclasspFlow_1_1triple_html"><div class="ttname"><a href="classpFlow_1_1triple.html">pFlow::triple&lt; real &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsBashforth5::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00093">AdamsBashforth5.hpp:93</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_afb1938bc6cfc199cbd70f224040d4afc"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#afb1938bc6cfc199cbd70f224040d4afc">pFlow::AdamsBashforth5::predict</a></div><div class="ttdeci">bool predict(real UNUSED(dt), realx3Vector_D &amp;UNUSED(y), realx3Vector_D &amp;UNUSED(dy)) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8cpp_source.html#l00049">AdamsBashforth5.cpp:49</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsBashforth5_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsBashforth5.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsBashforth5::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth5_8hpp_source.html#l00138">AdamsBashforth5.hpp:138</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div class="ttc" id="astructpFlow_1_1AB5History_html_a5de7b6e3fd724f7ef57a928b5eef18f7"><div class="ttname"><a href="structpFlow_1_1AB5History.html#a5de7b6e3fd724f7ef57a928b5eef18f7">pFlow::AB5History::TypeInfoNV</a></div><div class="ttdeci">TypeInfoNV(&quot;AB5History&quot;)</div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_d19bd4f5a5ffc8e61ede52143ccad050.html">AdamsBashforth5</a></li><li class="navelem"><a class="el" href="AdamsBashforth5_8hpp.html">AdamsBashforth5.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton3/AdamsMoulton3.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton3_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton3.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton3.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton3_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton3_2AdamsMoulton3_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton3_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_ed4d7dc116afda9346717c943a5846fb.html">AdamsMoulton3</a></li><li class="navelem"><a class="el" href="AdamsMoulton3_8cpp.html">AdamsMoulton3.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton3/AdamsMoulton3.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton3\l/AdamsMoulton3.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsMoulton3.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsMoulton3_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,321 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton3/AdamsMoulton3.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton3_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton3.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton3_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsMoulton3_8hpp.html">AdamsMoulton3.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">//const real AB2_coef[] = { 3.0 / 2.0, 1.0 / 2.0};</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<a class="code" href="classpFlow_1_1AdamsMoulton3.html#ad0d8f6814b44931c5a758e93505e0a6e">pFlow::AdamsMoulton3::AdamsMoulton3</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#ad0d8f6814b44931c5a758e93505e0a6e"> 26</a></span>&#160;(</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;)</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; y0_(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;y0&quot;</span>),</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">false</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; )</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; ),</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; dy0_(</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy0&quot;</span>),</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; )</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; ),</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; dy1_(</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy1&quot;</span>),</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; )</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; )</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;{</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton3::predict</a></div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a565b658e8641f9fd9a6a5c8e93089d5d"> 73</a></span>&#160;(</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;)</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> predictAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> predictRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; }</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton3::correct</a></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 93</a></span>&#160;(</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;)</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; {</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;}</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 111</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton3::setInitialVals</a>(</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;{</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">insertSetElement</a>(newIndices, y);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;}</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#aa601d0785e68d2298567b2861996f956"> 120</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton3::predictAll</a>(</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; range activeRng)</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;{</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">auto</span> d_dy1= dy1_.deviceViewAll();</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="stringliteral">&quot;AdamsMoulton3::predict&quot;</span>,</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; d_y[i] = d_y0[i] + dt*(<span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(3.0 / 2.0) * d_dy[i] - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.0 / 2.0) * d_dy1[i]);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; });</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a152b752a6b7b37e70fa5e7c99a484783"> 146</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton3::intAll</a>(</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; range activeRng)</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;{</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="stringliteral">&quot;AdamsMoulton3::correct&quot;</span>,</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(5.0/12.0)*d_dy[i] </div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(8.0/12.0)*d_dy0[i] </div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.0/12.0)*d_dy1[i]);</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; });</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aAdamsMoulton3_8hpp_html"><div class="ttname"><a href="AdamsMoulton3_8hpp.html">AdamsMoulton3.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ad0d8f6814b44931c5a758e93505e0a6e"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ad0d8f6814b44931c5a758e93505e0a6e">pFlow::AdamsMoulton3::AdamsMoulton3</a></div><div class="ttdeci">AdamsMoulton3(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00026">AdamsMoulton3.cpp:26</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton3::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00146">AdamsMoulton3.cpp:146</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton3::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00056">AdamsMoulton3.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae97e2279d720194a68a594a3edbc6763"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">pFlow::internalField::insertSetElement</a></div><div class="ttdeci">bool insertSetElement(uint32IndexContainer indices, const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00181">internalField.hpp:181</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton3::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00111">AdamsMoulton3.cpp:111</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton3::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00120">AdamsMoulton3.cpp:120</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton3::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00073">AdamsMoulton3.cpp:73</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton3::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00043">AdamsMoulton3.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton3::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00093">AdamsMoulton3.cpp:93</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_ed4d7dc116afda9346717c943a5846fb.html">AdamsMoulton3</a></li><li class="navelem"><a class="el" href="AdamsMoulton3_8cpp.html">AdamsMoulton3.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton3/AdamsMoulton3.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton3_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">AdamsMoulton3.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton3.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton3_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton3_2AdamsMoulton3_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton3_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton3_2AdamsMoulton3_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton3_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsMoulton3.html">AdamsMoulton3</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Third order Adams-Moulton integration method for solving ODE. <a href="classpFlow_1_1AdamsMoulton3.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_ed4d7dc116afda9346717c943a5846fb.html">AdamsMoulton3</a></li><li class="navelem"><a class="el" href="AdamsMoulton3_8hpp.html">AdamsMoulton3.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton3/AdamsMoulton3.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton3\l/AdamsMoulton3.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsMoulton3\l/AdamsMoulton3.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsMoulton3_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsMoulton3/AdamsMoulton3.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton3\l/AdamsMoulton3.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,359 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton3/AdamsMoulton3.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton3_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton3.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton3_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsMoulton3_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsMoulton3_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html"> 36</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsMoulton3.html">AdamsMoulton3</a></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026"> 43</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a698a75833834ae70210d306e047cb196"> 46</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a698a75833834ae70210d306e047cb196">dy0_</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a46c37b69200a2f4faef9c149a25bab60"> 49</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 56</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a6cac55f7ea7995badad5929266adf2f0">TypeInfo</a>(<span class="stringliteral">&quot;AdamsMoulton3&quot;</span>);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ad0d8f6814b44931c5a758e93505e0a6e">AdamsMoulton3</a>(</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a29f8a3197295f0ffa73d24bbacc6228c"> 71</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsMoulton3&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ad838a4787dffad965f30e939d10c4c57">~AdamsMoulton3</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a932382285aa9c91af3a87cabdde3b7d0">add_vCtor</a>(</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html">AdamsMoulton3</a>,</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a565b658e8641f9fd9a6a5c8e93089d5d">predict</a>(</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 102</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#aa601d0785e68d2298567b2861996f956">predictAll</a>(</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; range activeRng);</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#aaa8ac3ebc39d8702e08e1f71c5843974">predictRange</a>(</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; activeFunctor activeP);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; range activeRng);</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; activeFunctor activeP);</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;};</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#aaa8ac3ebc39d8702e08e1f71c5843974"> 141</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#aaa8ac3ebc39d8702e08e1f71c5843974">AdamsMoulton3::predictRange</a>(</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; activeFunctor activeP)</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">auto</span> d_y0 = <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">auto</span> d_dy0 = <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a698a75833834ae70210d306e047cb196">dy0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">auto</span> d_dy1= <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; </div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="stringliteral">&quot;AdamsMoulton3::predictRange&quot;</span>,</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span>(activeP(i))</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; {</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; d_y[i] = d_y0[i] + </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; dt*</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; (</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(3.0 / 2.0) * d_dy[i] </div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.0 / 2.0) * d_dy1[i]</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; );</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; });</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton3.html#a191dc9197b587f09bb5ee7989b0ba43e"> 178</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton3.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton3::intRange</a>(</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; activeFunctor activeP)</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;{</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; </div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; </div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="stringliteral">&quot;AdamsMoulton3::correct&quot;</span>,</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; {</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(5.0/12.0)*d_dy[i] </div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(8.0/12.0)*d_dy0[i] </div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(1.0/12.0)*d_dy1[i]);</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; });</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; </div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;}</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; </div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; </div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="preprocessor">#endif //</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a6cac55f7ea7995badad5929266adf2f0"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a6cac55f7ea7995badad5929266adf2f0">pFlow::AdamsMoulton3::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsMoulton3&quot;)</div><div class="ttdoc">Type info.</div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a932382285aa9c91af3a87cabdde3b7d0"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a932382285aa9c91af3a87cabdde3b7d0">pFlow::AdamsMoulton3::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsMoulton3, word)</div><div class="ttdoc">Add this to the virtual constructor table.</div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ad0d8f6814b44931c5a758e93505e0a6e"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ad0d8f6814b44931c5a758e93505e0a6e">pFlow::AdamsMoulton3::AdamsMoulton3</a></div><div class="ttdeci">AdamsMoulton3(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00026">AdamsMoulton3.cpp:26</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton3::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00146">AdamsMoulton3.cpp:146</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton3::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00056">AdamsMoulton3.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_aaa8ac3ebc39d8702e08e1f71c5843974"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#aaa8ac3ebc39d8702e08e1f71c5843974">pFlow::AdamsMoulton3::predictRange</a></div><div class="ttdeci">bool predictRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Prediction step on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00141">AdamsMoulton3.hpp:141</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton3::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00111">AdamsMoulton3.cpp:111</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a698a75833834ae70210d306e047cb196"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a698a75833834ae70210d306e047cb196">pFlow::AdamsMoulton3::dy0_</a></div><div class="ttdeci">realx3PointField_D &amp; dy0_</div><div class="ttdoc">dy at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00046">AdamsMoulton3.hpp:46</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsMoulton3::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00071">AdamsMoulton3.hpp:71</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton3::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00178">AdamsMoulton3.hpp:178</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton3::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00120">AdamsMoulton3.cpp:120</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a46c37b69200a2f4faef9c149a25bab60"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a46c37b69200a2f4faef9c149a25bab60">pFlow::AdamsMoulton3::dy1_</a></div><div class="ttdeci">realx3PointField_D &amp; dy1_</div><div class="ttdoc">dy at time t-dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00049">AdamsMoulton3.hpp:49</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton3::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00073">AdamsMoulton3.cpp:73</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton3::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00043">AdamsMoulton3.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton3::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8cpp_source.html#l00093">AdamsMoulton3.cpp:93</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_ad838a4787dffad965f30e939d10c4c57"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#ad838a4787dffad965f30e939d10c4c57">pFlow::AdamsMoulton3::~AdamsMoulton3</a></div><div class="ttdeci">virtual ~AdamsMoulton3()=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html">pFlow::AdamsMoulton3</a></div><div class="ttdoc">Third order Adams-Moulton integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00036">AdamsMoulton3.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton3_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton3.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsMoulton3::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton3_8hpp_source.html#l00102">AdamsMoulton3.hpp:102</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_ed4d7dc116afda9346717c943a5846fb.html">AdamsMoulton3</a></li><li class="navelem"><a class="el" href="AdamsMoulton3_8hpp.html">AdamsMoulton3.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton4/AdamsMoulton4.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton4_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton4.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton4.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton4_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton4_2AdamsMoulton4_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton4_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_43495b2651badf01027c38c791c49779.html">AdamsMoulton4</a></li><li class="navelem"><a class="el" href="AdamsMoulton4_8cpp.html">AdamsMoulton4.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton4/AdamsMoulton4.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton4\l/AdamsMoulton4.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsMoulton4.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsMoulton4_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,340 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton4/AdamsMoulton4.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton4_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton4.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton4_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsMoulton4_8hpp.html">AdamsMoulton4.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">//const real AB2_coef[] = { 3.0 / 2.0, 1.0 / 2.0};</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<a class="code" href="classpFlow_1_1AdamsMoulton4.html#a34d4c804534cb2f04fc68174b7282653">pFlow::AdamsMoulton4::AdamsMoulton4</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a34d4c804534cb2f04fc68174b7282653"> 26</a></span>&#160;(</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;)</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; y0_(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;y0&quot;</span>),</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">false</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; )</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; ),</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; dy0_(</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy0&quot;</span>),</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; )</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; ),</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; dy1_(</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy1&quot;</span>),</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; )</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; ),</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; dy2_(</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy2&quot;</span>),</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; )</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; )</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;{</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;}</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton4::predict</a></div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a565b658e8641f9fd9a6a5c8e93089d5d"> 84</a></span>&#160;(</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;)</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> predictAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> predictRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;}</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton4::correct</a></div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 104</a></span>&#160;(</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;)</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;{</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; {</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 122</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton4::setInitialVals</a>(</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;{</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">insertSetElement</a>(newIndices, y);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;}</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#aa601d0785e68d2298567b2861996f956"> 131</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton4::predictAll</a>(</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; range activeRng)</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="stringliteral">&quot;AdamsMoulton4::predict&quot;</span>,</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; d_y[i] = d_y0[i] + dt*(</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(23.0 /12.0 ) * d_dy[i] </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(16.0 / 12.0) * d_dy1[i]</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 5.0 / 12.0) * d_dy2[i]);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; });</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;}</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a152b752a6b7b37e70fa5e7c99a484783"> 161</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton4::intAll</a>(</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; range activeRng)</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;{</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="stringliteral">&quot;AdamsMoulton4::correct&quot;</span>,</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(9.0/24.0)*d_dy[i] </div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(19.0/24.0)*d_dy0[i] </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 5.0/24.0)*d_dy1[i]</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 1.0/24.0)*d_dy2[i]);</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; </div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; d_dy2[i]= d_dy1[i];</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; });</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; </div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a34d4c804534cb2f04fc68174b7282653"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a34d4c804534cb2f04fc68174b7282653">pFlow::AdamsMoulton4::AdamsMoulton4</a></div><div class="ttdeci">AdamsMoulton4(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00026">AdamsMoulton4.cpp:26</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton4::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00043">AdamsMoulton4.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton4::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00104">AdamsMoulton4.cpp:104</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton4::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00084">AdamsMoulton4.cpp:84</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton4::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00122">AdamsMoulton4.cpp:122</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae97e2279d720194a68a594a3edbc6763"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">pFlow::internalField::insertSetElement</a></div><div class="ttdeci">bool insertSetElement(uint32IndexContainer indices, const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00181">internalField.hpp:181</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aAdamsMoulton4_8hpp_html"><div class="ttname"><a href="AdamsMoulton4_8hpp.html">AdamsMoulton4.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton4::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00059">AdamsMoulton4.hpp:59</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton4::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00131">AdamsMoulton4.cpp:131</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton4::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00161">AdamsMoulton4.cpp:161</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_43495b2651badf01027c38c791c49779.html">AdamsMoulton4</a></li><li class="navelem"><a class="el" href="AdamsMoulton4_8cpp.html">AdamsMoulton4.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton4/AdamsMoulton4.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton4_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">AdamsMoulton4.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton4.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton4_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton4_2AdamsMoulton4_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton4_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton4_2AdamsMoulton4_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton4_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsMoulton4.html">AdamsMoulton4</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fourth order Adams-Moulton integration method for solving ODE. <a href="classpFlow_1_1AdamsMoulton4.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_43495b2651badf01027c38c791c49779.html">AdamsMoulton4</a></li><li class="navelem"><a class="el" href="AdamsMoulton4_8hpp.html">AdamsMoulton4.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton4/AdamsMoulton4.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton4\l/AdamsMoulton4.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsMoulton4\l/AdamsMoulton4.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsMoulton4_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsMoulton4/AdamsMoulton4.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton4\l/AdamsMoulton4.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,367 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton4/AdamsMoulton4.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton4_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton4.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton4_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsMoulton4_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsMoulton4_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html"> 36</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsMoulton4.html">AdamsMoulton4</a></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026"> 43</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a698a75833834ae70210d306e047cb196"> 46</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a698a75833834ae70210d306e047cb196">dy0_</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a46c37b69200a2f4faef9c149a25bab60"> 49</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a09e936a903a062f6d1d045eb4fdbd8a5"> 52</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a09e936a903a062f6d1d045eb4fdbd8a5">dy2_</a>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 59</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aa27f90dad5682f0c6030f30fdf4883ef">TypeInfo</a>(<span class="stringliteral">&quot;AdamsMoulton4&quot;</span>);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a34d4c804534cb2f04fc68174b7282653">AdamsMoulton4</a>(</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a29f8a3197295f0ffa73d24bbacc6228c"> 74</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsMoulton4&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a80fc8a7c8acde6389ab03a63d2c7ec9b">~AdamsMoulton4</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// Add this to the virtual constructor table </span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aa46de8b6c155f9145790ef1434c6da09">add_vCtor</a>(</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html">AdamsMoulton4</a>,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a565b658e8641f9fd9a6a5c8e93089d5d">predict</a>(</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 105</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aa601d0785e68d2298567b2861996f956">predictAll</a>(</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; range activeRng);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aaa8ac3ebc39d8702e08e1f71c5843974">predictRange</a>(</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; activeFunctor activeP);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; range activeRng);</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; activeFunctor activeP );</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;};</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#aaa8ac3ebc39d8702e08e1f71c5843974"> 144</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#aaa8ac3ebc39d8702e08e1f71c5843974">AdamsMoulton4::predictRange</a>(</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;{</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> d_y0 = <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">auto</span> d_dy0 = <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a698a75833834ae70210d306e047cb196">dy0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">auto</span> d_dy1 = <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">auto</span> d_dy2 = <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a09e936a903a062f6d1d045eb4fdbd8a5">dy2_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="stringliteral">&quot;AdamsMoulton4::predictRange&quot;</span>,</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">if</span>(activeP(i))</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; d_y[i] = d_y0[i] + dt*(</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(23.0 /12.0 ) * d_dy[i] </div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(16.0 / 12.0) * d_dy1[i]</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 5.0 / 12.0) * d_dy2[i]);</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; });</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;}</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton4.html#a191dc9197b587f09bb5ee7989b0ba43e"> 181</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton4.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton4::intRange</a>(</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; </div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; </div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="stringliteral">&quot;AdamsMoulton4::correct&quot;</span>,</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; {</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(9.0/24.0)*d_dy[i] </div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(19.0/24.0)*d_dy0[i] </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 5.0/24.0)*d_dy1[i]</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 1.0/24.0)*d_dy2[i]);</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; d_dy2[i]= d_dy1[i];</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; }</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; });</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; </div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; </div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;}</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; </div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="preprocessor">#endif //</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a34d4c804534cb2f04fc68174b7282653"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a34d4c804534cb2f04fc68174b7282653">pFlow::AdamsMoulton4::AdamsMoulton4</a></div><div class="ttdeci">AdamsMoulton4(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00026">AdamsMoulton4.cpp:26</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a80fc8a7c8acde6389ab03a63d2c7ec9b"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a80fc8a7c8acde6389ab03a63d2c7ec9b">pFlow::AdamsMoulton4::~AdamsMoulton4</a></div><div class="ttdeci">virtual ~AdamsMoulton4()=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsMoulton4::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00105">AdamsMoulton4.hpp:105</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a698a75833834ae70210d306e047cb196"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a698a75833834ae70210d306e047cb196">pFlow::AdamsMoulton4::dy0_</a></div><div class="ttdeci">realx3PointField_D &amp; dy0_</div><div class="ttdoc">dy at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00046">AdamsMoulton4.hpp:46</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html">pFlow::AdamsMoulton4</a></div><div class="ttdoc">Fourth order Adams-Moulton integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00036">AdamsMoulton4.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a46c37b69200a2f4faef9c149a25bab60"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a46c37b69200a2f4faef9c149a25bab60">pFlow::AdamsMoulton4::dy1_</a></div><div class="ttdeci">realx3PointField_D &amp; dy1_</div><div class="ttdoc">dy at time t-dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00049">AdamsMoulton4.hpp:49</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a09e936a903a062f6d1d045eb4fdbd8a5"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a09e936a903a062f6d1d045eb4fdbd8a5">pFlow::AdamsMoulton4::dy2_</a></div><div class="ttdeci">realx3PointField_D &amp; dy2_</div><div class="ttdoc">dy at time t-2*dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00052">AdamsMoulton4.hpp:52</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton4::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00043">AdamsMoulton4.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton4::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00104">AdamsMoulton4.cpp:104</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton4::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00084">AdamsMoulton4.cpp:84</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton4::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00181">AdamsMoulton4.hpp:181</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton4::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00122">AdamsMoulton4.cpp:122</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton4::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00059">AdamsMoulton4.hpp:59</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aa46de8b6c155f9145790ef1434c6da09"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aa46de8b6c155f9145790ef1434c6da09">pFlow::AdamsMoulton4::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsMoulton4, word)</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aaa8ac3ebc39d8702e08e1f71c5843974"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aaa8ac3ebc39d8702e08e1f71c5843974">pFlow::AdamsMoulton4::predictRange</a></div><div class="ttdeci">bool predictRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Prediction step on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00144">AdamsMoulton4.hpp:144</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton4::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00131">AdamsMoulton4.cpp:131</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_aa27f90dad5682f0c6030f30fdf4883ef"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#aa27f90dad5682f0c6030f30fdf4883ef">pFlow::AdamsMoulton4::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsMoulton4&quot;)</div><div class="ttdoc">Type info.</div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton4::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8cpp_source.html#l00161">AdamsMoulton4.cpp:161</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton4_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton4.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsMoulton4::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton4_8hpp_source.html#l00074">AdamsMoulton4.hpp:74</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_43495b2651badf01027c38c791c49779.html">AdamsMoulton4</a></li><li class="navelem"><a class="el" href="AdamsMoulton4_8hpp.html">AdamsMoulton4.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton5/AdamsMoulton5.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton5_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton5.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton5.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton5_8cpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton5_2AdamsMoulton5_8cpp" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton5_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_5dff251c44f5003b2e670500c74e030b.html">AdamsMoulton5</a></li><li class="navelem"><a class="el" href="AdamsMoulton5_8cpp.html">AdamsMoulton5.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton5/AdamsMoulton5.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton5\l/AdamsMoulton5.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="AdamsMoulton5.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$AdamsMoulton5_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,358 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton5/AdamsMoulton5.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton5_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton5.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton5_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="AdamsMoulton5_8hpp.html">AdamsMoulton5.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<a class="code" href="classpFlow_1_1AdamsMoulton5.html#a84c490b65587b21f5666766e94a945bc">pFlow::AdamsMoulton5::AdamsMoulton5</a></div>
<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a84c490b65587b21f5666766e94a945bc"> 25</a></span>&#160;(</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; owner,</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; method</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;)</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;:</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>, owner, <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>, method),</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; y0_(</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;y0&quot;</span>),</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a>,</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">false</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; )</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; ),</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; dy0_(</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy0&quot;</span>),</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; )</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; ),</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; dy1_(</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy1&quot;</span>),</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; )</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; ),</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; dy2_(</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy2&quot;</span>),</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; )</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; ),</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; dy3_(</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; owner.emplaceObject&lt;<a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&gt;(</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">groupNames</a>(<a class="code" href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">baseName</a>,<span class="stringliteral">&quot;dy3&quot;</span>),</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; objectFile::READ_IF_PRESENT,</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; objectFile::WRITE_ALWAYS),</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">zero3</a></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; )</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; )</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton5::predict</a></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a565b658e8641f9fd9a6a5c8e93089d5d"> 94</a></span>&#160;(</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;)</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; {</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> predictAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> predictRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;}</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton5::correct</a></div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#ac755e4bf02c3732d1eb89de9e903ebdb"> 114</a></span>&#160;(</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;)</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;{</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span>(this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().allActive())</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> intAll(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activeRange());</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> intRange(dt, y, dy, this-&gt;<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>().activePointsMaskD());</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;}</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; </div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a8da2088458d635dfa1fbe1823a3bfd6d"> 132</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton5::setInitialVals</a>(</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y)</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;{</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">insertSetElement</a>(newIndices, y);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#aa601d0785e68d2298567b2861996f956"> 141</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton5::predictAll</a>(</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; range activeRng)</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">auto</span> d_dy3 = dy3_.deviceViewAll();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="stringliteral">&quot;AdamsMoulton5::predict&quot;</span>,</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; d_y[i] = d_y0[i] + dt*(</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(55.0/24.0) * d_dy[i] </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(59.0/24.0) * d_dy1[i]</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(37.0/24.0) * d_dy2[i]</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 9.0/24.0) * d_dy3[i]);</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; });</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; </div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;}</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a152b752a6b7b37e70fa5e7c99a484783"> 174</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton5::intAll</a>(</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; range activeRng)</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;{</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">auto</span> d_dy3 = dy3_.deviceViewAll();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; </div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="stringliteral">&quot;AdamsMoulton5::correct&quot;</span>,</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(251.0/720.0)*d_dy[i] </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(646.0/720.0)*d_dy0[i] </div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(264.0/720.0)*d_dy1[i]</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(106.0/720.0)*d_dy2[i]</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 19.0/720.0)*d_dy3[i]);</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; d_dy3[i]= d_dy2[i];</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; d_dy2[i]= d_dy1[i];</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; });</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; </div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton5::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00132">AdamsMoulton5.cpp:132</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton5::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00062">AdamsMoulton5.hpp:62</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton5::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00174">AdamsMoulton5.cpp:174</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a477d522d35403bd985ae105bd759e9d1"><div class="ttname"><a href="namespacepFlow.html#a477d522d35403bd985ae105bd759e9d1">pFlow::zero3</a></div><div class="ttdeci">const realx3 zero3(0.0)</div><div class="ttdef"><b>Definition:</b> <a href="types_8hpp_source.html#l00137">types.hpp:137</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton5::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00141">AdamsMoulton5.cpp:141</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae97e2279d720194a68a594a3edbc6763"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae97e2279d720194a68a594a3edbc6763">pFlow::internalField::insertSetElement</a></div><div class="ttdeci">bool insertSetElement(uint32IndexContainer indices, const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00181">internalField.hpp:181</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a16a2137651b2c6b8ea4a8daf1d89ff61"><div class="ttname"><a href="namespacepFlow.html#a16a2137651b2c6b8ea4a8daf1d89ff61">pFlow::baseName</a></div><div class="ttdeci">word baseName(const word &amp;w, char sep='.')</div><div class="ttdoc">Find the base in a group separated by &quot;.&quot; and return it.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00185">bTypesFunctions.cpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton5::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00043">AdamsMoulton5.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton5::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00114">AdamsMoulton5.cpp:114</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a84c490b65587b21f5666766e94a945bc"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a84c490b65587b21f5666766e94a945bc">pFlow::AdamsMoulton5::AdamsMoulton5</a></div><div class="ttdeci">AdamsMoulton5(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00025">AdamsMoulton5.cpp:25</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton5::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00094">AdamsMoulton5.cpp:94</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a12b4d93aa9730629403d73e84386bff5"><div class="ttname"><a href="namespacepFlow.html#a12b4d93aa9730629403d73e84386bff5">pFlow::groupNames</a></div><div class="ttdeci">word groupNames(const word &amp;bw, const word &amp;tw, char sep='.')</div><div class="ttdoc">Group words and output bw.tw.</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00179">bTypesFunctions.cpp:179</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aAdamsMoulton5_8hpp_html"><div class="ttname"><a href="AdamsMoulton5_8hpp.html">AdamsMoulton5.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_5dff251c44f5003b2e670500c74e030b.html">AdamsMoulton5</a></li><li class="navelem"><a class="el" href="AdamsMoulton5_8cpp.html">AdamsMoulton5.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton5/AdamsMoulton5.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton5_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">AdamsMoulton5.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for AdamsMoulton5.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton5_8hpp__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton5_2AdamsMoulton5_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="AdamsMoulton5_8hpp__dep__incl.png" border="0" usemap="#src_2Integration_2AdamsMoulton5_2AdamsMoulton5_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="AdamsMoulton5_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1AdamsMoulton5.html">AdamsMoulton5</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fifth order Adams-Moulton integration method for solving ODE. <a href="classpFlow_1_1AdamsMoulton5.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_5dff251c44f5003b2e670500c74e030b.html">AdamsMoulton5</a></li><li class="navelem"><a class="el" href="AdamsMoulton5_8hpp.html">AdamsMoulton5.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Integration/AdamsMoulton5/AdamsMoulton5.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton5\l/AdamsMoulton5.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Integration/AdamsMoulton5\l/AdamsMoulton5.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$AdamsMoulton5_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,12 @@
digraph "src/Integration/AdamsMoulton5/AdamsMoulton5.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Integration/AdamsMoulton5\l/AdamsMoulton5.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="integration.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$integration_8hpp.html",tooltip=" "];
Node2 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="pointFields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$pointFields_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,374 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Integration/AdamsMoulton5/AdamsMoulton5.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('AdamsMoulton5_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">AdamsMoulton5.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="AdamsMoulton5_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __AdamsMoulton5_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __AdamsMoulton5_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="integration_8hpp.html">integration.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pointFields_8hpp.html">pointFields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html"> 36</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1AdamsMoulton5.html">AdamsMoulton5</a></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1integration.html">integration</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026"> 43</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a698a75833834ae70210d306e047cb196"> 46</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a698a75833834ae70210d306e047cb196">dy0_</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a46c37b69200a2f4faef9c149a25bab60"> 49</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a09e936a903a062f6d1d045eb4fdbd8a5"> 52</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a09e936a903a062f6d1d045eb4fdbd8a5">dy2_</a>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a79d535ef8716acc040282ffd37196ac6"> 55</a></span>&#160; <a class="code" href="classpFlow_1_1pointField.html">realx3PointField_D</a>&amp; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a79d535ef8716acc040282ffd37196ac6">dy3_</a>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> = Kokkos::RangePolicy&lt;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>,</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; Kokkos::Schedule&lt;Kokkos::Static&gt;,</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; Kokkos::IndexType&lt;int32&gt;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f"> 62</a></span>&#160; &gt;;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a93700041b6e609e429801e569f554e4c">TypeInfo</a>(<span class="stringliteral">&quot;AdamsMoulton5&quot;</span>);</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// - Constructors</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a84c490b65587b21f5666766e94a945bc">AdamsMoulton5</a>(</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">baseName</a>,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classpFlow_1_1repository.html">repository</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">owner</a>,</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pStruct</a>,</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">method</a>);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a29f8a3197295f0ffa73d24bbacc6228c"> 77</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;integration&gt;</a> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a29f8a3197295f0ffa73d24bbacc6228c">clone</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;AdamsMoulton5&gt;(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a205b69055b5aebe5b9c924e435365169">~AdamsMoulton5</a>()=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">// - add a virtual constructor </span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aa18e539a33004e6d10e69a19ef0c5ddb">add_vCtor</a>(</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classpFlow_1_1integration.html">integration</a>,</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html">AdamsMoulton5</a>,</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">// - Methods</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a565b658e8641f9fd9a6a5c8e93089d5d">predict</a>(</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ac755e4bf02c3732d1eb89de9e903ebdb">correct</a>(</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a8da2088458d635dfa1fbe1823a3bfd6d">setInitialVals</a>(</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1indexContainer.html">int32IndexContainer</a>&amp; newIndices,</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">realx3Vector</a>&amp; y) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#aceb0c803bb6e5c46a1695c4e5b6e641f"> 108</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aceb0c803bb6e5c46a1695c4e5b6e641f">needSetInitialVals</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aa601d0785e68d2298567b2861996f956">predictAll</a>(</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; range activeRng);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aaa8ac3ebc39d8702e08e1f71c5843974">predictRange</a>(</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; activeFunctor activeP);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a152b752a6b7b37e70fa5e7c99a484783">intAll</a>(</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; range activeRng);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; </div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a191dc9197b587f09bb5ee7989b0ba43e">intRange</a>(</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y, </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy, </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; activeFunctor activeP );</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;};</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#aaa8ac3ebc39d8702e08e1f71c5843974"> 147</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#aaa8ac3ebc39d8702e08e1f71c5843974">AdamsMoulton5::predictRange</a>(</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;{</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">auto</span> d_y0 = <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026">y0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">auto</span> d_dy0 = <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a698a75833834ae70210d306e047cb196">dy0_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">auto</span> d_dy1 = <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a46c37b69200a2f4faef9c149a25bab60">dy1_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keyword">auto</span> d_dy2 = <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a09e936a903a062f6d1d045eb4fdbd8a5">dy2_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keyword">auto</span> d_dy3 = <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a79d535ef8716acc040282ffd37196ac6">dy3_</a>.<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; </div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="stringliteral">&quot;AdamsMoulton5::predictRange&quot;</span>,</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">if</span>(activeP(i))</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; {</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; d_dy0[i] = d_dy[i];</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; d_y[i] = d_y0[i] + dt*(</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(55.0/24.0) * d_dy[i] </div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(59.0/24.0) * d_dy1[i]</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(37.0/24.0) * d_dy2[i]</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 9.0/24.0) * d_dy3[i]);</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; });</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; </div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> activeFunctor&gt;</div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classpFlow_1_1AdamsMoulton5.html#a191dc9197b587f09bb5ee7989b0ba43e"> 185</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1AdamsMoulton5.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton5::intRange</a>(</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt, </div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; y,</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">realx3Vector_D</a>&amp; dy,</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; activeFunctor activeP )</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;{</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; </div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">auto</span> d_dy = dy.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keyword">auto</span> d_y = y.<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; </div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">auto</span> d_dy0 = dy0_.deviceViewAll();</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">auto</span> d_y0 = y0_.deviceViewAll();</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">auto</span> d_dy1 = dy1_.deviceViewAll();</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keyword">auto</span> d_dy2 = dy2_.deviceViewAll();</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keyword">auto</span> d_dy3 = dy3_.deviceViewAll();</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keyword">auto</span> activeRng = activeP.activeRange();</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; </div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; Kokkos::parallel_for(</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="stringliteral">&quot;AdamsMoulton5::correct&quot;</span>,</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">rpIntegration</a> (activeRng.first, activeRng.second),</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a>(<a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> i){</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span>( activeP(i))</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; {</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keyword">auto</span> corrct_y = d_y0[i] + dt*(</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(251.0/720.0)*d_dy[i] </div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(646.0/720.0)*d_dy0[i] </div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(264.0/720.0)*d_dy1[i]</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; + <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>(106.0/720.0)*d_dy2[i]</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; - <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a><span class="keyword">&gt;</span>( 19.0/720.0)*d_dy3[i]);</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; </div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; d_dy3[i]= d_dy2[i];</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; d_dy2[i]= d_dy1[i];</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; d_dy1[i]= d_dy0[i];</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; d_y0[i] = corrct_y;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; d_y[i] = corrct_y;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; });</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; Kokkos::fence();</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; </div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; </div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;}</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; </div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;} <span class="comment">// pFlow</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; </div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="preprocessor">#endif //__integration_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a8da2088458d635dfa1fbe1823a3bfd6d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a8da2088458d635dfa1fbe1823a3bfd6d">pFlow::AdamsMoulton5::setInitialVals</a></div><div class="ttdeci">bool setInitialVals(const int32IndexContainer &amp;newIndices, const realx3Vector &amp;y) override</div><div class="ttdoc">Set the initial values for new indices.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00132">AdamsMoulton5.cpp:132</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_ace46ff4fbe3c001c816dbc4f9f67606f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#ace46ff4fbe3c001c816dbc4f9f67606f">pFlow::AdamsMoulton5::rpIntegration</a></div><div class="ttdeci">Kokkos::RangePolicy&lt; DefaultExecutionSpace, Kokkos::Schedule&lt; Kokkos::Static &gt;, Kokkos::IndexType&lt; int32 &gt; &gt; rpIntegration</div><div class="ttdoc">Range policy for integration kernel.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00062">AdamsMoulton5.hpp:62</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_aaa8ac3ebc39d8702e08e1f71c5843974"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#aaa8ac3ebc39d8702e08e1f71c5843974">pFlow::AdamsMoulton5::predictRange</a></div><div class="ttdeci">bool predictRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Prediction step on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00147">AdamsMoulton5.hpp:147</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html"><div class="ttname"><a href="classpFlow_1_1integration.html">pFlow::integration</a></div><div class="ttdoc">Base class for integrating the first order ODE (IVP)</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00051">integration.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a152b752a6b7b37e70fa5e7c99a484783"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a152b752a6b7b37e70fa5e7c99a484783">pFlow::AdamsMoulton5::intAll</a></div><div class="ttdeci">bool intAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Integrate on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00174">AdamsMoulton5.cpp:174</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a5a622149e803f0fa292a95784c12a7b8"><div class="ttname"><a href="classpFlow_1_1integration.html#a5a622149e803f0fa292a95784c12a7b8">pFlow::integration::pStruct</a></div><div class="ttdeci">const auto &amp; pStruct() const</div><div class="ttdoc">Const ref to pointStructure.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00115">integration.hpp:115</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="apointFields_8hpp_html"><div class="ttname"><a href="pointFields_8hpp.html">pointFields.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_aa18e539a33004e6d10e69a19ef0c5ddb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#aa18e539a33004e6d10e69a19ef0c5ddb">pFlow::AdamsMoulton5::add_vCtor</a></div><div class="ttdeci">add_vCtor(integration, AdamsMoulton5, word)</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html">pFlow::AdamsMoulton5</a></div><div class="ttdoc">Fifth order Adams-Moulton integration method for solving ODE.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00036">AdamsMoulton5.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_aa601d0785e68d2298567b2861996f956"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#aa601d0785e68d2298567b2861996f956">pFlow::AdamsMoulton5::predictAll</a></div><div class="ttdeci">bool predictAll(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, range activeRng)</div><div class="ttdoc">Prediction step on all points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00141">AdamsMoulton5.cpp:141</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a4e30df3927ef1cdd2490cd85018518f5"><div class="ttname"><a href="classpFlow_1_1integration.html#a4e30df3927ef1cdd2490cd85018518f5">pFlow::integration::baseName</a></div><div class="ttdeci">const word &amp; baseName() const</div><div class="ttdoc">Base name.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00122">integration.hpp:122</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a698a75833834ae70210d306e047cb196"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a698a75833834ae70210d306e047cb196">pFlow::AdamsMoulton5::dy0_</a></div><div class="ttdeci">realx3PointField_D &amp; dy0_</div><div class="ttdoc">dy at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00046">AdamsMoulton5.hpp:46</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a46c37b69200a2f4faef9c149a25bab60"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a46c37b69200a2f4faef9c149a25bab60">pFlow::AdamsMoulton5::dy1_</a></div><div class="ttdeci">realx3PointField_D &amp; dy1_</div><div class="ttdoc">dy at time t-dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00049">AdamsMoulton5.hpp:49</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00050">builtinTypes.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a29f8a3197295f0ffa73d24bbacc6228c"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a29f8a3197295f0ffa73d24bbacc6228c">pFlow::AdamsMoulton5::clone</a></div><div class="ttdeci">uniquePtr&lt; integration &gt; clone() const override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00077">AdamsMoulton5.hpp:77</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a6c02e0d25a1b849255e67e72d1a9d026"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a6c02e0d25a1b849255e67e72d1a9d026">pFlow::AdamsMoulton5::y0_</a></div><div class="ttdeci">realx3PointField_D &amp; y0_</div><div class="ttdoc">y at time t</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00043">AdamsMoulton5.hpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_ac755e4bf02c3732d1eb89de9e903ebdb"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#ac755e4bf02c3732d1eb89de9e903ebdb">pFlow::AdamsMoulton5::correct</a></div><div class="ttdeci">bool correct(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00114">AdamsMoulton5.cpp:114</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a84c490b65587b21f5666766e94a945bc"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a84c490b65587b21f5666766e94a945bc">pFlow::AdamsMoulton5::AdamsMoulton5</a></div><div class="ttdeci">AdamsMoulton5(const word &amp;baseName, repository &amp;owner, const pointStructure &amp;pStruct, const word &amp;method)</div><div class="ttdoc">Construct from components.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00025">AdamsMoulton5.cpp:25</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_aceb0c803bb6e5c46a1695c4e5b6e641f"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#aceb0c803bb6e5c46a1695c4e5b6e641f">pFlow::AdamsMoulton5::needSetInitialVals</a></div><div class="ttdeci">bool needSetInitialVals() const override</div><div class="ttdoc">Check if the method requires any set initial vals.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00108">AdamsMoulton5.hpp:108</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a10329e18307a60d3fdb203bcbed2b295"><div class="ttname"><a href="classpFlow_1_1integration.html#a10329e18307a60d3fdb203bcbed2b295">pFlow::integration::owner</a></div><div class="ttdeci">repository &amp; owner()</div><div class="ttdoc">Ref to the owner repository.</div><div class="ttdef"><b>Definition:</b> <a href="integration_8hpp_source.html#l00129">integration.hpp:129</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a565b658e8641f9fd9a6a5c8e93089d5d"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a565b658e8641f9fd9a6a5c8e93089d5d">pFlow::AdamsMoulton5::predict</a></div><div class="ttdeci">bool predict(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy) override</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8cpp_source.html#l00094">AdamsMoulton5.cpp:94</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a09e936a903a062f6d1d045eb4fdbd8a5"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a09e936a903a062f6d1d045eb4fdbd8a5">pFlow::AdamsMoulton5::dy2_</a></div><div class="ttdeci">realx3PointField_D &amp; dy2_</div><div class="ttdoc">dy at time t-2*dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00052">AdamsMoulton5.hpp:52</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a79d535ef8716acc040282ffd37196ac6"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a79d535ef8716acc040282ffd37196ac6">pFlow::AdamsMoulton5::dy3_</a></div><div class="ttdeci">realx3PointField_D &amp; dy3_</div><div class="ttdoc">dy at time t-3*dt</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00055">AdamsMoulton5.hpp:55</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aintegration_8hpp_html"><div class="ttname"><a href="integration_8hpp.html">integration.hpp</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_aa7d4742cdf24a3792276e669531d145c"><div class="ttname"><a href="pFlowMacros_8hpp.html#aa7d4742cdf24a3792276e669531d145c">LAMBDA_HD</a></div><div class="ttdeci">#define LAMBDA_HD</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00058">pFlowMacros.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a191dc9197b587f09bb5ee7989b0ba43e"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a191dc9197b587f09bb5ee7989b0ba43e">pFlow::AdamsMoulton5::intRange</a></div><div class="ttdeci">bool intRange(real dt, realx3Vector_D &amp;y, realx3Vector_D &amp;dy, activeFunctor activeP)</div><div class="ttdoc">Integrate on active points in the active range.</div><div class="ttdef"><b>Definition:</b> <a href="AdamsMoulton5_8hpp_source.html#l00185">AdamsMoulton5.hpp:185</a></div></div>
<div class="ttc" id="aclasspFlow_1_1integration_html_a05cf94b87db6b7d4b9c2d2eb81592cf3"><div class="ttname"><a href="classpFlow_1_1integration.html#a05cf94b87db6b7d4b9c2d2eb81592cf3">pFlow::integration::method</a></div><div class="ttdeci">virtual word method() const =0</div><div class="ttdoc">return integration method</div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a205b69055b5aebe5b9c924e435365169"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a205b69055b5aebe5b9c924e435365169">pFlow::AdamsMoulton5::~AdamsMoulton5</a></div><div class="ttdeci">virtual ~AdamsMoulton5()=default</div><div class="ttdoc">Destructor.</div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; realx3 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1AdamsMoulton5_html_a93700041b6e609e429801e569f554e4c"><div class="ttname"><a href="classpFlow_1_1AdamsMoulton5.html#a93700041b6e609e429801e569f554e4c">pFlow::AdamsMoulton5::TypeInfo</a></div><div class="ttdeci">TypeInfo(&quot;AdamsMoulton5&quot;)</div><div class="ttdoc">Type info.</div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_5ff0557589c78f704a7131791f9a8bc6.html">Integration</a></li><li class="navelem"><a class="el" href="dir_5dff251c44f5003b2e670500c74e030b.html">AdamsMoulton5</a></li><li class="navelem"><a class="el" href="AdamsMoulton5_8hpp.html">AdamsMoulton5.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,149 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Interaction/contactSearch/ContactSearch/ContactSearch.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('ContactSearch_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">ContactSearch.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for ContactSearch.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="ContactSearch_8hpp__incl.png" border="0" usemap="#src_2Interaction_2contactSearch_2ContactSearch_2ContactSearch_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="ContactSearch_8hpp__dep__incl.png" border="0" usemap="#src_2Interaction_2contactSearch_2ContactSearch_2ContactSearch_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="ContactSearch_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1ContactSearch.html">ContactSearch&lt; searchMethod &gt;</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_521648a0ab4242664e9ecc37593f7519.html">Interaction</a></li><li class="navelem"><a class="el" href="dir_f27c6bb1e70979f7ed7175f297e69b7e.html">contactSearch</a></li><li class="navelem"><a class="el" href="dir_2ba5b24e55596b6b1de53b507451952d.html">ContactSearch</a></li><li class="navelem"><a class="el" href="ContactSearch_8hpp.html">ContactSearch.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/Interaction/contactSearch/ContactSearch/ContactSearch.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Interaction/contactSearch\l/ContactSearch/ContactSearch.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/Interaction/contactSearch\l/ContactSearch/ContactSearchs.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$ContactSearchs_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,20 @@
digraph "src/Interaction/contactSearch/ContactSearch/ContactSearch.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Interaction/contactSearch\l/ContactSearch/ContactSearch.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="contactSearchGlobals.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$contactSearchGlobals_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="contactSearch.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$contactSearch_8hpp.html",tooltip=" "];
Node41 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node1 -> Node65 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node65 [label="box.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$box_8hpp.html",tooltip=" "];
Node1 -> Node66 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node66 [label="particles.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$particles_8hpp.html",tooltip=" "];
Node1 -> Node172 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node172 [label="geometry.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$geometry_8hpp.html",tooltip=" "];
Node1 -> Node179 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node179 [label="boundaryContactSearchList.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$boundaryContactSearchList_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,351 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Interaction/contactSearch/ContactSearch/ContactSearch.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('ContactSearch_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">ContactSearch.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="ContactSearch_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; </div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#ifndef __ContactSearch_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#define __ContactSearch_hpp__</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="contactSearchGlobals_8hpp.html">contactSearchGlobals.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="contactSearch_8hpp.html">contactSearch.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="box_8hpp.html">box.hpp</a>&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="particles_8hpp.html">particles.hpp</a>&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="geometry_8hpp.html">geometry.hpp</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="boundaryContactSearchList_8hpp.html">boundaryContactSearchList.hpp</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="keyword">template</span>&lt;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">class </span>searchMethod</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;&gt;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html"> 38</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1ContactSearch.html">ContactSearch</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;:</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1contactSearch.html">contactSearch</a></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a85466bc714e19a8eb1775698f6fce13a"> 44</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1ContactSearch.html#a85466bc714e19a8eb1775698f6fce13a">IdType</a> = <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#aafbc6c11862daeac07d73494aa73377a"> 46</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1ContactSearch.html#aafbc6c11862daeac07d73494aa73377a">ExecutionSpace</a> = <a class="code" href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">DefaultExecutionSpace</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a14a58890480776cd43f47cf202c50c45"> 48</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1ContactSearch.html#a14a58890480776cd43f47cf202c50c45">SearchMethodType</a> = searchMethod;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f"> 52</a></span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;SearchMethodType&gt;</a> <a class="code" href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f">ppwContactSearch_</a> = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c"> 54</a></span>&#160; <a class="code" href="classpFlow_1_1boundaryContactSearchList.html">boundaryContactSearchList</a> <a class="code" href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c">csBoundaries_</a>;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a9b8b797bb562937bc89d63a074331a7b"> 56</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1ContactSearch.html#a9b8b797bb562937bc89d63a074331a7b">BroadSearch</a>(</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1timeInfo.html">timeInfo</a>&amp; ti,</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classpFlow_1_1unsortedPairs.html">csPairContainerType</a>&amp; ppPairs,</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classpFlow_1_1unsortedPairs.html">csPairContainerType</a>&amp; pwPairs,</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">bool</span> force = <span class="keyword">false</span>)<span class="keyword"> override</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; position = <a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#ab65a0c533b6ad751af6e319e219b1bae">pointPosition</a>().deviceViewAll();</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; flags = <a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#a1898e0b780e6dcca30fb4549130bcb82">dynPointStruct</a>().activePointsMaskDevice();</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; diam = <a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#adaa26de060a2ce43e01c63ff154a820e">boundingSphere</a>().<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f">ppwContactSearch_</a>().broadSearch(</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#aafddac2ca8db0456c5674a914ed28545">iter</a>(),</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#abf39a85732afffe30b0bc9f11f3294cd">t</a>(),</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#ab27fc2e669d34a0f956786f8000ca284">dt</a>(),</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; ppPairs, </div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; pwPairs,</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; position, </div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; flags, </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; diam,</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; force</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; );</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#ab03a6396d06d64e1360bae7b31b221cf"> 80</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1ContactSearch.html#ab03a6396d06d64e1360bae7b31b221cf">BoundaryBroadSearch</a>(</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> bndryIndex,</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1timeInfo.html">timeInfo</a>&amp; ti,</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classpFlow_1_1unsortedPairs.html">csPairContainerType</a>&amp; ppPairs,</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="classpFlow_1_1unsortedPairs.html">csPairContainerType</a>&amp; pwPairs,</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">bool</span> force = <span class="keyword">false</span>)<span class="keyword">override</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keyword"> </span>{ </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c">csBoundaries_</a>[bndryIndex].broadSearch(</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#aafddac2ca8db0456c5674a914ed28545">iter</a>(), </div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#abf39a85732afffe30b0bc9f11f3294cd">t</a>(), </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; ti.<a class="code" href="classpFlow_1_1timeInfo.html#ab27fc2e669d34a0f956786f8000ca284">dt</a>(), </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ppPairs, </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; pwPairs, </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; force</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; );</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classpFlow_1_1ContactSearch.html#a954a983b771de06388078b901b5755a6">TypeInfoTemplate11</a>(<span class="stringliteral">&quot;ContactSearch&quot;</span>, <a class="code" href="classpFlow_1_1ContactSearch.html#a14a58890480776cd43f47cf202c50c45">SearchMethodType</a>);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#af9dd514cd28edb2b83ffa07d78e89a77"> 101</a></span>&#160; <a class="code" href="classpFlow_1_1ContactSearch.html#af9dd514cd28edb2b83ffa07d78e89a77">ContactSearch</a>(</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1dictionary.html">dictionary</a>&amp; csDict,</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1box.html">box</a>&amp; extDomain,</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1particles.html">particles</a>&amp; prtcl,</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1geometry.html">geometry</a>&amp; geom,</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classpFlow_1_1Timers.html">Timers</a>&amp; timers)</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; :</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classpFlow_1_1contactSearch.html">contactSearch</a>(</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; csDict, </div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; extDomain, </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; prtcl, </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; geom, </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; timers),</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c">csBoundaries_</a>(</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; csDict, </div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1contactSearch.html#ae355b601249331cd5c4facb48df43223">pStruct</a>().boundaries(),</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; *this)</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> minD;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> maxD;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#aa8d7c58c3cb52c881a119c56dbb7b5df">boundingSphereMinMax</a>(minD, maxD);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; position = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#ab65a0c533b6ad751af6e319e219b1bae">pointPosition</a>().deviceViewAll();</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; flags = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#a1898e0b780e6dcca30fb4549130bcb82">dynPointStruct</a>().activePointsMaskDevice();</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; diam = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">Particles</a>().<a class="code" href="classpFlow_1_1particles.html#adaa26de060a2ce43e01c63ff154a820e">boundingSphere</a>().<a class="code" href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">deviceViewAll</a>();</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> wnPoints = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">Geometry</a>().<a class="code" href="classpFlow_1_1triSurface.html#a2af1db184af973a2c0c3333581a57f58">numPoints</a>();</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> wnTri = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">Geometry</a>().<a class="code" href="classpFlow_1_1triSurface.html#a29636b87d7c459031e2410e5d7623b0f">size</a>();</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; wPoints = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">Geometry</a>().<a class="code" href="classpFlow_1_1triSurface.html#acf65f5945c49ee75276463ee66ce4107">points</a>().<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; wVertices = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">Geometry</a>().<a class="code" href="classpFlow_1_1triSurface.html#ae5203c129e0f459defc582e0595e407a">vertices</a>().<a class="code" href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">deviceViewAll</a>();</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; wNormals = this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">Geometry</a>().<a class="code" href="classpFlow_1_1triSurface.html#a6668a8a544618783fd4955d2e9bebb7f">normals</a>().deviceViewAll();</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; ppwContactSearch_ = </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; makeUnique&lt;SearchMethodType&gt;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; (</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="classpFlow_1_1contactSearch.html#a19650e729ef6a0899b8fbe25f5238728">dict</a>(),</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; this-&gt;<a class="code" href="classpFlow_1_1contactSearch.html#a2879a9ee0fc5eab64daf8d5c6f3d88a9">extendedDomainBox</a>(),</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; minD,</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; maxD,</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; position,</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; flags,</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; diam,</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; wnPoints,</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; wnTri,</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; wPoints,</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; wVertices,</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; wNormals</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; );</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classpFlow_1_1ContactSearch.html#a05f191978ffcabf5af6bacb4c6d35ebf">add_vCtor</a>(</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="classpFlow_1_1contactSearch.html">contactSearch</a>,</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="classpFlow_1_1ContactSearch.html">ContactSearch</a>,</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classpFlow_1_1dictionary.html">dictionary</a>);</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a9c6d7334df6e89c55d07dbcfdbb3a7c1"> 157</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1ContactSearch.html#a9c6d7334df6e89c55d07dbcfdbb3a7c1">enterBroadSearchBoundary</a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1timeInfo.html">timeInfo</a>&amp; ti, <span class="keywordtype">bool</span> force=<span class="keyword">false</span>)<span class="keyword">const override</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1contactSearch.html#a405df0732509ffaf7bd22e7750540a5c">enterBroadSearch</a>(ti, force) || <a class="code" href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c">csBoundaries_</a>.<a class="code" href="classpFlow_1_1boundaryContactSearchList.html#ab2dc0f8ce6dfe9db238ce885e24222a1">boundariesUpdated</a>();</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; </div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#a15658cfdf5aae289d667e3cfcf40fce8"> 162</a></span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="classpFlow_1_1ContactSearch.html#a15658cfdf5aae289d667e3cfcf40fce8">sizeRatio</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f">ppwContactSearch_</a>().sizeRatio();</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; }</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; </div>
<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classpFlow_1_1ContactSearch.html#ac643bee43d3e7b50488e3101cae80dec"> 167</a></span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> <a class="code" href="classpFlow_1_1ContactSearch.html#ac643bee43d3e7b50488e3101cae80dec">cellExtent</a>()<span class="keyword">const override</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f">ppwContactSearch_</a>().cellExtent();</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;};</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;}</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor">#endif //__ContactSearch_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1boundaryContactSearchList_html_ab2dc0f8ce6dfe9db238ce885e24222a1"><div class="ttname"><a href="classpFlow_1_1boundaryContactSearchList.html#ab2dc0f8ce6dfe9db238ce885e24222a1">pFlow::boundaryContactSearchList::boundariesUpdated</a></div><div class="ttdeci">bool boundariesUpdated() const</div><div class="ttdef"><b>Definition:</b> <a href="boundaryContactSearchList_8cpp_source.html#l00029">boundaryContactSearchList.cpp:29</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_ab0f73623ec6d4ee09c142c435329ffbf"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#ab0f73623ec6d4ee09c142c435329ffbf">pFlow::contactSearch::Geometry</a></div><div class="ttdeci">const geometry &amp; Geometry() const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00174">contactSearch.hpp:174</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a05f191978ffcabf5af6bacb4c6d35ebf"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a05f191978ffcabf5af6bacb4c6d35ebf">pFlow::ContactSearch::add_vCtor</a></div><div class="ttdeci">add_vCtor(contactSearch, ContactSearch, dictionary)</div></div>
<div class="ttc" id="aclasspFlow_1_1triSurface_html_ae5203c129e0f459defc582e0595e407a"><div class="ttname"><a href="classpFlow_1_1triSurface.html#ae5203c129e0f459defc582e0595e407a">pFlow::triSurface::vertices</a></div><div class="ttdeci">const uint32x3Field_D &amp; vertices() const</div><div class="ttdef"><b>Definition:</b> <a href="triSurface_8hpp_source.html#l00192">triSurface.hpp:192</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_abf14a812b9c273d8c618eff23b99550f"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#abf14a812b9c273d8c618eff23b99550f">pFlow::ContactSearch::ppwContactSearch_</a></div><div class="ttdeci">uniquePtr&lt; SearchMethodType &gt; ppwContactSearch_</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00052">ContactSearch.hpp:52</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_a405df0732509ffaf7bd22e7750540a5c"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#a405df0732509ffaf7bd22e7750540a5c">pFlow::contactSearch::enterBroadSearch</a></div><div class="ttdeci">bool enterBroadSearch(const timeInfo &amp;ti, bool force=false) const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00139">contactSearch.hpp:139</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_ac643bee43d3e7b50488e3101cae80dec"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#ac643bee43d3e7b50488e3101cae80dec">pFlow::ContactSearch::cellExtent</a></div><div class="ttdeci">real cellExtent() const override</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00167">ContactSearch.hpp:167</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_aafbc6c11862daeac07d73494aa73377a"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#aafbc6c11862daeac07d73494aa73377a">pFlow::ContactSearch::ExecutionSpace</a></div><div class="ttdeci">DefaultExecutionSpace ExecutionSpace</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00046">ContactSearch.hpp:46</a></div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_ae49b1b421c0a7de757a2fdc46f163498"><div class="ttname"><a href="classpFlow_1_1internalField.html#ae49b1b421c0a7de757a2fdc46f163498">pFlow::internalField::deviceViewAll</a></div><div class="ttdeci">const auto &amp; deviceViewAll() const</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8hpp_source.html#l00092">internalField.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a9c6d7334df6e89c55d07dbcfdbb3a7c1"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a9c6d7334df6e89c55d07dbcfdbb3a7c1">pFlow::ContactSearch::enterBroadSearchBoundary</a></div><div class="ttdeci">bool enterBroadSearchBoundary(const timeInfo &amp;ti, bool force=false) const override</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00157">ContactSearch.hpp:157</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a467ac73738857be13fe399f67b1d935c"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a467ac73738857be13fe399f67b1d935c">pFlow::ContactSearch::csBoundaries_</a></div><div class="ttdeci">boundaryContactSearchList csBoundaries_</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00054">ContactSearch.hpp:54</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a15658cfdf5aae289d667e3cfcf40fce8"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a15658cfdf5aae289d667e3cfcf40fce8">pFlow::ContactSearch::sizeRatio</a></div><div class="ttdeci">real sizeRatio() const override</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00162">ContactSearch.hpp:162</a></div></div>
<div class="ttc" id="anamespacepFlow_html_abd01e8e67e3d94cab04ecaaf4f85ac1b"><div class="ttname"><a href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">pFlow::uint32</a></div><div class="ttdeci">unsigned int uint32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00056">builtinTypes.hpp:56</a></div></div>
<div class="ttc" id="abox_8hpp_html"><div class="ttname"><a href="box_8hpp.html">box.hpp</a></div></div>
<div class="ttc" id="aboundaryContactSearchList_8hpp_html"><div class="ttname"><a href="boundaryContactSearchList_8hpp.html">boundaryContactSearchList.hpp</a></div></div>
<div class="ttc" id="aparticles_8hpp_html"><div class="ttname"><a href="particles_8hpp.html">particles.hpp</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aa3a14d3c76643399fc4edd8eca14944a"><div class="ttname"><a href="namespacepFlow.html#aa3a14d3c76643399fc4edd8eca14944a">pFlow::DefaultExecutionSpace</a></div><div class="ttdeci">Kokkos::DefaultExecutionSpace DefaultExecutionSpace</div><div class="ttdoc">Default execution space, it can be device exe.</div><div class="ttdef"><b>Definition:</b> <a href="KokkosTypes_8hpp_source.html#l00061">KokkosTypes.hpp:61</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_a19650e729ef6a0899b8fbe25f5238728"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#a19650e729ef6a0899b8fbe25f5238728">pFlow::contactSearch::dict</a></div><div class="ttdeci">const dictionary &amp; dict() const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00154">contactSearch.hpp:154</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_ae355b601249331cd5c4facb48df43223"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#ae355b601249331cd5c4facb48df43223">pFlow::contactSearch::pStruct</a></div><div class="ttdeci">const pointStructure &amp; pStruct() const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8cpp_source.html#l00043">contactSearch.cpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Timers_html"><div class="ttname"><a href="classpFlow_1_1Timers.html">pFlow::Timers</a></div><div class="ttdef"><b>Definition:</b> <a href="Timers_8hpp_source.html#l00032">Timers.hpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a85466bc714e19a8eb1775698f6fce13a"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a85466bc714e19a8eb1775698f6fce13a">pFlow::ContactSearch::IdType</a></div><div class="ttdeci">uint32 IdType</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00044">ContactSearch.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1timeInfo_html"><div class="ttname"><a href="classpFlow_1_1timeInfo.html">pFlow::timeInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="timeInfo_8hpp_source.html#l00028">timeInfo.hpp:28</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triSurface_html_a2af1db184af973a2c0c3333581a57f58"><div class="ttname"><a href="classpFlow_1_1triSurface.html#a2af1db184af973a2c0c3333581a57f58">pFlow::triSurface::numPoints</a></div><div class="ttdeci">uint32 numPoints() const</div><div class="ttdef"><b>Definition:</b> <a href="triSurface_8hpp_source.html#l00157">triSurface.hpp:157</a></div></div>
<div class="ttc" id="aclasspFlow_1_1unsortedPairs_html"><div class="ttname"><a href="classpFlow_1_1unsortedPairs.html">pFlow::unsortedPairs</a></div><div class="ttdef"><b>Definition:</b> <a href="unsortedPairs_8hpp_source.html#l00032">unsortedPairs.hpp:32</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1boundaryContactSearchList_html"><div class="ttname"><a href="classpFlow_1_1boundaryContactSearchList.html">pFlow::boundaryContactSearchList</a></div><div class="ttdef"><b>Definition:</b> <a href="boundaryContactSearchList_8hpp_source.html#l00010">boundaryContactSearchList.hpp:10</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particles_html_adaa26de060a2ce43e01c63ff154a820e"><div class="ttname"><a href="classpFlow_1_1particles.html#adaa26de060a2ce43e01c63ff154a820e">pFlow::particles::boundingSphere</a></div><div class="ttdeci">virtual const realPointField_D &amp; boundingSphere() const =0</div></div>
<div class="ttc" id="aclasspFlow_1_1particles_html"><div class="ttname"><a href="classpFlow_1_1particles.html">pFlow::particles</a></div><div class="ttdef"><b>Definition:</b> <a href="particles_8hpp_source.html#l00033">particles.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particles_html_ab65a0c533b6ad751af6e319e219b1bae"><div class="ttname"><a href="classpFlow_1_1particles.html#ab65a0c533b6ad751af6e319e219b1bae">pFlow::particles::pointPosition</a></div><div class="ttdeci">auto &amp; pointPosition()</div><div class="ttdef"><b>Definition:</b> <a href="particles_8hpp_source.html#l00079">particles.hpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triSurface_html_a29636b87d7c459031e2410e5d7623b0f"><div class="ttname"><a href="classpFlow_1_1triSurface.html#a29636b87d7c459031e2410e5d7623b0f">pFlow::triSurface::size</a></div><div class="ttdeci">uint32 size() const</div><div class="ttdef"><b>Definition:</b> <a href="triSurface_8hpp_source.html#l00162">triSurface.hpp:162</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triSurface_html_acf65f5945c49ee75276463ee66ce4107"><div class="ttname"><a href="classpFlow_1_1triSurface.html#acf65f5945c49ee75276463ee66ce4107">pFlow::triSurface::points</a></div><div class="ttdeci">const realx3Field_D &amp; points() const</div><div class="ttdef"><b>Definition:</b> <a href="triSurface_8hpp_source.html#l00172">triSurface.hpp:172</a></div></div>
<div class="ttc" id="acontactSearchGlobals_8hpp_html"><div class="ttname"><a href="contactSearchGlobals_8hpp.html">contactSearchGlobals.hpp</a></div></div>
<div class="ttc" id="ageometry_8hpp_html"><div class="ttname"><a href="geometry_8hpp.html">geometry.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1timeInfo_html_ab27fc2e669d34a0f956786f8000ca284"><div class="ttname"><a href="classpFlow_1_1timeInfo.html#ab27fc2e669d34a0f956786f8000ca284">pFlow::timeInfo::dt</a></div><div class="ttdeci">const real &amp; dt() const</div><div class="ttdef"><b>Definition:</b> <a href="timeInfo_8hpp_source.html#l00051">timeInfo.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_af9dd514cd28edb2b83ffa07d78e89a77"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#af9dd514cd28edb2b83ffa07d78e89a77">pFlow::ContactSearch::ContactSearch</a></div><div class="ttdeci">ContactSearch(const dictionary &amp;csDict, const box &amp;extDomain, const particles &amp;prtcl, const geometry &amp;geom, Timers &amp;timers)</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00101">ContactSearch.hpp:101</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a51122b76468e0c5f19ea69c5c0ca6cf4"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a51122b76468e0c5f19ea69c5c0ca6cf4">pFlow::VectorSingle::deviceViewAll</a></div><div class="ttdeci">INLINE_FUNCTION_H auto &amp; deviceViewAll()</div><div class="ttdoc">Device view range [0,capcity)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00249">VectorSingle.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1triSurface_html_a6668a8a544618783fd4955d2e9bebb7f"><div class="ttname"><a href="classpFlow_1_1triSurface.html#a6668a8a544618783fd4955d2e9bebb7f">pFlow::triSurface::normals</a></div><div class="ttdeci">auto &amp; normals()</div><div class="ttdef"><b>Definition:</b> <a href="triSurface_8hpp_source.html#l00202">triSurface.hpp:202</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html"><div class="ttname"><a href="classpFlow_1_1contactSearch.html">pFlow::contactSearch</a></div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00042">contactSearch.hpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a954a983b771de06388078b901b5755a6"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a954a983b771de06388078b901b5755a6">pFlow::ContactSearch::TypeInfoTemplate11</a></div><div class="ttdeci">TypeInfoTemplate11(&quot;ContactSearch&quot;, SearchMethodType)</div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a14a58890480776cd43f47cf202c50c45"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a14a58890480776cd43f47cf202c50c45">pFlow::ContactSearch::SearchMethodType</a></div><div class="ttdeci">searchMethod SearchMethodType</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00048">ContactSearch.hpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_a2879a9ee0fc5eab64daf8d5c6f3d88a9"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#a2879a9ee0fc5eab64daf8d5c6f3d88a9">pFlow::contactSearch::extendedDomainBox</a></div><div class="ttdeci">const box &amp; extendedDomainBox() const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00160">contactSearch.hpp:160</a></div></div>
<div class="ttc" id="aclasspFlow_1_1contactSearch_html_a4cc3ca367ecc826265fde31912f28d99"><div class="ttname"><a href="classpFlow_1_1contactSearch.html#a4cc3ca367ecc826265fde31912f28d99">pFlow::contactSearch::Particles</a></div><div class="ttdeci">const particles &amp; Particles() const</div><div class="ttdef"><b>Definition:</b> <a href="contactSearch_8hpp_source.html#l00166">contactSearch.hpp:166</a></div></div>
<div class="ttc" id="aclasspFlow_1_1timeInfo_html_abf39a85732afffe30b0bc9f11f3294cd"><div class="ttname"><a href="classpFlow_1_1timeInfo.html#abf39a85732afffe30b0bc9f11f3294cd">pFlow::timeInfo::t</a></div><div class="ttdeci">const real &amp; t() const</div><div class="ttdef"><b>Definition:</b> <a href="timeInfo_8hpp_source.html#l00047">timeInfo.hpp:47</a></div></div>
<div class="ttc" id="aclasspFlow_1_1box_html"><div class="ttname"><a href="classpFlow_1_1box.html">pFlow::box</a></div><div class="ttdef"><b>Definition:</b> <a href="box_8hpp_source.html#l00032">box.hpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1timeInfo_html_aafddac2ca8db0456c5674a914ed28545"><div class="ttname"><a href="classpFlow_1_1timeInfo.html#aafddac2ca8db0456c5674a914ed28545">pFlow::timeInfo::iter</a></div><div class="ttdeci">const uint32 &amp; iter() const</div><div class="ttdef"><b>Definition:</b> <a href="timeInfo_8hpp_source.html#l00055">timeInfo.hpp:55</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt; SearchMethodType &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1geometry_html"><div class="ttname"><a href="classpFlow_1_1geometry.html">pFlow::geometry</a></div><div class="ttdoc">Base class for geometry for managing tri-surfaces, geometry motion, and surface physical properties.</div><div class="ttdef"><b>Definition:</b> <a href="geometry_8hpp_source.html#l00044">geometry.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_a9b8b797bb562937bc89d63a074331a7b"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#a9b8b797bb562937bc89d63a074331a7b">pFlow::ContactSearch::BroadSearch</a></div><div class="ttdeci">bool BroadSearch(const timeInfo &amp;ti, csPairContainerType &amp;ppPairs, csPairContainerType &amp;pwPairs, bool force=false) override</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00056">ContactSearch.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particles_html_a1898e0b780e6dcca30fb4549130bcb82"><div class="ttname"><a href="classpFlow_1_1particles.html#a1898e0b780e6dcca30fb4549130bcb82">pFlow::particles::dynPointStruct</a></div><div class="ttdeci">auto &amp; dynPointStruct()</div><div class="ttdef"><b>Definition:</b> <a href="particles_8hpp_source.html#l00074">particles.hpp:74</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html">pFlow::ContactSearch</a></div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00038">ContactSearch.hpp:38</a></div></div>
<div class="ttc" id="acontactSearch_8hpp_html"><div class="ttname"><a href="contactSearch_8hpp.html">contactSearch.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particles_html_aa8d7c58c3cb52c881a119c56dbb7b5df"><div class="ttname"><a href="classpFlow_1_1particles.html#aa8d7c58c3cb52c881a119c56dbb7b5df">pFlow::particles::boundingSphereMinMax</a></div><div class="ttdeci">virtual void boundingSphereMinMax(real &amp;minDiam, real &amp;maxDiam) const =0</div><div class="ttdef"><b>Definition:</b> <a href="particles_8cpp_source.html#l00116">particles.cpp:116</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html_ab03a6396d06d64e1360bae7b31b221cf"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html#ab03a6396d06d64e1360bae7b31b221cf">pFlow::ContactSearch::BoundaryBroadSearch</a></div><div class="ttdeci">bool BoundaryBroadSearch(uint32 bndryIndex, const timeInfo &amp;ti, csPairContainerType &amp;ppPairs, csPairContainerType &amp;pwPairs, bool force=false) override</div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00080">ContactSearch.hpp:80</a></div></div>
<div class="ttc" id="aclasspFlow_1_1dictionary_html"><div class="ttname"><a href="classpFlow_1_1dictionary.html">pFlow::dictionary</a></div><div class="ttdoc">Dictionary holds a set of data entries or sub-dictionaries that are enclosed in a curely braces or ar...</div><div class="ttdef"><b>Definition:</b> <a href="dictionary_8hpp_source.html#l00067">dictionary.hpp:67</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_521648a0ab4242664e9ecc37593f7519.html">Interaction</a></li><li class="navelem"><a class="el" href="dir_f27c6bb1e70979f7ed7175f297e69b7e.html">contactSearch</a></li><li class="navelem"><a class="el" href="dir_2ba5b24e55596b6b1de53b507451952d.html">ContactSearch</a></li><li class="navelem"><a class="el" href="ContactSearch_8hpp.html">ContactSearch.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Interaction/contactSearch/ContactSearch/ContactSearchs.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('ContactSearchs_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">ContactSearchs.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for ContactSearchs.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="ContactSearchs_8cpp__incl.png" border="0" usemap="#src_2Interaction_2contactSearch_2ContactSearch_2ContactSearchs_8cpp" alt=""/></div>
</div>
</div>
<p><a href="ContactSearchs_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_521648a0ab4242664e9ecc37593f7519.html">Interaction</a></li><li class="navelem"><a class="el" href="dir_f27c6bb1e70979f7ed7175f297e69b7e.html">contactSearch</a></li><li class="navelem"><a class="el" href="dir_2ba5b24e55596b6b1de53b507451952d.html">ContactSearch</a></li><li class="navelem"><a class="el" href="ContactSearchs_8cpp.html">ContactSearchs.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
digraph "src/Interaction/contactSearch/ContactSearch/ContactSearchs.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/Interaction/contactSearch\l/ContactSearch/ContactSearchs.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="ContactSearch.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$ContactSearch_8hpp.html",tooltip=" "];
Node1 -> Node182 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node182 [label="NBS.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$NBS_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,152 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/Interaction/contactSearch/ContactSearch/ContactSearchs.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('ContactSearchs_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">ContactSearchs.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="ContactSearchs_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ContactSearch_8hpp.html">ContactSearch.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">//#include &quot;cellMapping.hpp&quot;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="NBS_8hpp.html">NBS.hpp</a>&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">//#include &quot;multiGridNBS.hpp&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">//#include &quot;multiGridMapping.hpp&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1ContactSearch.html">pFlow::ContactSearch&lt;pFlow::NBS&gt;</a>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment">//template class pFlow::ContactSearch&lt;pFlow::multiGridNBS, pFlow::multiGridMapping&gt;;</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aNBS_8hpp_html"><div class="ttname"><a href="NBS_8hpp.html">NBS.hpp</a></div></div>
<div class="ttc" id="aContactSearch_8hpp_html"><div class="ttname"><a href="ContactSearch_8hpp.html">ContactSearch.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1ContactSearch_html"><div class="ttname"><a href="classpFlow_1_1ContactSearch.html">pFlow::ContactSearch</a></div><div class="ttdef"><b>Definition:</b> <a href="ContactSearch_8hpp_source.html#l00038">ContactSearch.hpp:38</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_521648a0ab4242664e9ecc37593f7519.html">Interaction</a></li><li class="navelem"><a class="el" href="dir_f27c6bb1e70979f7ed7175f297e69b7e.html">contactSearch</a></li><li class="navelem"><a class="el" href="dir_2ba5b24e55596b6b1de53b507451952d.html">ContactSearch</a></li><li class="navelem"><a class="el" href="ContactSearchs_8cpp.html">ContactSearchs.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Field.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Field_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Field.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Field_8cpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Field_8cppdep" alt=""/></div>
</div>
</div>
<p><a href="Field_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Field_8cpp.html">Field.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/phasicFlow/containers/Field/Field.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Field.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/containers\l/Field/Field.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Field_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,441 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Field.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Field_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Field.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="Field_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace&gt;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">pFlow::Field&lt;T, MemorySpace&gt;::read</a></div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22"> 23</a></span>&#160;(</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;)</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;{</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordtype">bool</span> tokenFound = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; tokenFound = is.<a class="code" href="classpFlow_1_1iIstream.html#a5f238bd4e73ce3b43b8a737a8f30ab78">findToken</a>(fieldKey_);</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">if</span>( !tokenFound )</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; {</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a>( is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), is.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>() ) &lt;&lt;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="stringliteral">&quot; error in searching for filedkey &quot;</span> &lt;&lt; fieldKey_&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; }</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">if</span>( !VectorType::read(is) )</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a>(is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), is.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>())&lt;&lt;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="stringliteral">&quot;error in reading field data from field &quot;</span>&lt;&lt; this-&gt;name()&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; is.<a class="code" href="classpFlow_1_1iIstream.html#aca8c209dd4920ea633336742d8a874e0">readEndStatement</a>(<span class="stringliteral">&quot;Field::read&quot;</span>);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace&gt;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">pFlow::Field&lt;T, MemorySpace&gt;::read</a></div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a08e94ee49f203eb9d2ab071846af9fb5"> 54</a></span>&#160;(</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is,</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; iop,</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">bool</span> resume</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;)</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;{</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">bool</span> tokenFound = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span>(resume)</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; {</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span>(iop.<a class="code" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">thisProcReadData</a>())</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; tokenFound = is.<a class="code" href="classpFlow_1_1iIstream.html#afde1855233ba897f4bb342285f94fc87">findTokenResume</a>(fieldKey_);</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">if</span>(iop.<a class="code" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">thisProcReadData</a>())</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; tokenFound = is.<a class="code" href="classpFlow_1_1iIstream.html#a5f238bd4e73ce3b43b8a737a8f30ab78">findToken</a>(fieldKey_);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>( !tokenFound )</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a>( is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), is.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>() ) &lt;&lt;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="stringliteral">&quot; error in searching for filedkey &quot;</span> &lt;&lt; fieldKey_&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span>( !VectorType::read(is, iop) )</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; {</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a>(is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), is.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>())&lt;&lt;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;error in reading field data from field &quot;</span>&lt;&lt; this-&gt;name()&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span>(iop.<a class="code" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">thisProcReadData</a>())</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; is.<a class="code" href="classpFlow_1_1iIstream.html#aca8c209dd4920ea633336742d8a874e0">readEndStatement</a>(<span class="stringliteral">&quot;Field::read&quot;</span>);</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace&gt;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">pFlow::Field&lt;T, MemorySpace&gt;::write</a></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91"> 95</a></span>&#160;(</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;)<span class="keyword">const</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;{</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#af746580dedb817d31f5060ee684b9543">writeWordKeyword</a>(fieldKey_)&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span>(!os.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>))<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">if</span>(!VectorType::write(os)) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; </div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a2ddd99bc2797e644b86f74dd1c176f4a">endEntry</a>();</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">if</span>(!os.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>))<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; </div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;}</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace&gt;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">pFlow::Field&lt;T, MemorySpace&gt;::write</a></div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a8c955e17bd99dcab8fa9cf8c96ba6dd0"> 116</a></span>&#160;(</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; iop</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;)<span class="keyword">const</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;{</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">if</span>(iop.<a class="code" href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9">thisProcWriteData</a>())</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#af746580dedb817d31f5060ee684b9543">writeWordKeyword</a>(fieldKey_)&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span>(!os.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>))<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span>(!VectorType::write(os, iop)) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span>(iop.<a class="code" href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9">thisProcWriteData</a>())</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; {</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a2ddd99bc2797e644b86f74dd1c176f4a">endEntry</a>();</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a577f32ec301e562d6a205c6bd15fc005">newLine</a>();</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; } </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span>(!os.<a class="code" href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">check</a>(<a class="code" href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a>))<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/*template&lt;template&lt;class, class&gt; class VectorField, class T, class PropType&gt;</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment">bool pFlow::Field&lt;VectorField, T, PropType&gt;::readUniform</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment">( </span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> iIstream&amp; is,</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> size_t len,</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> bool readLength</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">)</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> size_t flen = 0;</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> if( readLength ) </span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> is&gt;&gt;flen;</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> if(is.bad() || is.eof() )</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> &quot;expected integer value to specify field length \n&quot;;</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> return false;</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> else</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> flen = len;</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment"> // create a vector with one element and read it in</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment"> T bF;</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> is &gt;&gt; bF; </span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment"> VectorType::assign(flen, bF);</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> // read end statement char ;</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> is.readEndStatement(&quot;readField&quot;);</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> return true;</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment">template&lt;template&lt;class, class&gt; class VectorField, class T, class PropType&gt;</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment">bool pFlow::Field&lt;VectorField, T, PropType&gt;::readNonUniform</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment">(</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> iIstream&amp; is,</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> size_t len</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment">)</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"> size_t flen = 0;</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> is &gt;&gt; flen;</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> if(is.bad() || is.eof() )</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> &quot; expected integer value to specify field length \n&quot;;</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> return false;</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment"> if( len!=0 &amp;&amp; flen != len )</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> &quot; expected &quot;&lt;&lt; len &lt;&lt;&quot; as the field length but found &quot;&lt;&lt; flen &lt;&lt;&quot; \n&quot;;</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> return false; </span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> VectorType::readVector(is, flen);</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> is.readEndStatement(&quot;readField&quot;);</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> if( this-&gt;size() != flen )</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment"> &quot; expected &quot; &lt;&lt; flen &lt;&lt; &quot; elements, but supplied &quot;&lt;&lt;</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"> this-&gt;size() &lt;&lt; &quot; elements in file &quot;&lt;&lt; is.name() &lt;&lt;endl;</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment"> return false; </span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment"> return true; </span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment">}*/</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; </div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; </div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="comment">/*template&lt;template&lt;class, class&gt; class VectorField, class T, class PropType&gt;</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment">bool pFlow::Field&lt;VectorField, T, PropType&gt;::readField</span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment">(</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> iIstream&amp; is,</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment"> const size_t len,</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"> bool resume,</span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"> bool readLength</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment">)</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment"> bool tokenFound;</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> if( resume )</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> tokenFound = is.findTokenResume(fieldKey_);</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> else</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment"> tokenFound = is.findToken(fieldKey_);</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment"> if( !tokenFound )</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment"> &quot; error in searching for filedkey &quot; &lt;&lt; fieldKey_&lt;&lt;endl;</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"> return false;</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> word fieldU;</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment"> is &gt;&gt; fieldU;</span></div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> if(is.bad() || is.eof())</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber()) &lt;&lt;</span></div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"> &quot; error in reading keyword from file.&quot;;</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> return false;</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> if( fieldU == uniform__ )</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> return readUniform(is, len, readLength);</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="comment"> else if( fieldU == nonUniform__ )</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> return readNonUniform(is, len); </span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="comment"> else</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="comment"> ioErrorInFile( is.name(), is.lineNumber() ) &lt;&lt;</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"> &quot;unknown keyword, expected uniform/nonUniform, but found &quot; &lt;&lt;</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"> fieldU &lt;&lt; endl;</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> return false;</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="comment"> return true;</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment">template&lt;template&lt;class, class&gt; class VectorField, class T, class PropType&gt;</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="comment">bool pFlow::Field&lt;VectorField, T, PropType&gt;::readField</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="comment">(</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"> iIstream&amp; is,</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment"> bool resume</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="comment">)</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="comment"> return readField(is, 0, resume ,true);</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="comment">template&lt;template&lt;class, class&gt; class VectorField, class T, class PropType&gt;</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="comment">bool pFlow::Field&lt;VectorField, T, PropType&gt;::writeField(iOstream&amp; os)const</span></div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="comment"> os.writeWordKeyword(fieldKey_) &lt;&lt; nonUniform__&lt;&lt;endl;</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment"> os&lt;&lt; this-&gt;size()&lt;&lt;endl;</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"> VectorType::write(os);</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment"> os.endEntry();</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="comment"> return true;</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="comment">}*/</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1iOstream_html_a577f32ec301e562d6a205c6bd15fc005"><div class="ttname"><a href="classpFlow_1_1iOstream.html#a577f32ec301e562d6a205c6bd15fc005">pFlow::iOstream::newLine</a></div><div class="ttdeci">virtual iOstream &amp; newLine()</div><div class="ttdoc">Write a newLine to stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8cpp_source.html#l00112">iOstream.cpp:112</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_aca8c209dd4920ea633336742d8a874e0"><div class="ttname"><a href="classpFlow_1_1iIstream.html#aca8c209dd4920ea633336742d8a874e0">pFlow::iIstream::readEndStatement</a></div><div class="ttdeci">char readEndStatement(const char *funcName)</div><div class="ttdoc">End statement character ;.</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00359">iIstream.cpp:359</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_a922d2784284e8f6ee4009c3d92ba48b6"><div class="ttname"><a href="pFlowMacros_8hpp.html#a922d2784284e8f6ee4009c3d92ba48b6">FUNCTION_NAME</a></div><div class="ttdeci">#define FUNCTION_NAME</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00029">pFlowMacros.hpp:29</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_aff8e92ab47032ae811d1271161cb9b22"><div class="ttname"><a href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">pFlow::Field::read</a></div><div class="ttdeci">bool read(iIstream &amp;is)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8cpp_source.html#l00023">Field.cpp:23</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aba8f0c455a3fdb4b05ad33a25b13b189"><div class="ttname"><a href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">pFlow::endl</a></div><div class="ttdeci">iOstream &amp; endl(iOstream &amp;os)</div><div class="ttdoc">Add newline and flush stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00341">iOstream.hpp:341</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a367eb3425fc4e8270e2aa961df8ac8a5"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a367eb3425fc4e8270e2aa961df8ac8a5">pFlow::IOstream::check</a></div><div class="ttdeci">virtual bool check(const char *operation) const</div><div class="ttdoc">Check IOstream status for given operation.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00042">IOstream.cpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_afde1855233ba897f4bb342285f94fc87"><div class="ttname"><a href="classpFlow_1_1iIstream.html#afde1855233ba897f4bb342285f94fc87">pFlow::iIstream::findTokenResume</a></div><div class="ttdeci">virtual bool findTokenResume(const word &amp;w)</div><div class="ttdoc">search for all tokesn after the current file position and find the first word token tbat matchs w</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00090">iIstream.cpp:90</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a6a40de4ceed55b2f78cf3027739dfd91"><div class="ttname"><a href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">pFlow::Field::write</a></div><div class="ttdeci">bool write(iOstream &amp;os) const</div><div class="ttdef"><b>Definition:</b> <a href="Field_8cpp_source.html#l00095">Field.cpp:95</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html"><div class="ttname"><a href="classpFlow_1_1IOPattern.html">pFlow::IOPattern</a></div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00032">IOPattern.hpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html_a2ddd99bc2797e644b86f74dd1c176f4a"><div class="ttname"><a href="classpFlow_1_1iOstream.html#a2ddd99bc2797e644b86f74dd1c176f4a">pFlow::iOstream::endEntry</a></div><div class="ttdeci">virtual iOstream &amp; endEntry()</div><div class="ttdoc">Write end entry (';') followed by newline.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8cpp_source.html#l00104">iOstream.cpp:104</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a84ecbbbba75a3f4168093dd8e483b972"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">pFlow::IOPattern::thisProcReadData</a></div><div class="ttdeci">bool thisProcReadData() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00138">IOPattern.hpp:138</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a96f33dc2acbd7a153e16d6405222f1a9"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9">pFlow::IOPattern::thisProcWriteData</a></div><div class="ttdeci">bool thisProcWriteData() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00146">IOPattern.hpp:146</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_ac9b54653d0ec63ee05f64a185437b335"><div class="ttname"><a href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">pFlow::IOstream::name</a></div><div class="ttdeci">virtual const word &amp; name() const</div><div class="ttdoc">Return the name of the stream.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00031">IOstream.cpp:31</a></div></div>
<div class="ttc" id="aerror_8hpp_html_a83efa053dfcfcef04cc0e721c0314ff3"><div class="ttname"><a href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a></div><div class="ttdeci">#define ioErrorInFile(fileName, lineNumber)</div><div class="ttdoc">Report an error in file operation with supplied fileName and lineNumber.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00087">error.hpp:87</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a607efe5fb94edbe4cfa890c4907e76c3"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">pFlow::IOstream::lineNumber</a></div><div class="ttdeci">int32 lineNumber() const</div><div class="ttdoc">Const access to the current stream line number.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8hpp_source.html#l00223">IOstream.hpp:223</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html_a5f238bd4e73ce3b43b8a737a8f30ab78"><div class="ttname"><a href="classpFlow_1_1iIstream.html#a5f238bd4e73ce3b43b8a737a8f30ab78">pFlow::iIstream::findToken</a></div><div class="ttdeci">virtual bool findToken(const word &amp;w)</div><div class="ttdoc">search for all tokesn and find the first word token tbat matchs w</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00084">iIstream.cpp:84</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html_af746580dedb817d31f5060ee684b9543"><div class="ttname"><a href="classpFlow_1_1iOstream.html#af746580dedb817d31f5060ee684b9543">pFlow::iOstream::writeWordKeyword</a></div><div class="ttdeci">virtual iOstream &amp; writeWordKeyword(const word &amp;kw)</div><div class="ttdoc">Write the keyword followed by an appropriate indentation.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8cpp_source.html#l00048">iOstream.cpp:48</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Field_8cpp.html">Field.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,159 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Field.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Field_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">Field.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for Field.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Field_8hpp__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Field_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Field_8hpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Field_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="Field_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1Field.html">Field&lt; T, MemorySpace &gt;</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a8c42fb1d53ea4c2ca6ce70cc75d244e4"><td class="memTemplParams" colspan="2">template&lt;class T , class MemorySpace &gt; </td></tr>
<tr class="memitem:a8c42fb1d53ea4c2ca6ce70cc75d244e4"><td class="memTemplItemLeft" align="right" valign="top">iIstream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a8c42fb1d53ea4c2ca6ce70cc75d244e4">operator&gt;&gt;</a> (iIstream &amp;is, Field&lt; T, MemorySpace &gt; &amp;ifld)</td></tr>
<tr class="separator:a8c42fb1d53ea4c2ca6ce70cc75d244e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63020ca8921f158ecf170927eca89ca5"><td class="memTemplParams" colspan="2">template&lt;typename T , typename MemorySpace &gt; </td></tr>
<tr class="memitem:a63020ca8921f158ecf170927eca89ca5"><td class="memTemplItemLeft" align="right" valign="top">iOstream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a63020ca8921f158ecf170927eca89ca5">operator&lt;&lt;</a> (iOstream &amp;os, const Field&lt; T, MemorySpace &gt; &amp;ofld)</td></tr>
<tr class="separator:a63020ca8921f158ecf170927eca89ca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Field_8hpp.html">Field.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,6 @@
var Field_8hpp =
[
[ "Field", "classpFlow_1_1Field.html", "classpFlow_1_1Field" ],
[ "operator>>", "Field_8hpp.html#a8c42fb1d53ea4c2ca6ce70cc75d244e4", null ],
[ "operator<<", "Field_8hpp.html#a63020ca8921f158ecf170927eca89ca5", null ]
];

View File

@ -0,0 +1,17 @@
digraph "src/phasicFlow/containers/Field/Field.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Field.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/containers\l/Field/Fields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Fields_8hpp.html",tooltip=" "];
Node1 -> Node5 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node5 [label="src/phasicFlow/containers\l/pointField/internalField\l/internalField.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$internalField_8hpp.html",tooltip=" "];
Node1 -> Node118 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node118 [label="src/phasicFlow/containers\l/pointField/pointField\l/pointField copy.hpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pointField_01copy_8hpp.html",tooltip=" "];
Node1 -> Node119 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node119 [label="src/phasicFlow/containers\l/pointField/pointField\l/pointField_old.hpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$pointField__old_8hpp.html",tooltip=" "];
Node1 -> Node142 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node142 [label="src/phasicFlow/containers\l/triSurfaceField/triSurfaceField.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$triSurfaceField_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,22 @@
digraph "src/phasicFlow/containers/Field/Field.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Field.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="types.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$types_8hpp.html",tooltip=" "];
Node1 -> Node35 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node35 [label="VectorSingle.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$VectorSingle_8hpp.html",tooltip=" "];
Node35 -> Node65 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node65 [label="streams.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$streams_8hpp.html",tooltip=" "];
Node1 -> Node85 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node85 [label="wordVectorHost.hpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$wordVectorHost_8hpp.html",tooltip=" "];
Node85 -> Node35 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node85 -> Node86 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node86 [label="Vector.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Vector_8hpp.html",tooltip=" "];
Node1 -> Node86 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node1 -> Node65 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node1 -> Node92 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node92 [label="Field.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$Field_8cpp.html",tooltip=" "];
}

View File

@ -0,0 +1,412 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Field.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Field_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Field.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="Field_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __Field_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __Field_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">types.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="VectorSingle_8hpp.html">VectorSingle.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wordVectorHost_8hpp.html">wordVectorHost.hpp</a>&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Vector_8hpp.html">Vector.hpp</a>&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="streams_8hpp.html">streams.hpp</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;{</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace = <span class="keywordtype">void</span>&gt;</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html"> 36</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">Field</a></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1VectorSingle.html">VectorSingle</a>&lt;T, MemorySpace&gt;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a90ee4a972a5e87720ef1e4b067a884ac"> 42</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a> = <a class="code" href="classpFlow_1_1VectorSingle.html">VectorSingle&lt;T,MemorySpace&gt;</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc"> 44</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">FieldType</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;T, MemorySpace&gt;</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; </div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a956cfd99b2704fca5961350f47963e88"> 46</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">FieldTypeHost</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;T, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#abb38920d985a52377685fd852f62f4c2"> 48</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#abb38920d985a52377685fd852f62f4c2">memory_space</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a2e01852751e144707eefc63300bcce22">VectorType::memory_space</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a0b138cbd599d4fc0e95738e75f1e7445"> 50</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a0b138cbd599d4fc0e95738e75f1e7445">execution_space</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a6dc9533c29ac1a7bda75f3f175df75fb">VectorType::execution_space</a>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a2b8f0ba308c4037e39ec503b9a1e4d0b"> 52</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a2b8f0ba308c4037e39ec503b9a1e4d0b">iterator</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a4d1ca55c8c62d4fbf3ea42d9919125a0">VectorType::iterator</a>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a0b878024ac2eb388b20acaf63eb29780"> 54</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a0b878024ac2eb388b20acaf63eb29780">const_iterator</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a2601f8255f8a42148603816eb649c961">VectorType::const_iterator</a>;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; </div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a24e1cc28757f0776d455faa2a92cc094"> 56</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a24e1cc28757f0776d455faa2a92cc094">reference</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a0c5a1541ecf7ad17925583cf6abd2c65">VectorType::reference</a>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a26f1ec9da8d343811868fe6cd475976d"> 58</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a26f1ec9da8d343811868fe6cd475976d">const_reference</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#ac98a2432df95afe641c3847268f579e8">VectorType::const_reference</a>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; </div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a3c9fa6c4f9077b7dd44bd96007ef416a"> 60</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a3c9fa6c4f9077b7dd44bd96007ef416a">value_type</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#afb9ded5f49336ae503bb9f2035ea902b">VectorType::value_type</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a15206b415c09500493d38c91b970e958"> 62</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a15206b415c09500493d38c91b970e958">pointer</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#ab088798d28525c0befe3c707b95c5bc2">VectorType::pointer</a>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a0adaff4989b6c9d6ddd4b9ba43f9d95e"> 64</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html#a0adaff4989b6c9d6ddd4b9ba43f9d95e">const_pointer</a> = <span class="keyword">typename</span> <a class="code" href="classpFlow_1_1VectorSingle.html#aeb8303778a4db95b65080fb533378d32">VectorType::const_pointer</a>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; </div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a7c3f2d5a74856425892835688d908f72"> 69</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keyword">inline</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1Field.html#a7c3f2d5a74856425892835688d908f72">FKey</a> = <span class="stringliteral">&quot;value&quot;</span>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6"> 71</a></span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a> = <a class="code" href="classpFlow_1_1Field.html#a7c3f2d5a74856425892835688d908f72">FKey</a>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a870370c1af5b7530e534354e45451745">TypeInfoTemplateNV111</a>(<span class="stringliteral">&quot;Field&quot;</span>, T, <a class="code" href="classpFlow_1_1VectorSingle.html#a4afaef92d6e6a55303575f96107d40ec">VectorType::memoerySpaceName</a>());</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a37d975a33e390747a97a453bc0455107"> 81</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a37d975a33e390747a97a453bc0455107">Field</a>()</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; :</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>()</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {}</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#aa59f88e2c795d2440197ac2b54a21770"> 86</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#aa59f88e2c795d2440197ac2b54a21770">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>)</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; :</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>)</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {}</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a677b63b1fe9e5d48118598ccf4ed313d"> 92</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a677b63b1fe9e5d48118598ccf4ed313d">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; :</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>),</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {}</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#afaf4226f4c67b47e1299c55a54f21733"> 99</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#afaf4226f4c67b47e1299c55a54f21733">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keywordtype">size_t</span> len)</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; :</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, len),</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; {}</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a677755da27b97125abd8690520e469b3"> 108</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a677755da27b97125abd8690520e469b3">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keywordtype">size_t</span> len, <span class="keyword">const</span> T&amp; val)</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; :</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, len, val),</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; {}</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#aef7f58ed165364ea9424e726a12a5d0c"> 114</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#aef7f58ed165364ea9424e726a12a5d0c">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keywordtype">size_t</span> <a class="code" href="classpFlow_1_1VectorSingle.html#aef2405d22737e2c47dfe9994f27a028f">capacity</a>, <span class="keywordtype">size_t</span> len, <span class="keyword">const</span> T&amp; val)</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; :</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, len, len, <a class="code" href="structRESERVE.html">RESERVE</a>()),</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html#a6ab1c6d91f769bc9bc0a58cf9f1333d6">VectorType::fill</a>(val);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#accde17c10fc753920eb4601eb787791f"> 123</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#accde17c10fc753920eb4601eb787791f">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keywordtype">size_t</span> <a class="code" href="classpFlow_1_1VectorSingle.html#aef2405d22737e2c47dfe9994f27a028f">capacity</a>, <span class="keywordtype">size_t</span> len, <a class="code" href="structRESERVE.html">RESERVE</a>)</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; :</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <a class="code" href="classpFlow_1_1VectorSingle.html#aef2405d22737e2c47dfe9994f27a028f">capacity</a>, len, <a class="code" href="structRESERVE.html">RESERVE</a>()),</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; {}</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; </div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a083ef991abc37177cf71c0ed6dcc19fd"> 130</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a083ef991abc37177cf71c0ed6dcc19fd">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">Vector&lt;T&gt;</a>&amp; vec)</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; :</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(vec.<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>(), vec.vectorField()),</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; {}</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a141267793b0eff81395ebff2d5e4bcce"> 137</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a141267793b0eff81395ebff2d5e4bcce">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Vector.html">Vector&lt;T&gt;</a>&amp; vec)</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; :</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, vec.vectorField()),</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {}</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; </div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a1a2e7d088787cfa568762c3aedf5b2d5"> 144</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a1a2e7d088787cfa568762c3aedf5b2d5">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keyword">const</span> std::vector&lt;T&gt;&amp; vec)</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; :</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, vec),</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; {}</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a6e59e2d8ecd94bfcd311d55efe74db71"> 151</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html#a6e59e2d8ecd94bfcd311d55efe74db71">Field</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html">FieldType</a>&amp; src):</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html">VectorType</a>(<a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>, src),</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>(<a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>)</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {}</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a37d975a33e390747a97a453bc0455107">Field</a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc">FieldType</a>&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a670c26ed7cebf24facd8a6ccbc45c21e"> 161</a></span>&#160; <a class="code" href="classpFlow_1_1Field.html">FieldType</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a670c26ed7cebf24facd8a6ccbc45c21e">operator = </a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html">FieldType</a>&amp; rhs)</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; {</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span>(&amp;rhs == <span class="keyword">this</span>) <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="classpFlow_1_1VectorSingle.html#a7aaa7e113fd743fb56d22a1e2d34a30f">VectorType::operator=</a>(rhs);</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a37d975a33e390747a97a453bc0455107">Field</a>(<a class="code" href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc">FieldType</a>&amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc">FieldType</a>&amp; <a class="code" href="classpFlow_1_1Field.html#a670c26ed7cebf24facd8a6ccbc45c21e">operator = </a>(<a class="code" href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc">FieldType</a>&amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01"> 177</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">fieldKey</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">fieldKey_</a>;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; </div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2"> 182</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">name</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1VectorSingle.html#a42b75d70f7af50128d4392123fec643f">VectorType::name</a>();</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; </div>
<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#abddf9e42b6a8c5f965f2b23f30a4d960"> 188</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classpFlow_1_1Field.html#abddf9e42b6a8c5f965f2b23f30a4d960">fillField</a>(<a class="code" href="structpFlow_1_1Range.html">rangeU32</a> <a class="code" href="classpFlow_1_1span.html">span</a>, <span class="keyword">const</span> T&amp; val)</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; {</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; this-&gt;<a class="code" href="classpFlow_1_1VectorSingle.html#a6ab1c6d91f769bc9bc0a58cf9f1333d6">fill</a>(span, val);</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; </div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classpFlow_1_1Field.html#aaf0e1b45e5bcaaaf0a95e59aad8e8ba3"> 193</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classpFlow_1_1Field.html#aaf0e1b45e5bcaaaf0a95e59aad8e8ba3">fillField</a>(<span class="keyword">const</span> T&amp; val)</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; {</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; this-&gt;<a class="code" href="classpFlow_1_1VectorSingle.html#a6ab1c6d91f769bc9bc0a58cf9f1333d6">fill</a>(val);</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; </div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; </div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">read</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is);</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; </div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">write</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os)<span class="keyword">const</span>; </div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; </div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; </div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">read</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; iop, <span class="keywordtype">bool</span> resume = <span class="keyword">false</span>);</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; </div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">write</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; iop )<span class="keyword">const</span>; </div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;};</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; </div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T, <span class="keyword">class</span> MemorySpace&gt;</div>
<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a8c42fb1d53ea4c2ca6ce70cc75d244e4"> 214</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; <a class="code" href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">operator &gt;&gt; </a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a> &amp; is, <a class="code" href="classpFlow_1_1Field.html">Field&lt;T, MemorySpace&gt;</a> &amp; ifld )</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;{</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">if</span>( !ifld.<a class="code" href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">read</a>(is, <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816">IOPattern::MasterProcessorOnly</a>) )</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; {</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a> (is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), is.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>());</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="error_8hpp.html#aad22a1cd3b45a97ac8cd195f06fe61fe">fatalExit</a>;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; }</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> is;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;}</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> MemorySpace&gt;</div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a63020ca8921f158ecf170927eca89ca5"> 225</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; <a class="code" href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">operator &lt;&lt; </a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, <span class="keyword">const</span> <a class="code" href="classpFlow_1_1Field.html">Field&lt;T, MemorySpace&gt;</a>&amp; ofld )</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;{</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; </div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">if</span>( !ofld.<a class="code" href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">write</a>(os, <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7">IOPattern::AllProcessorsDifferent</a>) )</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; {</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a>(os.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>(), os.<a class="code" href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">lineNumber</a>());</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <a class="code" href="error_8hpp.html#aad22a1cd3b45a97ac8cd195f06fe61fe">fatalExit</a>;</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; </div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">return</span> os; </div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;}</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; </div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;}</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; </div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Field_8cpp.html">Field.cpp</a>&quot;</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; </div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor">#endif //__Field_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1span_html"><div class="ttname"><a href="classpFlow_1_1span.html">pFlow::span</a></div><div class="ttdef"><b>Definition:</b> <a href="span_8hpp_source.html#l00031">span.hpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a6ab1c6d91f769bc9bc0a58cf9f1333d6"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a6ab1c6d91f769bc9bc0a58cf9f1333d6">pFlow::VectorSingle::fill</a></div><div class="ttdeci">INLINE_FUNCTION_H void fill(const T &amp;val)</div><div class="ttdoc">Fill the range [0,size) with val.</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00365">VectorSingle.cpp:365</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_aeb8303778a4db95b65080fb533378d32"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#aeb8303778a4db95b65080fb533378d32">pFlow::VectorSingle::const_pointer</a></div><div class="ttdeci">const T * const_pointer</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00066">VectorSingle.hpp:66</a></div></div>
<div class="ttc" id="awordVectorHost_8hpp_html"><div class="ttname"><a href="wordVectorHost_8hpp.html">wordVectorHost.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a4d1ca55c8c62d4fbf3ea42d9919125a0"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a4d1ca55c8c62d4fbf3ea42d9919125a0">pFlow::VectorSingle::iterator</a></div><div class="ttdeci">T * iterator</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00054">VectorSingle.hpp:54</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_afaf4226f4c67b47e1299c55a54f21733"><div class="ttname"><a href="classpFlow_1_1Field.html#afaf4226f4c67b47e1299c55a54f21733">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, size_t len)</div><div class="ttdoc">Construct a field with name and fieldKey and specified len.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00099">Field.hpp:99</a></div></div>
<div class="ttc" id="aerror_8hpp_html_aad22a1cd3b45a97ac8cd195f06fe61fe"><div class="ttname"><a href="error_8hpp.html#aad22a1cd3b45a97ac8cd195f06fe61fe">fatalExit</a></div><div class="ttdeci">#define fatalExit</div><div class="ttdoc">Fatal exit.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00098">error.hpp:98</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_aaf0e1b45e5bcaaaf0a95e59aad8e8ba3"><div class="ttname"><a href="classpFlow_1_1Field.html#aaf0e1b45e5bcaaaf0a95e59aad8e8ba3">pFlow::Field::fillField</a></div><div class="ttdeci">void fillField(const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00193">Field.hpp:193</a></div></div>
<div class="ttc" id="atypes_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a2b353c24fbd6c2b144cab85ee50b8dd6"><div class="ttname"><a href="classpFlow_1_1Field.html#a2b353c24fbd6c2b144cab85ee50b8dd6">pFlow::Field::fieldKey_</a></div><div class="ttdeci">const word fieldKey_</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00071">Field.hpp:71</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a37d975a33e390747a97a453bc0455107"><div class="ttname"><a href="classpFlow_1_1Field.html#a37d975a33e390747a97a453bc0455107">pFlow::Field::Field</a></div><div class="ttdeci">Field()</div><div class="ttdoc">construct an empty Filed with default fieldKey</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00081">Field.hpp:81</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a13fac74a6ba182fd009dbb14818b0d01"><div class="ttname"><a href="classpFlow_1_1Field.html#a13fac74a6ba182fd009dbb14818b0d01">pFlow::Field::fieldKey</a></div><div class="ttdeci">word fieldKey() const</div><div class="ttdoc">return field key</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00177">Field.hpp:177</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_aff8e92ab47032ae811d1271161cb9b22"><div class="ttname"><a href="classpFlow_1_1Field.html#aff8e92ab47032ae811d1271161cb9b22">pFlow::Field::read</a></div><div class="ttdeci">bool read(iIstream &amp;is)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8cpp_source.html#l00023">Field.cpp:23</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a40dbbac51cc766420c6da450d95c1edc"><div class="ttname"><a href="classpFlow_1_1Field.html#a40dbbac51cc766420c6da450d95c1edc">pFlow::Field::FieldType</a></div><div class="ttdeci">Field&lt; T, MemorySpace &gt; FieldType</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00044">Field.hpp:44</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_accde17c10fc753920eb4601eb787791f"><div class="ttname"><a href="classpFlow_1_1Field.html#accde17c10fc753920eb4601eb787791f">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, size_t capacity, size_t len, RESERVE)</div><div class="ttdoc">Construct a field with name, fieldKey, capacity and len.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00123">Field.hpp:123</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a7c3f2d5a74856425892835688d908f72"><div class="ttname"><a href="classpFlow_1_1Field.html#a7c3f2d5a74856425892835688d908f72">pFlow::Field::FKey</a></div><div class="ttdeci">static const word FKey</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00069">Field.hpp:69</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html"><div class="ttname"><a href="classpFlow_1_1Field.html">pFlow::Field</a></div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00036">Field.hpp:36</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a83f9a8e30fb37f90e9a6436f4470aaa2"><div class="ttname"><a href="classpFlow_1_1Field.html#a83f9a8e30fb37f90e9a6436f4470aaa2">pFlow::Field::name</a></div><div class="ttdeci">word name() const</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00182">Field.hpp:182</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a2e01852751e144707eefc63300bcce22"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a2e01852751e144707eefc63300bcce22">pFlow::VectorSingle::memory_space</a></div><div class="ttdeci">typename viewType::memory_space memory_space</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00074">VectorSingle.hpp:74</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a0adaff4989b6c9d6ddd4b9ba43f9d95e"><div class="ttname"><a href="classpFlow_1_1Field.html#a0adaff4989b6c9d6ddd4b9ba43f9d95e">pFlow::Field&lt; uint32x3 &gt;::const_pointer</a></div><div class="ttdeci">typename VectorType::const_pointer const_pointer</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00064">Field.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_ab088798d28525c0befe3c707b95c5bc2"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#ab088798d28525c0befe3c707b95c5bc2">pFlow::VectorSingle::pointer</a></div><div class="ttdeci">T * pointer</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00064">VectorSingle.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a6dc9533c29ac1a7bda75f3f175df75fb"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a6dc9533c29ac1a7bda75f3f175df75fb">pFlow::VectorSingle::execution_space</a></div><div class="ttdeci">typename viewType::execution_space execution_space</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00076">VectorSingle.hpp:76</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a42b75d70f7af50128d4392123fec643f"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a42b75d70f7af50128d4392123fec643f">pFlow::VectorSingle::name</a></div><div class="ttdeci">INLINE_FUNCTION_H word name() const</div><div class="ttdoc">Name of the vector.</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00290">VectorSingle.cpp:290</a></div></div>
<div class="ttc" id="astructRESERVE_html"><div class="ttname"><a href="structRESERVE.html">RESERVE</a></div><div class="ttdef"><b>Definition:</b> <a href="Vector_8hpp_source.html#l00040">Vector.hpp:40</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a0c5a1541ecf7ad17925583cf6abd2c65"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a0c5a1541ecf7ad17925583cf6abd2c65">pFlow::VectorSingle::reference</a></div><div class="ttdeci">T &amp; reference</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00058">VectorSingle.hpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a6a40de4ceed55b2f78cf3027739dfd91"><div class="ttname"><a href="classpFlow_1_1Field.html#a6a40de4ceed55b2f78cf3027739dfd91">pFlow::Field::write</a></div><div class="ttdeci">bool write(iOstream &amp;os) const</div><div class="ttdef"><b>Definition:</b> <a href="Field_8cpp_source.html#l00095">Field.cpp:95</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a3c9fa6c4f9077b7dd44bd96007ef416a"><div class="ttname"><a href="classpFlow_1_1Field.html#a3c9fa6c4f9077b7dd44bd96007ef416a">pFlow::Field&lt; uint32x3 &gt;::value_type</a></div><div class="ttdeci">typename VectorType::value_type value_type</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00060">Field.hpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7">pFlow::IOPattern::AllProcessorsDifferent</a></div><div class="ttdeci">@ AllProcessorsDifferent</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00057">IOPattern.hpp:57</a></div></div>
<div class="ttc" id="aVectorSingle_8hpp_html"><div class="ttname"><a href="VectorSingle_8hpp.html">VectorSingle.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a677755da27b97125abd8690520e469b3"><div class="ttname"><a href="classpFlow_1_1Field.html#a677755da27b97125abd8690520e469b3">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, size_t len, const T &amp;val)</div><div class="ttdoc">Construct a field with name, fieldKey and set length to len and value to val.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00108">Field.hpp:108</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a870370c1af5b7530e534354e45451745"><div class="ttname"><a href="classpFlow_1_1Field.html#a870370c1af5b7530e534354e45451745">pFlow::Field::TypeInfoTemplateNV111</a></div><div class="ttdeci">TypeInfoTemplateNV111(&quot;Field&quot;, T, VectorType::memoerySpaceName())</div><div class="ttdoc">type info</div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a2601f8255f8a42148603816eb649c961"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a2601f8255f8a42148603816eb649c961">pFlow::VectorSingle::const_iterator</a></div><div class="ttdeci">const T * const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00056">VectorSingle.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a26f1ec9da8d343811868fe6cd475976d"><div class="ttname"><a href="classpFlow_1_1Field.html#a26f1ec9da8d343811868fe6cd475976d">pFlow::Field&lt; uint32x3 &gt;::const_reference</a></div><div class="ttdeci">typename VectorType::const_reference const_reference</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00058">Field.hpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a85ed561d066dae339196cd058783674f"><div class="ttname"><a href="namespacepFlow.html#a85ed561d066dae339196cd058783674f">pFlow::operator&gt;&gt;</a></div><div class="ttdeci">INLINE_FUNCTION iIstream &amp; operator&gt;&gt;(iIstream &amp;str, AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00041">AdamsBashforth3.hpp:41</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html"><div class="ttname"><a href="classpFlow_1_1IOPattern.html">pFlow::IOPattern</a></div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00032">IOPattern.hpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a0b878024ac2eb388b20acaf63eb29780"><div class="ttname"><a href="classpFlow_1_1Field.html#a0b878024ac2eb388b20acaf63eb29780">pFlow::Field&lt; uint32x3 &gt;::const_iterator</a></div><div class="ttdeci">typename VectorType::const_iterator const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00054">Field.hpp:54</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a148d74ad0977268be8ea8b26a147f619"><div class="ttname"><a href="namespacepFlow.html#a148d74ad0977268be8ea8b26a147f619">pFlow::operator&lt;&lt;</a></div><div class="ttdeci">INLINE_FUNCTION iOstream &amp; operator&lt;&lt;(iOstream &amp;str, const AB3History &amp;ab3)</div><div class="ttdef"><b>Definition:</b> <a href="AdamsBashforth3_8hpp_source.html#l00057">AdamsBashforth3.hpp:57</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a083ef991abc37177cf71c0ed6dcc19fd"><div class="ttname"><a href="classpFlow_1_1Field.html#a083ef991abc37177cf71c0ed6dcc19fd">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;fieldKey, const Vector&lt; T &gt; &amp;vec)</div><div class="ttdoc">Construct a field with fieldKey and Vector vec.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00130">Field.hpp:130</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html">pFlow::VectorSingle</a></div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00044">VectorSingle.hpp:44</a></div></div>
<div class="ttc" id="astructpFlow_1_1Range_html"><div class="ttname"><a href="structpFlow_1_1Range.html">pFlow::Range&lt; uint32 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_ac9b54653d0ec63ee05f64a185437b335"><div class="ttname"><a href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">pFlow::IOstream::name</a></div><div class="ttdeci">virtual const word &amp; name() const</div><div class="ttdoc">Return the name of the stream.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00031">IOstream.cpp:31</a></div></div>
<div class="ttc" id="astreams_8hpp_html"><div class="ttname"><a href="streams_8hpp.html">streams.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a670c26ed7cebf24facd8a6ccbc45c21e"><div class="ttname"><a href="classpFlow_1_1Field.html#a670c26ed7cebf24facd8a6ccbc45c21e">pFlow::Field::operator=</a></div><div class="ttdeci">FieldType &amp; operator=(const FieldType &amp;rhs)</div><div class="ttdoc">Copy assignment, name and fieldKey on the left hand side are preserved.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00161">Field.hpp:161</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a15206b415c09500493d38c91b970e958"><div class="ttname"><a href="classpFlow_1_1Field.html#a15206b415c09500493d38c91b970e958">pFlow::Field&lt; uint32x3 &gt;::pointer</a></div><div class="ttdeci">typename VectorType::pointer pointer</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00062">Field.hpp:62</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a4afaef92d6e6a55303575f96107d40ec"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a4afaef92d6e6a55303575f96107d40ec">pFlow::VectorSingle::memoerySpaceName</a></div><div class="ttdeci">static constexpr const char * memoerySpaceName()</div><div class="ttdoc">Name of the memory space.</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00469">VectorSingle.hpp:469</a></div></div>
<div class="ttc" id="aField_8cpp_html"><div class="ttname"><a href="Field_8cpp.html">Field.cpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_aef7f58ed165364ea9424e726a12a5d0c"><div class="ttname"><a href="classpFlow_1_1Field.html#aef7f58ed165364ea9424e726a12a5d0c">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, size_t capacity, size_t len, const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00114">Field.hpp:114</a></div></div>
<div class="ttc" id="aerror_8hpp_html_a83efa053dfcfcef04cc0e721c0314ff3"><div class="ttname"><a href="error_8hpp.html#a83efa053dfcfcef04cc0e721c0314ff3">ioErrorInFile</a></div><div class="ttdeci">#define ioErrorInFile(fileName, lineNumber)</div><div class="ttdoc">Report an error in file operation with supplied fileName and lineNumber.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00087">error.hpp:87</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_aef2405d22737e2c47dfe9994f27a028f"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#aef2405d22737e2c47dfe9994f27a028f">pFlow::VectorSingle&lt; T, void &gt;::capacity</a></div><div class="ttdeci">INLINE_FUNCTION_H uint32 capacity() const</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00304">VectorSingle.cpp:304</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a677b63b1fe9e5d48118598ccf4ed313d"><div class="ttname"><a href="classpFlow_1_1Field.html#a677b63b1fe9e5d48118598ccf4ed313d">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey)</div><div class="ttdoc">Construct an empty field with name and fieldKey.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00092">Field.hpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a607efe5fb94edbe4cfa890c4907e76c3"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a607efe5fb94edbe4cfa890c4907e76c3">pFlow::IOstream::lineNumber</a></div><div class="ttdeci">int32 lineNumber() const</div><div class="ttdoc">Const access to the current stream line number.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8hpp_source.html#l00223">IOstream.hpp:223</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a2b8f0ba308c4037e39ec503b9a1e4d0b"><div class="ttname"><a href="classpFlow_1_1Field.html#a2b8f0ba308c4037e39ec503b9a1e4d0b">pFlow::Field&lt; uint32x3 &gt;::iterator</a></div><div class="ttdeci">typename VectorType::iterator iterator</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00052">Field.hpp:52</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_abb38920d985a52377685fd852f62f4c2"><div class="ttname"><a href="classpFlow_1_1Field.html#abb38920d985a52377685fd852f62f4c2">pFlow::Field&lt; uint32x3 &gt;::memory_space</a></div><div class="ttdeci">typename VectorType::memory_space memory_space</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00048">Field.hpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector</a></div><div class="ttdef"><b>Definition:</b> <a href="Vector_8hpp_source.html#l00048">Vector.hpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_a7aaa7e113fd743fb56d22a1e2d34a30f"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#a7aaa7e113fd743fb56d22a1e2d34a30f">pFlow::VectorSingle::operator=</a></div><div class="ttdeci">VectorSingle &amp; operator=(const VectorSingle &amp;rhs)</div><div class="ttdoc">Copy assignment (perform deep copy from rhs to *this)</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8cpp_source.html#l00204">VectorSingle.cpp:204</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a6e59e2d8ecd94bfcd311d55efe74db71"><div class="ttname"><a href="classpFlow_1_1Field.html#a6e59e2d8ecd94bfcd311d55efe74db71">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, const FieldType &amp;src)</div><div class="ttdoc">Copy construct with new name and fieldkey.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00151">Field.hpp:151</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_ac98a2432df95afe641c3847268f579e8"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#ac98a2432df95afe641c3847268f579e8">pFlow::VectorSingle::const_reference</a></div><div class="ttdeci">const T &amp; const_reference</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00060">VectorSingle.hpp:60</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816">pFlow::IOPattern::MasterProcessorOnly</a></div><div class="ttdeci">@ MasterProcessorOnly</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00054">IOPattern.hpp:54</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_aa59f88e2c795d2440197ac2b54a21770"><div class="ttname"><a href="classpFlow_1_1Field.html#aa59f88e2c795d2440197ac2b54a21770">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00086">Field.hpp:86</a></div></div>
<div class="ttc" id="aVector_8hpp_html"><div class="ttname"><a href="Vector_8hpp.html">Vector.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a0b138cbd599d4fc0e95738e75f1e7445"><div class="ttname"><a href="classpFlow_1_1Field.html#a0b138cbd599d4fc0e95738e75f1e7445">pFlow::Field&lt; uint32x3 &gt;::execution_space</a></div><div class="ttdeci">typename VectorType::execution_space execution_space</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00050">Field.hpp:50</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a24e1cc28757f0776d455faa2a92cc094"><div class="ttname"><a href="classpFlow_1_1Field.html#a24e1cc28757f0776d455faa2a92cc094">pFlow::Field&lt; uint32x3 &gt;::reference</a></div><div class="ttdeci">typename VectorType::reference reference</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00056">Field.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_abddf9e42b6a8c5f965f2b23f30a4d960"><div class="ttname"><a href="classpFlow_1_1Field.html#abddf9e42b6a8c5f965f2b23f30a4d960">pFlow::Field::fillField</a></div><div class="ttdeci">void fillField(rangeU32 span, const T &amp;val)</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00188">Field.hpp:188</a></div></div>
<div class="ttc" id="aclasspFlow_1_1VectorSingle_html_afb9ded5f49336ae503bb9f2035ea902b"><div class="ttname"><a href="classpFlow_1_1VectorSingle.html#afb9ded5f49336ae503bb9f2035ea902b">pFlow::VectorSingle::value_type</a></div><div class="ttdeci">T value_type</div><div class="ttdef"><b>Definition:</b> <a href="VectorSingle_8hpp_source.html#l00062">VectorSingle.hpp:62</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a1a2e7d088787cfa568762c3aedf5b2d5"><div class="ttname"><a href="classpFlow_1_1Field.html#a1a2e7d088787cfa568762c3aedf5b2d5">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, const std::vector&lt; T &gt; &amp;vec)</div><div class="ttdoc">Construct a field with name and fieldKey and std::vector.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00144">Field.hpp:144</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html_a141267793b0eff81395ebff2d5e4bcce"><div class="ttname"><a href="classpFlow_1_1Field.html#a141267793b0eff81395ebff2d5e4bcce">pFlow::Field::Field</a></div><div class="ttdeci">Field(const word &amp;name, const word &amp;fieldKey, const Vector&lt; T &gt; &amp;vec)</div><div class="ttdoc">Construct a field with name, fieldKey and Vector vec.</div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00137">Field.hpp:137</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Field_8hpp.html">Field.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Fields.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Fields_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Fields.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for Fields.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Fields_8cpp__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Fields_8cpp" alt=""/></div>
</div>
</div>
<p><a href="Fields_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Fields_8cpp.html">Fields.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/phasicFlow/containers/Field/Fields.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Fields.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="Fields.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Fields_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,155 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Fields.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Fields_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Fields.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="Fields_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Fields_8hpp.html">Fields.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::uint8&gt;</a>;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::uint32&gt;</a>;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::uint64&gt;</a>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::real&gt;</a>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::realx3&gt;</a>;</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keyword">template</span> <span class="keyword">class </span><a class="code" href="classpFlow_1_1Field.html">pFlow::Field&lt;pFlow::word, pFlow::HostSpace&gt;</a>;</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1Field_html"><div class="ttname"><a href="classpFlow_1_1Field.html">pFlow::Field</a></div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00036">Field.hpp:36</a></div></div>
<div class="ttc" id="aFields_8hpp_html"><div class="ttname"><a href="Fields_8hpp.html">Fields.hpp</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Fields_8cpp.html">Fields.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,189 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Fields.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Fields_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> </div>
<div class="headertitle">
<div class="title">Fields.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for Fields.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Fields_8hpp__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Fields_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="Fields_8hpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2containers_2Field_2Fields_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="Fields_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:afba851cf518ced2054465eb48d446436"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#afba851cf518ced2054465eb48d446436">int8Field_D</a> = Field&lt; int8 &gt;</td></tr>
<tr class="separator:afba851cf518ced2054465eb48d446436"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eea99892eefca697fe76e336a729ecc"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a3eea99892eefca697fe76e336a729ecc">int8Field_H</a> = Field&lt; int8, HostSpace &gt;</td></tr>
<tr class="separator:a3eea99892eefca697fe76e336a729ecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a996d9a2e1f696453e5fa386fb7fe9ab8"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a996d9a2e1f696453e5fa386fb7fe9ab8">int32Field_D</a> = Field&lt; int32 &gt;</td></tr>
<tr class="separator:a996d9a2e1f696453e5fa386fb7fe9ab8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bb1a9005c7fda86ff215a2de8f6f611"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a0bb1a9005c7fda86ff215a2de8f6f611">int32Field_H</a> = Field&lt; int32, HostSpace &gt;</td></tr>
<tr class="separator:a0bb1a9005c7fda86ff215a2de8f6f611"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93b6e835263ad9f50ed51f34988dc794"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a93b6e835263ad9f50ed51f34988dc794">int64Field_D</a> = Field&lt; int64 &gt;</td></tr>
<tr class="separator:a93b6e835263ad9f50ed51f34988dc794"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15a18f2866fd0a69bf4127a1b0530d78"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a15a18f2866fd0a69bf4127a1b0530d78">int64Field_H</a> = Field&lt; int64, HostSpace &gt;</td></tr>
<tr class="separator:a15a18f2866fd0a69bf4127a1b0530d78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3907b1bd683eba5484fde4b81fa05ca5"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a3907b1bd683eba5484fde4b81fa05ca5">uint8Field_D</a> = Field&lt; uint8 &gt;</td></tr>
<tr class="separator:a3907b1bd683eba5484fde4b81fa05ca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a288d48b3fcdeb9f3b0b52fb066505cbb"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a288d48b3fcdeb9f3b0b52fb066505cbb">uint8Field_H</a> = Field&lt; uint8, HostSpace &gt;</td></tr>
<tr class="separator:a288d48b3fcdeb9f3b0b52fb066505cbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ca1be96b6212ee93e1c42c690c0aa40"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a5ca1be96b6212ee93e1c42c690c0aa40">uint32Field_D</a> = Field&lt; uint32 &gt;</td></tr>
<tr class="separator:a5ca1be96b6212ee93e1c42c690c0aa40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52fefb3ad87859a149d69c01f35bd196"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a52fefb3ad87859a149d69c01f35bd196">uint32Field_H</a> = Field&lt; uint32, HostSpace &gt;</td></tr>
<tr class="separator:a52fefb3ad87859a149d69c01f35bd196"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6eec7ef04d665eb2b97a16fe0d950e7"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#ae6eec7ef04d665eb2b97a16fe0d950e7">uint64Field_D</a> = Field&lt; uint64 &gt;</td></tr>
<tr class="separator:ae6eec7ef04d665eb2b97a16fe0d950e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe83b4478781a093e0a9c97ac43ae3b6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#afe83b4478781a093e0a9c97ac43ae3b6">uint64Field_H</a> = Field&lt; uint64, HostSpace &gt;</td></tr>
<tr class="separator:afe83b4478781a093e0a9c97ac43ae3b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5362914a273aa8ff03f209288b636ba"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#ab5362914a273aa8ff03f209288b636ba">uint32x3Field_D</a> = Field&lt; uint32x3 &gt;</td></tr>
<tr class="separator:ab5362914a273aa8ff03f209288b636ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d55f075a8da3a847d708a31369ae972"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a4d55f075a8da3a847d708a31369ae972">uint32x3Field_H</a> = Field&lt; uint32x3, HostSpace &gt;</td></tr>
<tr class="separator:a4d55f075a8da3a847d708a31369ae972"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07696cb4534f44f0531c68c39904d4cf"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a07696cb4534f44f0531c68c39904d4cf">realField_D</a> = Field&lt; real &gt;</td></tr>
<tr class="separator:a07696cb4534f44f0531c68c39904d4cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf2e389d4f000580ce5dddf0bb71813e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#abf2e389d4f000580ce5dddf0bb71813e">realField_H</a> = Field&lt; real, HostSpace &gt;</td></tr>
<tr class="separator:abf2e389d4f000580ce5dddf0bb71813e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c910c47fac98a967d343e8994298262"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a7c910c47fac98a967d343e8994298262">realx3Field_D</a> = Field&lt; realx3 &gt;</td></tr>
<tr class="separator:a7c910c47fac98a967d343e8994298262"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7aa26effedde9901c6a4f072a284a110"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a7aa26effedde9901c6a4f072a284a110">realx3Field_H</a> = Field&lt; realx3, HostSpace &gt;</td></tr>
<tr class="separator:a7aa26effedde9901c6a4f072a284a110"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4261a4fdbf609e4707d92aa9a033e22"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#ad4261a4fdbf609e4707d92aa9a033e22">realx3x3Field_D</a> = Field&lt; realx3x3 &gt;</td></tr>
<tr class="separator:ad4261a4fdbf609e4707d92aa9a033e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1272208e2f294633a96349ec264939e6"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a1272208e2f294633a96349ec264939e6">realx3x3Field_H</a> = Field&lt; realx3x3, HostSpace &gt;</td></tr>
<tr class="separator:a1272208e2f294633a96349ec264939e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6afe32faef869cf73e25c0f5c8fd1807"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html#a6afe32faef869cf73e25c0f5c8fd1807">wordField_H</a> = Field&lt; word, HostSpace &gt;</td></tr>
<tr class="separator:a6afe32faef869cf73e25c0f5c8fd1807"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Fields_8hpp.html">Fields.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,24 @@
var Fields_8hpp =
[
[ "int8Field_D", "Fields_8hpp.html#afba851cf518ced2054465eb48d446436", null ],
[ "int8Field_H", "Fields_8hpp.html#a3eea99892eefca697fe76e336a729ecc", null ],
[ "int32Field_D", "Fields_8hpp.html#a996d9a2e1f696453e5fa386fb7fe9ab8", null ],
[ "int32Field_H", "Fields_8hpp.html#a0bb1a9005c7fda86ff215a2de8f6f611", null ],
[ "int64Field_D", "Fields_8hpp.html#a93b6e835263ad9f50ed51f34988dc794", null ],
[ "int64Field_H", "Fields_8hpp.html#a15a18f2866fd0a69bf4127a1b0530d78", null ],
[ "uint8Field_D", "Fields_8hpp.html#a3907b1bd683eba5484fde4b81fa05ca5", null ],
[ "uint8Field_H", "Fields_8hpp.html#a288d48b3fcdeb9f3b0b52fb066505cbb", null ],
[ "uint32Field_D", "Fields_8hpp.html#a5ca1be96b6212ee93e1c42c690c0aa40", null ],
[ "uint32Field_H", "Fields_8hpp.html#a52fefb3ad87859a149d69c01f35bd196", null ],
[ "uint64Field_D", "Fields_8hpp.html#ae6eec7ef04d665eb2b97a16fe0d950e7", null ],
[ "uint64Field_H", "Fields_8hpp.html#afe83b4478781a093e0a9c97ac43ae3b6", null ],
[ "uint32x3Field_D", "Fields_8hpp.html#ab5362914a273aa8ff03f209288b636ba", null ],
[ "uint32x3Field_H", "Fields_8hpp.html#a4d55f075a8da3a847d708a31369ae972", null ],
[ "realField_D", "Fields_8hpp.html#a07696cb4534f44f0531c68c39904d4cf", null ],
[ "realField_H", "Fields_8hpp.html#abf2e389d4f000580ce5dddf0bb71813e", null ],
[ "realx3Field_D", "Fields_8hpp.html#a7c910c47fac98a967d343e8994298262", null ],
[ "realx3Field_H", "Fields_8hpp.html#a7aa26effedde9901c6a4f072a284a110", null ],
[ "realx3x3Field_D", "Fields_8hpp.html#ad4261a4fdbf609e4707d92aa9a033e22", null ],
[ "realx3x3Field_H", "Fields_8hpp.html#a1272208e2f294633a96349ec264939e6", null ],
[ "wordField_H", "Fields_8hpp.html#a6afe32faef869cf73e25c0f5c8fd1807", null ]
];

View File

@ -0,0 +1,15 @@
digraph "src/phasicFlow/containers/Field/Fields.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Fields.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/containers\l/Field/Fields.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$Fields_8cpp.html",tooltip=" "];
Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node3 [label="src/phasicFlow/structured\lData/pointStructure/internalPoints\l/internalPoints.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$internalPoints_8hpp.html",tooltip=" "];
Node1 -> Node132 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node132 [label="src/phasicFlow/triSurface\l/triSurface.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$triSurface_8hpp.html",tooltip=" "];
Node1 -> Node147 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node147 [label="src/phasicFlow/triSurface\l/triSurfaceKernels.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$triSurfaceKernels_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,15 @@
digraph "src/phasicFlow/containers/Field/Fields.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/containers\l/Field/Fields.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="types.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$types_8hpp.html",tooltip=" "];
Node1 -> Node35 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node35 [label="Field.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$Field_8hpp.html",tooltip=" "];
Node35 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node35 -> Node36 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node36 [label="VectorSingle.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$VectorSingle_8hpp.html",tooltip=" "];
Node1 -> Node36 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

View File

@ -0,0 +1,205 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/containers/Field/Fields.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('Fields_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">Fields.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="Fields_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __Fields_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __Fields_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">types.hpp</a>&quot;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="Field_8hpp.html">Field.hpp</a>&quot;</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="VectorSingle_8hpp.html">VectorSingle.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment">//#include &quot;VectorDual.hpp&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="namespacepFlow.html#afba851cf518ced2054465eb48d446436"> 33</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int8Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int8&gt;</a>;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a3eea99892eefca697fe76e336a729ecc"> 35</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int8Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int8, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; </div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a996d9a2e1f696453e5fa386fb7fe9ab8"> 37</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int32Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int32&gt;</a>;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a0bb1a9005c7fda86ff215a2de8f6f611"> 39</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int32Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int32, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a93b6e835263ad9f50ed51f34988dc794"> 41</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int64Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int64&gt;</a>;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a15a18f2866fd0a69bf4127a1b0530d78"> 43</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">int64Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;int64, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a3907b1bd683eba5484fde4b81fa05ca5"> 45</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint8Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint8&gt;</a>;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a288d48b3fcdeb9f3b0b52fb066505cbb"> 47</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint8Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint8, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a5ca1be96b6212ee93e1c42c690c0aa40"> 49</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint32Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint32&gt;</a>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a52fefb3ad87859a149d69c01f35bd196"> 51</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint32Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint32, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="namespacepFlow.html#ae6eec7ef04d665eb2b97a16fe0d950e7"> 53</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint64Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint64&gt;</a>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="namespacepFlow.html#afe83b4478781a093e0a9c97ac43ae3b6"> 55</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint64Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint64, HostSpace&gt;</a> ;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="namespacepFlow.html#ab5362914a273aa8ff03f209288b636ba"> 57</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint32x3Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint32x3&gt;</a>;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a4d55f075a8da3a847d708a31369ae972"> 59</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">uint32x3Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;uint32x3, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a07696cb4534f44f0531c68c39904d4cf"> 61</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realField_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;real&gt;</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="namespacepFlow.html#abf2e389d4f000580ce5dddf0bb71813e"> 63</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realField_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;real, HostSpace&gt;</a> ;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a7c910c47fac98a967d343e8994298262"> 65</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realx3Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;realx3&gt;</a>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a7aa26effedde9901c6a4f072a284a110"> 67</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realx3Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;realx3, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="namespacepFlow.html#ad4261a4fdbf609e4707d92aa9a033e22"> 69</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realx3x3Field_D</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;realx3x3&gt;</a>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a1272208e2f294633a96349ec264939e6"> 71</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">realx3x3Field_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;realx3x3, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">// - no typedef on device (since word does not compile on CUDA)</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="namespacepFlow.html#a6afe32faef869cf73e25c0f5c8fd1807"> 74</a></span>&#160;<span class="keyword">using</span> <a class="code" href="classpFlow_1_1Field.html">wordField_H</a> = <a class="code" href="classpFlow_1_1Field.html">Field&lt;word, HostSpace&gt;</a>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#endif //__Fields_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="atypes_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Field_html"><div class="ttname"><a href="classpFlow_1_1Field.html">pFlow::Field</a></div><div class="ttdef"><b>Definition:</b> <a href="Field_8hpp_source.html#l00036">Field.hpp:36</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aVectorSingle_8hpp_html"><div class="ttname"><a href="VectorSingle_8hpp.html">VectorSingle.hpp</a></div></div>
<div class="ttc" id="aField_8hpp_html"><div class="ttname"><a href="Field_8hpp.html">Field.hpp</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_74a3bd5d559eb2469f344a26dc365ad0.html">containers</a></li><li class="navelem"><a class="el" href="dir_85497c7e58043584c333050bd80e3172.html">Field</a></li><li class="navelem"><a class="el" href="Fields_8hpp.html">Fields.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOPattern.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOPattern_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOPattern.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for IOPattern.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOPattern_8cpp__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOPattern_8cpp" alt=""/></div>
</div>
</div>
<p><a href="IOPattern_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOPattern_8cpp.html">IOPattern.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
digraph "src/phasicFlow/repository/IOobject/IOPattern.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOPattern.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="processors.hpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$processors_8hpp.html",tooltip=" "];
Node1 -> Node3 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node3 [label="IOPattern.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOPattern_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,162 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOPattern.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOPattern_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOPattern.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="IOPattern_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="processors_8hpp.html">processors.hpp</a>&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IOPattern_8hpp.html">IOPattern.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953"> 23</a></span>&#160;<a class="code" href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">pFlow::IOPattern::IOPattern</a>( <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">IOType</a> iotype)</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;:</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; ioType_(iotype),</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; globalSize_(<a class="code" href="classpFlow_1_1processors.html">processors</a>::globalSize()),</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; globalRank_(<a class="code" href="classpFlow_1_1processors.html">processors</a>::globalRank()),</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; isMaster_(<a class="code" href="classpFlow_1_1processors.html">processors</a>::globalMaster()),</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; isParallel_(<a class="code" href="classpFlow_1_1processors.html">processors</a>::globalParallel())</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;{}</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a3d8d8f11455c26a86d22d3be061a3478"> 32</a></span>&#160;<a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a> <a class="code" href="classpFlow_1_1IOPattern.html#a3d8d8f11455c26a86d22d3be061a3478">pFlow::IOPattern::exeMode</a>()</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1processors.html#ab9362f5389dd16ec59eac692b9224063">processors::globalRunTypeName</a>();</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_aa4ee571de4b7f60d9244bf9fa6010953"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">pFlow::IOPattern::IOPattern</a></div><div class="ttdeci">IOPattern(IOPattern::IOType iotype)</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8cpp_source.html#l00023">IOPattern.cpp:23</a></div></div>
<div class="ttc" id="aprocessors_8hpp_html"><div class="ttname"><a href="processors_8hpp.html">processors.hpp</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1processors_html"><div class="ttname"><a href="classpFlow_1_1processors.html">pFlow::processors</a></div><div class="ttdoc">This class holds the information about the global execution world and number of processors in communi...</div><div class="ttdef"><b>Definition:</b> <a href="processors_8hpp_source.html#l00051">processors.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aec"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">pFlow::IOPattern::IOType</a></div><div class="ttdeci">IOType</div><div class="ttdoc">Type of input/output.</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00052">IOPattern.hpp:52</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a3d8d8f11455c26a86d22d3be061a3478"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a3d8d8f11455c26a86d22d3be061a3478">pFlow::IOPattern::exeMode</a></div><div class="ttdeci">static word exeMode()</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8cpp_source.html#l00032">IOPattern.cpp:32</a></div></div>
<div class="ttc" id="aIOPattern_8hpp_html"><div class="ttname"><a href="IOPattern_8hpp.html">IOPattern.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1processors_html_ab9362f5389dd16ec59eac692b9224063"><div class="ttname"><a href="classpFlow_1_1processors.html#ab9362f5389dd16ec59eac692b9224063">pFlow::processors::globalRunTypeName</a></div><div class="ttdeci">static const char * globalRunTypeName()</div><div class="ttdef"><b>Definition:</b> <a href="processors_8hpp_source.html#l00104">processors.hpp:104</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOPattern_8cpp.html">IOPattern.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,149 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOPattern.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOPattern_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">IOPattern.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for IOPattern.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOPattern_8hpp__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOPattern_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOPattern_8hpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOPattern_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="IOPattern_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1IOPattern.html">IOPattern</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOPattern_8hpp.html">IOPattern.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,13 @@
digraph "src/phasicFlow/repository/IOobject/IOPattern.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOPattern.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/repository\l/IOobject/IOobject.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOobject_8hpp.html",tooltip=" "];
Node1 -> Node182 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node182 [label="src/phasicFlow/repository\l/IOobject/IOPattern.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$IOPattern_8cpp.html",tooltip=" "];
Node1 -> Node183 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node183 [label="src/phasicFlow/streams\l/dataIO/dataIO.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$dataIO_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,9 @@
digraph "src/phasicFlow/repository/IOobject/IOPattern.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOPattern.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="types.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$types_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,319 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOPattern.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOPattern_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOPattern.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="IOPattern_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#ifndef __IOPattern_hpp__</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#define __IOPattern_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8hpp.html">types.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;{</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html"> 32</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;{</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec"> 52</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">IOType</a> : <span class="keywordtype">int</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; {</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816"> 54</a></span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816">MasterProcessorOnly</a> = 0,</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecac91f26e81450da3a70ca6b559e009feb"> 55</a></span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecac91f26e81450da3a70ca6b559e009feb">AllProcessorsSimilar</a> = 1,</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecacd62cf51bcb7162af1b9ee5a6226c112"> 56</a></span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecacd62cf51bcb7162af1b9ee5a6226c112">MasterProcessorDistribute</a> = 4,</div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7"> 57</a></span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7">AllProcessorsDifferent</a> = 8 <span class="comment">// this is used for &lt;&lt; and &gt;&gt; operators for </span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">// standard input and output streams </span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; };</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0"> 63</a></span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">IOType</a> <a class="code" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">ioType_</a>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a26a380a4b21080a0eb948aa920c4ac8a"> 65</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classpFlow_1_1IOPattern.html#a26a380a4b21080a0eb948aa920c4ac8a">globalSize_</a> = 1;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a14fd9ebc080167069900f723d72405d1"> 67</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classpFlow_1_1IOPattern.html#a14fd9ebc080167069900f723d72405d1">globalRank_</a> = 0;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a30ff2372e7dfe18b823a9beaebc16514"> 69</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a30ff2372e7dfe18b823a9beaebc16514">isMaster_</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a020c98b99c8b8893917eec03968bf39e"> 71</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a020c98b99c8b8893917eec03968bf39e">isParallel_</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">IOPattern</a>( <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">IOPattern::IOType</a> iotype);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">IOPattern</a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp;)=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">IOPattern</a>(<a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp;&amp;) = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; <a class="code" href="classpFlow_1_1IOPattern.html#a2c0ccf31fde844676336f6f79da5afba">operator=</a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp;)=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp; <a class="code" href="classpFlow_1_1IOPattern.html#a2c0ccf31fde844676336f6f79da5afba">operator=</a>(<a class="code" href="classpFlow_1_1IOPattern.html">IOPattern</a>&amp;&amp;)=<span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; </div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classpFlow_1_1IOPattern.html#a903816572f38909d01b44762a79d5774">~IOPattern</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e"> 88</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e">isMasterProcessorOnly</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">ioType_</a> == <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816">MasterProcessorOnly</a>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a91ed3eb8d0192de57d6097cccb2c1175"> 94</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a91ed3eb8d0192de57d6097cccb2c1175">isAllProcessorSimilar</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">ioType_</a> == <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecac91f26e81450da3a70ca6b559e009feb">AllProcessorsSimilar</a>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a94ba1c8fdfb321f73d2f681396c6154e"> 100</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a94ba1c8fdfb321f73d2f681396c6154e">isMasterProcessorDistribute</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">ioType_</a> == <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecacd62cf51bcb7162af1b9ee5a6226c112">MasterProcessorDistribute</a>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a4a99f8d0a4837e082fadb90825ce987b"> 106</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a4a99f8d0a4837e082fadb90825ce987b">isAllProcessorsDifferent</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">ioType_</a> == <a class="code" href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7">AllProcessorsDifferent</a>;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0"> 112</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a30ff2372e7dfe18b823a9beaebc16514">isMaster_</a>;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keyword">inline</span> </div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a7280b610e484ce97e0a805513b3b1fb8"> 118</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a7280b610e484ce97e0a805513b3b1fb8">isParallel</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a020c98b99c8b8893917eec03968bf39e">isParallel_</a>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a069da91699a1220ea4ccac549091657a"> 124</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a069da91699a1220ea4ccac549091657a">thisCallRead</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e">isMasterProcessorOnly</a>() &amp;&amp; !<a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>())<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">inline</span> </div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a077562cde1e09f88e0cab463ee8422bc"> 131</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a077562cde1e09f88e0cab463ee8422bc">thisCallWrite</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e">isMasterProcessorOnly</a>()&amp;&amp; !<a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>())<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972"> 138</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">thisProcReadData</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e">isMasterProcessorOnly</a>() &amp;&amp; !<a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>())<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classpFlow_1_1IOPattern.html#a94ba1c8fdfb321f73d2f681396c6154e">isMasterProcessorDistribute</a>()&amp;&amp; !<a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>())<span class="keywordflow">return</span> <span class="keyword">false</span>; </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9"> 146</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9">thisProcWriteData</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="classpFlow_1_1IOPattern.html#a4a99f8d0a4837e082fadb90825ce987b">isAllProcessorsDifferent</a>()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>();</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keyword">inline</span> </div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a4ccdc0e7b510f3ae1edeba07dfd3f917"> 153</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a4ccdc0e7b510f3ae1edeba07dfd3f917">thisProcReadHeader</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">thisProcReadData</a>();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">inline</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#a828a2412dd1744c90d8def4fdcbaf92a"> 159</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOPattern.html#a828a2412dd1744c90d8def4fdcbaf92a">thisProcWriteHeader</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">isMaster</a>();</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; }</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; </div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">inline</span> </div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#ada60d1e496a8359060e247174f9b9944"> 165</a></span>&#160; <span class="keyword">auto</span> <a class="code" href="classpFlow_1_1IOPattern.html#ada60d1e496a8359060e247174f9b9944">globalSize</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a26a380a4b21080a0eb948aa920c4ac8a">globalSize_</a>;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; </div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">inline</span> </div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOPattern.html#aff671d9bdbc8c4f076c6b99f0b3b5872"> 171</a></span>&#160; <span class="keyword">auto</span> <a class="code" href="classpFlow_1_1IOPattern.html#aff671d9bdbc8c4f076c6b99f0b3b5872">globalRank</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOPattern.html#a14fd9ebc080167069900f723d72405d1">globalRank_</a>;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">static</span> </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1IOPattern.html#a3d8d8f11455c26a86d22d3be061a3478">exeMode</a>();</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;};</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; </div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="preprocessor">#endif //__IOPattern_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a4ccdc0e7b510f3ae1edeba07dfd3f917"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a4ccdc0e7b510f3ae1edeba07dfd3f917">pFlow::IOPattern::thisProcReadHeader</a></div><div class="ttdeci">bool thisProcReadHeader() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00153">IOPattern.hpp:153</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a91ed3eb8d0192de57d6097cccb2c1175"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a91ed3eb8d0192de57d6097cccb2c1175">pFlow::IOPattern::isAllProcessorSimilar</a></div><div class="ttdeci">bool isAllProcessorSimilar() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00094">IOPattern.hpp:94</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_aa4ee571de4b7f60d9244bf9fa6010953"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#aa4ee571de4b7f60d9244bf9fa6010953">pFlow::IOPattern::IOPattern</a></div><div class="ttdeci">IOPattern(IOPattern::IOType iotype)</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8cpp_source.html#l00023">IOPattern.cpp:23</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a069da91699a1220ea4ccac549091657a"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a069da91699a1220ea4ccac549091657a">pFlow::IOPattern::thisCallRead</a></div><div class="ttdeci">bool thisCallRead() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00124">IOPattern.hpp:124</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a26a380a4b21080a0eb948aa920c4ac8a"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a26a380a4b21080a0eb948aa920c4ac8a">pFlow::IOPattern::globalSize_</a></div><div class="ttdeci">int globalSize_</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00065">IOPattern.hpp:65</a></div></div>
<div class="ttc" id="atypes_8hpp_html"><div class="ttname"><a href="types_8hpp.html">types.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ada60d1e496a8359060e247174f9b9944"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ada60d1e496a8359060e247174f9b9944">pFlow::IOPattern::globalSize</a></div><div class="ttdeci">auto globalSize() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00165">IOPattern.hpp:165</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a903816572f38909d01b44762a79d5774"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a903816572f38909d01b44762a79d5774">pFlow::IOPattern::~IOPattern</a></div><div class="ttdeci">~IOPattern()=default</div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a9d105c7b7a936dadfe8ae683bf6507c0"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a9d105c7b7a936dadfe8ae683bf6507c0">pFlow::IOPattern::ioType_</a></div><div class="ttdeci">IOType ioType_</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00063">IOPattern.hpp:63</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_aff671d9bdbc8c4f076c6b99f0b3b5872"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#aff671d9bdbc8c4f076c6b99f0b3b5872">pFlow::IOPattern::globalRank</a></div><div class="ttdeci">auto globalRank() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00171">IOPattern.hpp:171</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a67b19b575c43eef107b89e96aa51db2e"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a67b19b575c43eef107b89e96aa51db2e">pFlow::IOPattern::isMasterProcessorOnly</a></div><div class="ttdeci">bool isMasterProcessorOnly() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00088">IOPattern.hpp:88</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a7280b610e484ce97e0a805513b3b1fb8"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a7280b610e484ce97e0a805513b3b1fb8">pFlow::IOPattern::isParallel</a></div><div class="ttdeci">bool isParallel() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00118">IOPattern.hpp:118</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aec"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aec">pFlow::IOPattern::IOType</a></div><div class="ttdeci">IOType</div><div class="ttdoc">Type of input/output.</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00052">IOPattern.hpp:52</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a14fd9ebc080167069900f723d72405d1"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a14fd9ebc080167069900f723d72405d1">pFlow::IOPattern::globalRank_</a></div><div class="ttdeci">int globalRank_</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00067">IOPattern.hpp:67</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a828a2412dd1744c90d8def4fdcbaf92a"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a828a2412dd1744c90d8def4fdcbaf92a">pFlow::IOPattern::thisProcWriteHeader</a></div><div class="ttdeci">bool thisProcWriteHeader() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00159">IOPattern.hpp:159</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a4a99f8d0a4837e082fadb90825ce987b"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a4a99f8d0a4837e082fadb90825ce987b">pFlow::IOPattern::isAllProcessorsDifferent</a></div><div class="ttdeci">bool isAllProcessorsDifferent() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00106">IOPattern.hpp:106</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a94ba1c8fdfb321f73d2f681396c6154e"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a94ba1c8fdfb321f73d2f681396c6154e">pFlow::IOPattern::isMasterProcessorDistribute</a></div><div class="ttdeci">bool isMasterProcessorDistribute() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00100">IOPattern.hpp:100</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecaf4f012a72ea39909abe7d94f8d8216c7">pFlow::IOPattern::AllProcessorsDifferent</a></div><div class="ttdeci">@ AllProcessorsDifferent</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00057">IOPattern.hpp:57</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a077562cde1e09f88e0cab463ee8422bc"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a077562cde1e09f88e0cab463ee8422bc">pFlow::IOPattern::thisCallWrite</a></div><div class="ttdeci">bool thisCallWrite() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00131">IOPattern.hpp:131</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html"><div class="ttname"><a href="classpFlow_1_1IOPattern.html">pFlow::IOPattern</a></div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00032">IOPattern.hpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a30ff2372e7dfe18b823a9beaebc16514"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a30ff2372e7dfe18b823a9beaebc16514">pFlow::IOPattern::isMaster_</a></div><div class="ttdeci">bool isMaster_</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00069">IOPattern.hpp:69</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a3d8d8f11455c26a86d22d3be061a3478"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a3d8d8f11455c26a86d22d3be061a3478">pFlow::IOPattern::exeMode</a></div><div class="ttdeci">static word exeMode()</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8cpp_source.html#l00032">IOPattern.cpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a84ecbbbba75a3f4168093dd8e483b972"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a84ecbbbba75a3f4168093dd8e483b972">pFlow::IOPattern::thisProcReadData</a></div><div class="ttdeci">bool thisProcReadData() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00138">IOPattern.hpp:138</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a96f33dc2acbd7a153e16d6405222f1a9"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a96f33dc2acbd7a153e16d6405222f1a9">pFlow::IOPattern::thisProcWriteData</a></div><div class="ttdeci">bool thisProcWriteData() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00146">IOPattern.hpp:146</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a020c98b99c8b8893917eec03968bf39e"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a020c98b99c8b8893917eec03968bf39e">pFlow::IOPattern::isParallel_</a></div><div class="ttdeci">bool isParallel_</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00071">IOPattern.hpp:71</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a2c0ccf31fde844676336f6f79da5afba"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a2c0ccf31fde844676336f6f79da5afba">pFlow::IOPattern::operator=</a></div><div class="ttdeci">IOPattern &amp; operator=(const IOPattern &amp;)=default</div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aecac91f26e81450da3a70ca6b559e009feb"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecac91f26e81450da3a70ca6b559e009feb">pFlow::IOPattern::AllProcessorsSimilar</a></div><div class="ttdeci">@ AllProcessorsSimilar</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00055">IOPattern.hpp:55</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_a6dfd2bbd6bdf03bbc060502834e3fac0"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#a6dfd2bbd6bdf03bbc060502834e3fac0">pFlow::IOPattern::isMaster</a></div><div class="ttdeci">bool isMaster() const</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00112">IOPattern.hpp:112</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aecacd62cf51bcb7162af1b9ee5a6226c112"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aecacd62cf51bcb7162af1b9ee5a6226c112">pFlow::IOPattern::MasterProcessorDistribute</a></div><div class="ttdeci">@ MasterProcessorDistribute</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00056">IOPattern.hpp:56</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOPattern_html_ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816"><div class="ttname"><a href="classpFlow_1_1IOPattern.html#ac1233559c41d42640fa7882a83951aeca245bd29118fcd1c6ec73ab34ca576816">pFlow::IOPattern::MasterProcessorOnly</a></div><div class="ttdeci">@ MasterProcessorOnly</div><div class="ttdef"><b>Definition:</b> <a href="IOPattern_8hpp_source.html#l00054">IOPattern.hpp:54</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOPattern_8hpp.html">IOPattern.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOfileHeader.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOfileHeader_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOfileHeader.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for IOfileHeader.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOfileHeader_8cpp__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOfileHeader_8cpp" alt=""/></div>
</div>
</div>
<p><a href="IOfileHeader_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOfileHeader_8cpp.html">IOfileHeader.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
digraph "src/phasicFlow/repository/IOobject/IOfileHeader.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOfileHeader.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="IOfileHeader.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOfileHeader_8hpp.html",tooltip=" "];
Node1 -> Node55 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node55 [label="repository.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$repository_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,407 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOfileHeader.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOfileHeader_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOfileHeader.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="IOfileHeader_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distribute+d to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IOfileHeader_8hpp.html">IOfileHeader.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="repository_8hpp.html">repository.hpp</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a770eebd1866493c91efe18ab806d9568"> 24</a></span>&#160;<a class="code" href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt;pFlow::iFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a770eebd1866493c91efe18ab806d9568">pFlow::IOfileHeader::inStream</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordflow">if</span>( <a class="code" href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753">fileExist</a>() )</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordflow">return</span> makeUnique&lt;iFstream&gt;(<a class="code" href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488">path</a>(), <a class="code" href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e">inFileBinary</a>());</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;}</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#aadf02aad5ab9dd4c10306e74510f4dd0"> 32</a></span>&#160;<a class="code" href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt;pFlow::oFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#aadf02aad5ab9dd4c10306e74510f4dd0">pFlow::IOfileHeader::outStream</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">auto</span> osPtr = makeUnique&lt;oFstream&gt;(path(), outFileBinary());</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keywordflow">if</span>(osPtr &amp;&amp; owner())</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">auto</span> outPrecision = owner()-&gt;outFilePrecision();</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; osPtr-&gt;precision(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(outPrecision));</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; }</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> osPtr;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;}</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a40f592c06afad8142b602fa255a5dc20"> 45</a></span>&#160;<a class="code" href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt;pFlow::oFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a40f592c06afad8142b602fa255a5dc20">pFlow::IOfileHeader::dummyOutStream</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">auto</span> osPtr = makeUnique&lt;oFstream&gt;( <a class="code" href="namespacepFlow.html#a869d7b21ba981c374dcf8542f4ce2144">CWD</a>()+<a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>(<span class="stringliteral">&quot;dummyFile&quot;</span>) , outFileBinary());</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">if</span>(osPtr &amp;&amp; owner())</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">auto</span> outPrecision = owner()-&gt;outFilePrecision();</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; osPtr-&gt;precision(<span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(outPrecision));</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">return</span> osPtr;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a27694b34ae10a55819c0647e27e52424"> 58</a></span>&#160;<a class="code" href="classpFlow_1_1IOfileHeader.html#a27694b34ae10a55819c0647e27e52424">pFlow::IOfileHeader::IOfileHeader</a>(</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a> &amp;objf)</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; : <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>(objf)</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{}</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488"> 63</a></span>&#160;<a class="code" href="classpFlow_1_1fileSystem.html">pFlow::fileSystem</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488">pFlow::IOfileHeader::path</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classpFlow_1_1fileSystem.html">fileSystem</a> f;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span>( owner() )</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; f = owner()-&gt;<a class="code" href="classpFlow_1_1fileSystem.html#a30e927ab97f8b741ec1b4ed94d111115">path</a>()/localPath(); </div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }<span class="keywordflow">else</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; f = localPath();</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; f += name();</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> f;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;}</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#aefb380f32e3c6839d26dbc93ff4eb00a"> 79</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aefb380f32e3c6839d26dbc93ff4eb00a">pFlow::IOfileHeader::outFileBinary</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span>(owner())</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> owner()-&gt;outFileBinary();</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;}</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e"> 87</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e">pFlow::IOfileHeader::inFileBinary</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacepFlow.html#a85d082a1fd1aa0dd5be3e779502475a7">toUpper</a>(fileFormat_) == <span class="stringliteral">&quot;BINARY&quot;</span>;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a1a248aa0488b774d5160449992ad31e5"> 92</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a1a248aa0488b774d5160449992ad31e5">pFlow::IOfileHeader::headerOk</a>(<span class="keywordtype">bool</span> silent)</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;{</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span>(!fileExist())</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span>(!silent)</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a> &lt;&lt;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="stringliteral">&quot; the file &quot;</span>&lt;&lt; path() &lt;&lt; <span class="stringliteral">&quot; does not exist. \n&quot;</span>;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; }</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span>( implyRead() )</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; {</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span>( <span class="keyword">auto</span> ptrIS = inStream(); ptrIS )</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; {</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> readHeader( ptrIS(), silent );</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; {</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">if</span>(!silent)</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a>&lt;&lt;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="stringliteral">&quot;could not open file &quot;</span> &lt;&lt; path() &lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;}</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; </div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#aac13e923e67df5e79d9a75f592b97da3"> 121</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aac13e923e67df5e79d9a75f592b97da3">pFlow::IOfileHeader::implyRead</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (isReadAlways()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> readIfPresent();</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;}</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; </div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#adfb03998f9b3b981631dc794cffd05a1"> 127</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#adfb03998f9b3b981631dc794cffd05a1">pFlow::IOfileHeader::implyWrite</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span>( isExcluded( name() ) ) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span>( isIncluded( name() ) ) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> isWriteAlways();</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;}</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753"> 134</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753">pFlow::IOfileHeader::fileExist</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> path().exist();</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#aad1bd18bfebe1913d2b10785c0aff822"> 139</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aad1bd18bfebe1913d2b10785c0aff822">pFlow::IOfileHeader::readIfPresent</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">return</span> fileExist() &amp;&amp; isReadIfPresent();</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;}</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; </div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4"> 144</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">pFlow::IOfileHeader::writeHeader</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; </div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span>( !this-&gt;readWriteHeader() ) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span>( !implyWrite() ) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;}</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">pFlow::IOfileHeader::writeHeader</a></div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#ab83d4ca3dd2d2995f15ffe5e2693f316"> 154</a></span>&#160;(</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; typeName, </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">bool</span> forceWrite</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;) <span class="keyword">const</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;{</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span>(!forceWrite &amp;&amp; !writeHeader()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; </div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; writeBanner(os);</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a21c60a5f3cd7a26eb97fa28923cbaec6">writeWordEntry</a>(<span class="stringliteral">&quot;objectType&quot;</span>, typeName );</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; os.<a class="code" href="classpFlow_1_1IOstream.html#a281bbfd1fe6ab10377d7cb1f5111044d">fatalCheck</a>(<span class="stringliteral">&quot;writing objectType&quot;</span>);</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a21c60a5f3cd7a26eb97fa28923cbaec6">writeWordEntry</a>(<span class="stringliteral">&quot;objectName&quot;</span>, name() );</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; os.<a class="code" href="classpFlow_1_1IOstream.html#a281bbfd1fe6ab10377d7cb1f5111044d">fatalCheck</a>(<span class="stringliteral">&quot;writing objectName&quot;</span>);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> fileFormat;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span>(outFileBinary())</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; fileFormat = <span class="stringliteral">&quot;Binary&quot;</span>;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; fileFormat = <span class="stringliteral">&quot;ASCII&quot;</span>;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; </div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; os.<a class="code" href="classpFlow_1_1iOstream.html#a21c60a5f3cd7a26eb97fa28923cbaec6">writeWordEntry</a>(<span class="stringliteral">&quot;fileFormat&quot;</span>, fileFormat);</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; os.<a class="code" href="classpFlow_1_1IOstream.html#a281bbfd1fe6ab10377d7cb1f5111044d">fatalCheck</a>(<span class="stringliteral">&quot;writing fileFormat&quot;</span>);</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; writeSeparator(os);</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; </div>
<div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a5d569ab3079ca594877dfbdf4d45cae4"> 184</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">pFlow::IOfileHeader::writeHeader</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, <span class="keywordtype">bool</span> forceWrite)<span class="keyword"> const</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">return</span> writeHeader(os, objectType_, forceWrite);</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;}</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; </div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127"> 189</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">pFlow::IOfileHeader::readHeader</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span>( !implyRead())<span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">if</span>( !this-&gt;readWriteHeader() ) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#ad3e735fcc23f3717d149728c03f5074a"> 196</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">pFlow::IOfileHeader::readHeader</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is, <span class="keywordtype">bool</span> silent)</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;{</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; </div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span>(!readHeader()) <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span>( !is.<a class="code" href="classpFlow_1_1iIstream.html#ae74a624bbb0665ed381b67cbda681031">findTokenAndNextSilent</a>(<span class="stringliteral">&quot;objectName&quot;</span>, objectName_) )</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; {</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span>(!silent)</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; {</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a>&lt;&lt;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="stringliteral">&quot;cannot find/error in reading objectName in file &quot;</span> &lt;&lt;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>()&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; } </div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">if</span>( !is.<a class="code" href="classpFlow_1_1iIstream.html#ae74a624bbb0665ed381b67cbda681031">findTokenAndNextSilent</a>(<span class="stringliteral">&quot;objectType&quot;</span>, objectType_) )</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; {</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">if</span>(!silent)</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; {</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a> &lt;&lt;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="stringliteral">&quot;cannot find/error in reading objectType in file &quot;</span>&lt;&lt;</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>()&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; }</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; </div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; </div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordflow">if</span>( !is.<a class="code" href="classpFlow_1_1iIstream.html#ae74a624bbb0665ed381b67cbda681031">findTokenAndNextSilent</a>(<span class="stringliteral">&quot;fileFormat&quot;</span>, fileFormat_) )</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; {</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">if</span>(!silent)</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; {</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a> &lt;&lt;</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="stringliteral">&quot;cannot find/error in reading fileFormat in file &quot;</span>&lt;&lt;</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; is.<a class="code" href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">name</a>()&lt;&lt;<a class="code" href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">endl</a>;</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; }</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; </div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;} </div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a935aedcbc2d9fc4e32646d718eaec1f4"> 238</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a935aedcbc2d9fc4e32646d718eaec1f4">pFlow::IOfileHeader::writeBanner</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os)<span class="keyword">const</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; os&lt;&lt; </div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="stringliteral">&quot;/* -------------------------------*- C++ -*---------------------------------- *\\ \n&quot;</span>&lt;&lt;</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="stringliteral">&quot;| phasicFlow File | \n&quot;</span>&lt;&lt;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="stringliteral">&quot;| copyright: www.cemf.ir | \n&quot;</span>&lt;&lt;</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="stringliteral">&quot;\\* ------------------------------------------------------------------------- */ \n \n&quot;</span>;</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; </div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;}</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; </div>
<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a7724614a5d68ca0d55beead4b79f6051"> 249</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a7724614a5d68ca0d55beead4b79f6051">pFlow::IOfileHeader::writeSeparator</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os)<span class="keyword">const</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; os&lt;&lt; <span class="stringliteral">&quot;\n&quot;</span> &lt;&lt;</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="stringliteral">&quot;// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // \n \n&quot;</span>;</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; </div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1iIstream_html_ae74a624bbb0665ed381b67cbda681031"><div class="ttname"><a href="classpFlow_1_1iIstream.html#ae74a624bbb0665ed381b67cbda681031">pFlow::iIstream::findTokenAndNextSilent</a></div><div class="ttdeci">virtual bool findTokenAndNextSilent(const word &amp;w, word &amp;nextW, int32 limitLine=100)</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8cpp_source.html#l00203">iIstream.cpp:203</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aad1bd18bfebe1913d2b10785c0aff822"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aad1bd18bfebe1913d2b10785c0aff822">pFlow::IOfileHeader::readIfPresent</a></div><div class="ttdeci">bool readIfPresent() const</div><div class="ttdoc">Check read if present.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00139">IOfileHeader.cpp:139</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aefb380f32e3c6839d26dbc93ff4eb00a"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aefb380f32e3c6839d26dbc93ff4eb00a">pFlow::IOfileHeader::outFileBinary</a></div><div class="ttdeci">bool outFileBinary() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00079">IOfileHeader.cpp:79</a></div></div>
<div class="ttc" id="aerror_8hpp_html_a889d5e8bf195a24964ffb883bcb2fc3b"><div class="ttname"><a href="error_8hpp.html#a889d5e8bf195a24964ffb883bcb2fc3b">warningInFunction</a></div><div class="ttdeci">#define warningInFunction</div><div class="ttdoc">Report a warning.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00095">error.hpp:95</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a85d082a1fd1aa0dd5be3e779502475a7"><div class="ttname"><a href="namespacepFlow.html#a85d082a1fd1aa0dd5be3e779502475a7">pFlow::toUpper</a></div><div class="ttdeci">word toUpper(const word &amp;inStr)</div><div class="ttdoc">convert a word to all caps</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00043">bTypesFunctions.cpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_ac38363de350016ce974d10db7d4d0753"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753">pFlow::IOfileHeader::fileExist</a></div><div class="ttdeci">bool fileExist() const</div><div class="ttdoc">Check if file exists.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00134">IOfileHeader.cpp:134</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a68bff73fd26a260a1d26e7890897d4e4"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">pFlow::IOfileHeader::writeHeader</a></div><div class="ttdeci">bool writeHeader() const</div><div class="ttdoc">Check if the header should be written to file True: on master + implyWrite + readWriteHeader = true F...</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00144">IOfileHeader.cpp:144</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aba8f0c455a3fdb4b05ad33a25b13b189"><div class="ttname"><a href="namespacepFlow.html#aba8f0c455a3fdb4b05ad33a25b13b189">pFlow::endl</a></div><div class="ttdeci">iOstream &amp; endl(iOstream &amp;os)</div><div class="ttdoc">Add newline and flush stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00341">iOstream.hpp:341</a></div></div>
<div class="ttc" id="aclasspFlow_1_1fileSystem_html"><div class="ttname"><a href="classpFlow_1_1fileSystem.html">pFlow::fileSystem</a></div><div class="ttdoc">Manages file pathes, manupulate and combines them.</div><div class="ttdef"><b>Definition:</b> <a href="fileSystem_8hpp_source.html#l00071">fileSystem.hpp:71</a></div></div>
<div class="ttc" id="arepository_8hpp_html"><div class="ttname"><a href="repository_8hpp.html">repository.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aadf02aad5ab9dd4c10306e74510f4dd0"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aadf02aad5ab9dd4c10306e74510f4dd0">pFlow::IOfileHeader::outStream</a></div><div class="ttdeci">uniquePtr&lt; oFstream &gt; outStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00032">IOfileHeader.cpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1fileSystem_html_a30e927ab97f8b741ec1b4ed94d111115"><div class="ttname"><a href="classpFlow_1_1fileSystem.html#a30e927ab97f8b741ec1b4ed94d111115">pFlow::fileSystem::path</a></div><div class="ttdeci">const pathType &amp; path() const</div><div class="ttdoc">Const access to path.</div><div class="ttdef"><b>Definition:</b> <a href="fileSystem_8hpp_source.html#l00154">fileSystem.hpp:154</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_ae1921a7f20c43d1438221946e607c488"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488">pFlow::IOfileHeader::path</a></div><div class="ttdeci">fileSystem path() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00063">IOfileHeader.cpp:63</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_a281bbfd1fe6ab10377d7cb1f5111044d"><div class="ttname"><a href="classpFlow_1_1IOstream.html#a281bbfd1fe6ab10377d7cb1f5111044d">pFlow::IOstream::fatalCheck</a></div><div class="ttdeci">bool fatalCheck(const char *operation) const</div><div class="ttdoc">Check IOstream status for given operation.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00048">IOstream.cpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="aIOfileHeader_8hpp_html"><div class="ttname"><a href="IOfileHeader_8hpp.html">IOfileHeader.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOstream_html_ac9b54653d0ec63ee05f64a185437b335"><div class="ttname"><a href="classpFlow_1_1IOstream.html#ac9b54653d0ec63ee05f64a185437b335">pFlow::IOstream::name</a></div><div class="ttdeci">virtual const word &amp; name() const</div><div class="ttdoc">Return the name of the stream.</div><div class="ttdef"><b>Definition:</b> <a href="IOstream_8cpp_source.html#l00031">IOstream.cpp:31</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a770eebd1866493c91efe18ab806d9568"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a770eebd1866493c91efe18ab806d9568">pFlow::IOfileHeader::inStream</a></div><div class="ttdeci">uniquePtr&lt; iFstream &gt; inStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00024">IOfileHeader.cpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aac13e923e67df5e79d9a75f592b97da3"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aac13e923e67df5e79d9a75f592b97da3">pFlow::IOfileHeader::implyRead</a></div><div class="ttdeci">bool implyRead() const</div><div class="ttdoc">Imply read.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00121">IOfileHeader.cpp:121</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a7724614a5d68ca0d55beead4b79f6051"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a7724614a5d68ca0d55beead4b79f6051">pFlow::IOfileHeader::writeSeparator</a></div><div class="ttdeci">bool writeSeparator(iOstream &amp;os) const</div><div class="ttdoc">wirte a separator line</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00249">IOfileHeader.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a1a248aa0488b774d5160449992ad31e5"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a1a248aa0488b774d5160449992ad31e5">pFlow::IOfileHeader::headerOk</a></div><div class="ttdeci">bool headerOk(bool silent=false)</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00092">IOfileHeader.cpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aaf27120b2528b8d3d77903c4f4481127"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">pFlow::IOfileHeader::readHeader</a></div><div class="ttdeci">bool readHeader() const</div><div class="ttdoc">Check if header should be read from file.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00189">IOfileHeader.cpp:189</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a27694b34ae10a55819c0647e27e52424"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a27694b34ae10a55819c0647e27e52424">pFlow::IOfileHeader::IOfileHeader</a></div><div class="ttdeci">IOfileHeader(const objectFile &amp;objf)</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00058">IOfileHeader.cpp:58</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a869d7b21ba981c374dcf8542f4ce2144"><div class="ttname"><a href="namespacepFlow.html#a869d7b21ba981c374dcf8542f4ce2144">pFlow::CWD</a></div><div class="ttdeci">fileSystem CWD()</div><div class="ttdoc">Free function to reture current working directory.</div><div class="ttdef"><b>Definition:</b> <a href="fileSystem_8hpp_source.html#l00221">fileSystem.hpp:221</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a6e04bca1658d3c571a38d8ac1d62462e"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e">pFlow::IOfileHeader::inFileBinary</a></div><div class="ttdeci">bool inFileBinary() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00087">IOfileHeader.cpp:87</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a40f592c06afad8142b602fa255a5dc20"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a40f592c06afad8142b602fa255a5dc20">pFlow::IOfileHeader::dummyOutStream</a></div><div class="ttdeci">uniquePtr&lt; oFstream &gt; dummyOutStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00045">IOfileHeader.cpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_adfb03998f9b3b981631dc794cffd05a1"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#adfb03998f9b3b981631dc794cffd05a1">pFlow::IOfileHeader::implyWrite</a></div><div class="ttdeci">bool implyWrite() const</div><div class="ttdoc">Imply write.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00127">IOfileHeader.cpp:127</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html_a21c60a5f3cd7a26eb97fa28923cbaec6"><div class="ttname"><a href="classpFlow_1_1iOstream.html#a21c60a5f3cd7a26eb97fa28923cbaec6">pFlow::iOstream::writeWordEntry</a></div><div class="ttdeci">iOstream &amp; writeWordEntry(const word &amp;key, const T &amp;value)</div><div class="ttdoc">Write a keyword/value entry.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00239">iOstream.hpp:239</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a935aedcbc2d9fc4e32646d718eaec1f4"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a935aedcbc2d9fc4e32646d718eaec1f4">pFlow::IOfileHeader::writeBanner</a></div><div class="ttdeci">bool writeBanner(iOstream &amp;os) const</div><div class="ttdoc">write the banner</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00238">IOfileHeader.cpp:238</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOfileHeader_8cpp.html">IOfileHeader.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,149 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOfileHeader.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOfileHeader_8hpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle">
<div class="title">IOfileHeader.hpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for IOfileHeader.hpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOfileHeader_8hpp__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOfileHeader_8hpp" alt=""/></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-1-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOfileHeader_8hpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOfileHeader_8hppdep" alt=""/></div>
</div>
</div>
<p><a href="IOfileHeader_8hpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpFlow_1_1IOfileHeader.html">IOfileHeader</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacepFlow"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacepFlow.html">pFlow</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOfileHeader_8hpp.html">IOfileHeader.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
digraph "src/phasicFlow/repository/IOobject/IOfileHeader.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOfileHeader.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/repository\l/IOobject/IOfileHeader.cpp",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$IOfileHeader_8cpp.html",tooltip=" "];
Node1 -> Node3 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node3 [label="src/phasicFlow/repository\l/IOobject/IOobject.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOobject_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,13 @@
digraph "src/phasicFlow/repository/IOobject/IOfileHeader.hpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOfileHeader.hpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="uniquePtr.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$uniquePtr_8hpp.html",tooltip=" "];
Node1 -> Node10 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node10 [label="objectFile.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$objectFile_8hpp.html",tooltip=" "];
Node1 -> Node41 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node41 [label="streams.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$streams_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,292 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOfileHeader.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOfileHeader_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOfileHeader.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="IOfileHeader_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; </div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#ifndef __IOfileHeader_hpp__</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#define __IOfileHeader_hpp__</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="uniquePtr_8hpp.html">uniquePtr.hpp</a>&quot;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="objectFile_8hpp.html">objectFile.hpp</a>&quot;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="streams_8hpp.html">streams.hpp</a>&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; </div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacepFlow.html">pFlow</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">class </span>repository;</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html"> 35</a></span>&#160;<span class="keyword">class </span><a class="code" href="classpFlow_1_1IOfileHeader.html">IOfileHeader</a></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;:</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">public</span> <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; </div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">// object name read from file </span></div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a0fc09585fc6fa997b81807dff8b8236d"> 45</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a0fc09585fc6fa997b81807dff8b8236d">objectName_</a>;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="comment">// object type read from file </span></div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#adf7afc3ea2cc179930f4e4f4ca48797c"> 48</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#adf7afc3ea2cc179930f4e4f4ca48797c">objectType_</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a4df46db2aad0395fac9c0522d8c409a9"> 51</a></span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a4df46db2aad0395fac9c0522d8c409a9">fileFormat_</a> = <span class="stringliteral">&quot;ASCII&quot;</span>;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">// - input file stream</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;iFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a770eebd1866493c91efe18ab806d9568">inStream</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">// - ouput file stream</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;oFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#aadf02aad5ab9dd4c10306e74510f4dd0">outStream</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classpFlow_1_1uniquePtr.html">uniquePtr&lt;oFstream&gt;</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#a40f592c06afad8142b602fa255a5dc20">dummyOutStream</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; </div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// with owner </span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classpFlow_1_1IOfileHeader.html#a27694b34ae10a55819c0647e27e52424">IOfileHeader</a>(<span class="keyword">const</span> <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>&amp; objf);</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// - object name</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a4ae6d6ea877ec8652d86076eaf333c12"> 69</a></span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1IOfileHeader.html#a4ae6d6ea877ec8652d86076eaf333c12">objectName</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a0fc09585fc6fa997b81807dff8b8236d">objectName_</a>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; </div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// - object type</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a67068cb6552c42a5ddb1c66bf6bbf6b3"> 75</a></span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; <a class="code" href="classpFlow_1_1IOfileHeader.html#a67068cb6552c42a5ddb1c66bf6bbf6b3">objectType</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#adf7afc3ea2cc179930f4e4f4ca48797c">objectType_</a>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// - pointer to owner repository </span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">virtual</span> </div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#a6fc6abb626e9155a819c52624443ca0c"> 82</a></span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1repository.html">repository</a>* <a class="code" href="classpFlow_1_1IOfileHeader.html#a6fc6abb626e9155a819c52624443ca0c">owner</a>()<span class="keyword">const</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">virtual</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#add8e03162ae5c99e43a6a512ef9b7e36"> 88</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#add8e03162ae5c99e43a6a512ef9b7e36">isIncluded</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; objName)<span class="keyword">const</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">virtual</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classpFlow_1_1IOfileHeader.html#af78fefb5053ee53f6846c61c61a3a1be"> 94</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#af78fefb5053ee53f6846c61c61a3a1be">isExcluded</a>(<span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; objName)<span class="keyword">const</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">// - path to file name </span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classpFlow_1_1fileSystem.html">fileSystem</a> <a class="code" href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488">path</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aefb380f32e3c6839d26dbc93ff4eb00a">outFileBinary</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; </div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e">inFileBinary</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; </div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// - should be used for read operations </span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// check if the file exist,</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// read the header of the file to check if it is ok</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a1a248aa0488b774d5160449992ad31e5">headerOk</a>(<span class="keywordtype">bool</span> silent = <span class="keyword">false</span>);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; </div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aac13e923e67df5e79d9a75f592b97da3">implyRead</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#adfb03998f9b3b981631dc794cffd05a1">implyWrite</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753">fileExist</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aad1bd18bfebe1913d2b10785c0aff822">readIfPresent</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">writeHeader</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">writeHeader</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a>&amp; typeName, <span class="keywordtype">bool</span> forceWrite = <span class="keyword">false</span> ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; </div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">writeHeader</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os, <span class="keywordtype">bool</span> forceWrite = <span class="keyword">false</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">readHeader</a>()<span class="keyword">const</span>;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">readHeader</a>(<a class="code" href="classpFlow_1_1iIstream.html">iIstream</a>&amp; is, <span class="keywordtype">bool</span> silent=<span class="keyword">false</span>);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; </div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a935aedcbc2d9fc4e32646d718eaec1f4">writeBanner</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os)<span class="keyword">const</span>;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; </div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classpFlow_1_1IOfileHeader.html#a7724614a5d68ca0d55beead4b79f6051">writeSeparator</a>(<a class="code" href="classpFlow_1_1iOstream.html">iOstream</a>&amp; os)<span class="keyword">const</span>;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;};</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;}</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor">#endif //__objectFile_hpp__</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_af78fefb5053ee53f6846c61c61a3a1be"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#af78fefb5053ee53f6846c61c61a3a1be">pFlow::IOfileHeader::isExcluded</a></div><div class="ttdeci">virtual bool isExcluded(const word &amp;objName) const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00094">IOfileHeader.hpp:94</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a67068cb6552c42a5ddb1c66bf6bbf6b3"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a67068cb6552c42a5ddb1c66bf6bbf6b3">pFlow::IOfileHeader::objectType</a></div><div class="ttdeci">const word &amp; objectType() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00075">IOfileHeader.hpp:75</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aad1bd18bfebe1913d2b10785c0aff822"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aad1bd18bfebe1913d2b10785c0aff822">pFlow::IOfileHeader::readIfPresent</a></div><div class="ttdeci">bool readIfPresent() const</div><div class="ttdoc">Check read if present.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00139">IOfileHeader.cpp:139</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aefb380f32e3c6839d26dbc93ff4eb00a"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aefb380f32e3c6839d26dbc93ff4eb00a">pFlow::IOfileHeader::outFileBinary</a></div><div class="ttdeci">bool outFileBinary() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00079">IOfileHeader.cpp:79</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_adf7afc3ea2cc179930f4e4f4ca48797c"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#adf7afc3ea2cc179930f4e4f4ca48797c">pFlow::IOfileHeader::objectType_</a></div><div class="ttdeci">word objectType_</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00048">IOfileHeader.hpp:48</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_ac38363de350016ce974d10db7d4d0753"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#ac38363de350016ce974d10db7d4d0753">pFlow::IOfileHeader::fileExist</a></div><div class="ttdeci">bool fileExist() const</div><div class="ttdoc">Check if file exists.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00134">IOfileHeader.cpp:134</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a68bff73fd26a260a1d26e7890897d4e4"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a68bff73fd26a260a1d26e7890897d4e4">pFlow::IOfileHeader::writeHeader</a></div><div class="ttdeci">bool writeHeader() const</div><div class="ttdoc">Check if the header should be written to file True: on master + implyWrite + readWriteHeader = true F...</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00144">IOfileHeader.cpp:144</a></div></div>
<div class="ttc" id="anamespacepFlow_html"><div class="ttname"><a href="namespacepFlow.html">pFlow</a></div><div class="ttdef"><b>Definition:</b> <a href="demGeometry_8hpp_source.html#l00027">demGeometry.hpp:27</a></div></div>
<div class="ttc" id="aclasspFlow_1_1fileSystem_html"><div class="ttname"><a href="classpFlow_1_1fileSystem.html">pFlow::fileSystem</a></div><div class="ttdoc">Manages file pathes, manupulate and combines them.</div><div class="ttdef"><b>Definition:</b> <a href="fileSystem_8hpp_source.html#l00071">fileSystem.hpp:71</a></div></div>
<div class="ttc" id="auniquePtr_8hpp_html"><div class="ttname"><a href="uniquePtr_8hpp.html">uniquePtr.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aadf02aad5ab9dd4c10306e74510f4dd0"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aadf02aad5ab9dd4c10306e74510f4dd0">pFlow::IOfileHeader::outStream</a></div><div class="ttdeci">uniquePtr&lt; oFstream &gt; outStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00032">IOfileHeader.cpp:32</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iIstream_html"><div class="ttname"><a href="classpFlow_1_1iIstream.html">pFlow::iIstream</a></div><div class="ttdoc">Interface class for any input stream</div><div class="ttdef"><b>Definition:</b> <a href="iIstream_8hpp_source.html#l00037">iIstream.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_ae1921a7f20c43d1438221946e607c488"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#ae1921a7f20c43d1438221946e607c488">pFlow::IOfileHeader::path</a></div><div class="ttdeci">fileSystem path() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00063">IOfileHeader.cpp:63</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a4df46db2aad0395fac9c0522d8c409a9"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a4df46db2aad0395fac9c0522d8c409a9">pFlow::IOfileHeader::fileFormat_</a></div><div class="ttdeci">word fileFormat_</div><div class="ttdoc">file format read from file</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00051">IOfileHeader.hpp:51</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a0fc09585fc6fa997b81807dff8b8236d"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a0fc09585fc6fa997b81807dff8b8236d">pFlow::IOfileHeader::objectName_</a></div><div class="ttdeci">word objectName_</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00045">IOfileHeader.hpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="aobjectFile_8hpp_html"><div class="ttname"><a href="objectFile_8hpp.html">objectFile.hpp</a></div></div>
<div class="ttc" id="astreams_8hpp_html"><div class="ttname"><a href="streams_8hpp.html">streams.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a770eebd1866493c91efe18ab806d9568"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a770eebd1866493c91efe18ab806d9568">pFlow::IOfileHeader::inStream</a></div><div class="ttdeci">uniquePtr&lt; iFstream &gt; inStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00024">IOfileHeader.cpp:24</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aac13e923e67df5e79d9a75f592b97da3"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aac13e923e67df5e79d9a75f592b97da3">pFlow::IOfileHeader::implyRead</a></div><div class="ttdeci">bool implyRead() const</div><div class="ttdoc">Imply read.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00121">IOfileHeader.cpp:121</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html">pFlow::IOfileHeader</a></div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00035">IOfileHeader.hpp:35</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a7724614a5d68ca0d55beead4b79f6051"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a7724614a5d68ca0d55beead4b79f6051">pFlow::IOfileHeader::writeSeparator</a></div><div class="ttdeci">bool writeSeparator(iOstream &amp;os) const</div><div class="ttdoc">wirte a separator line</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00249">IOfileHeader.cpp:249</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a1a248aa0488b774d5160449992ad31e5"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a1a248aa0488b774d5160449992ad31e5">pFlow::IOfileHeader::headerOk</a></div><div class="ttdeci">bool headerOk(bool silent=false)</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00092">IOfileHeader.cpp:92</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr</a></div><div class="ttdef"><b>Definition:</b> <a href="uniquePtr_8hpp_source.html#l00042">uniquePtr.hpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_aaf27120b2528b8d3d77903c4f4481127"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#aaf27120b2528b8d3d77903c4f4481127">pFlow::IOfileHeader::readHeader</a></div><div class="ttdeci">bool readHeader() const</div><div class="ttdoc">Check if header should be read from file.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00189">IOfileHeader.cpp:189</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a4ae6d6ea877ec8652d86076eaf333c12"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a4ae6d6ea877ec8652d86076eaf333c12">pFlow::IOfileHeader::objectName</a></div><div class="ttdeci">const word &amp; objectName() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00069">IOfileHeader.hpp:69</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a27694b34ae10a55819c0647e27e52424"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a27694b34ae10a55819c0647e27e52424">pFlow::IOfileHeader::IOfileHeader</a></div><div class="ttdeci">IOfileHeader(const objectFile &amp;objf)</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00058">IOfileHeader.cpp:58</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a6e04bca1658d3c571a38d8ac1d62462e"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a6e04bca1658d3c571a38d8ac1d62462e">pFlow::IOfileHeader::inFileBinary</a></div><div class="ttdeci">bool inFileBinary() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00087">IOfileHeader.cpp:87</a></div></div>
<div class="ttc" id="aclasspFlow_1_1repository_html"><div class="ttname"><a href="classpFlow_1_1repository.html">pFlow::repository</a></div><div class="ttdef"><b>Definition:</b> <a href="repository_8hpp_source.html#l00034">repository.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a40f592c06afad8142b602fa255a5dc20"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a40f592c06afad8142b602fa255a5dc20">pFlow::IOfileHeader::dummyOutStream</a></div><div class="ttdeci">uniquePtr&lt; oFstream &gt; dummyOutStream() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00045">IOfileHeader.cpp:45</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_adfb03998f9b3b981631dc794cffd05a1"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#adfb03998f9b3b981631dc794cffd05a1">pFlow::IOfileHeader::implyWrite</a></div><div class="ttdeci">bool implyWrite() const</div><div class="ttdoc">Imply write.</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00127">IOfileHeader.cpp:127</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_add8e03162ae5c99e43a6a512ef9b7e36"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#add8e03162ae5c99e43a6a512ef9b7e36">pFlow::IOfileHeader::isIncluded</a></div><div class="ttdeci">virtual bool isIncluded(const word &amp;objName) const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00088">IOfileHeader.hpp:88</a></div></div>
<div class="ttc" id="aclasspFlow_1_1iOstream_html"><div class="ttname"><a href="classpFlow_1_1iOstream.html">pFlow::iOstream</a></div><div class="ttdoc">Interface class for any output stream.</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00059">iOstream.hpp:59</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a6fc6abb626e9155a819c52624443ca0c"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a6fc6abb626e9155a819c52624443ca0c">pFlow::IOfileHeader::owner</a></div><div class="ttdeci">virtual const repository * owner() const</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8hpp_source.html#l00082">IOfileHeader.hpp:82</a></div></div>
<div class="ttc" id="aclasspFlow_1_1IOfileHeader_html_a935aedcbc2d9fc4e32646d718eaec1f4"><div class="ttname"><a href="classpFlow_1_1IOfileHeader.html#a935aedcbc2d9fc4e32646d718eaec1f4">pFlow::IOfileHeader::writeBanner</a></div><div class="ttdeci">bool writeBanner(iOstream &amp;os) const</div><div class="ttdoc">write the banner</div><div class="ttdef"><b>Definition:</b> <a href="IOfileHeader_8cpp_source.html#l00238">IOfileHeader.cpp:238</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOfileHeader_8hpp.html">IOfileHeader.hpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOobjectTemplates.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOobjectTemplates_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOobjectTemplates.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOobjectTemplates_8cpp__dep__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOobjectTemplates_8cppdep" alt=""/></div>
</div>
</div>
<p><a href="IOobjectTemplates_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOobjectTemplates_8cpp.html">IOobjectTemplates.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,9 @@
digraph "src/phasicFlow/repository/IOobject/IOobjectTemplates.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOobjectTemplates.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [dir="back",color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="src/phasicFlow/repository\l/IOobject/IOobject.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOobject_8hpp.html",tooltip=" "];
}

View File

@ -0,0 +1,184 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOobjectTemplates.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOobjectTemplates_8cpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOobjectTemplates.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="IOobjectTemplates_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*------------------------------- phasicFlow ---------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> O C enter of</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> O O E ngineering and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> O O M ultiscale modeling of</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> OOOOOOO F luid flow </span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> Copyright (C): www.cemf.ir</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> email: hamid.r.norouzi AT gmail.com</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">------------------------------------------------------------------------------ </span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">Licence:</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> This file is part of phasicFlow code. It is a free software for simulating </span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> granular and multiphase flows. You can redistribute it and/or modify it under</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> the terms of GNU General Public License v3 or any other later versions. </span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> </span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> phasicFlow is distributed to help others in their research in the field of </span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> granular and multiphase flows, but WITHOUT ANY WARRANTY; without even the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; </div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment">/*template&lt;typename T, typename... Args&gt;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">auto pFlow::IOobject::make</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">(</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> const objectFile&amp; objf,</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> Args&amp;&amp;... args</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment">)</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> return makeUnique&lt;IOobject&gt;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> (</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> objf, nullptr , make_object_t&lt;T&gt;(std::forward&lt;Args&gt;(args)...)</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> );</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">template&lt;typename T, typename... Args&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">pFlow::uniquePtr&lt;pFlow::IOobject::iObject&gt; pFlow::IOobject::make_object_t(Args&amp;&amp;... args)</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> auto ptr = makeUnique&lt;object_t&lt;T&gt;&gt;(std::forward&lt;Args&gt;(args)...);</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> return ptr;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">template&lt;typename T&gt;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">auto&amp; pFlow::IOobject::getObject()</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> if( !isObjectValid() )</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> fatalErrorInFunction&lt;&lt;</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> &quot;accessing an invalid objecct &quot;&lt;&lt; name() &lt;&lt;endl;</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> fatalExit;</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> return static_cast&lt;object_t&lt;T&gt;&amp;&gt;(*object_).data();</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">}</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">template&lt;typename T&gt;</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">const auto&amp; pFlow::IOobject::getObject()const</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">{</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> if( !isObjectValid() )</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> fatalErrorInFunction&lt;&lt;</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> &quot;accessing an invalid objecct &quot;&lt;&lt; name() &lt;&lt;endl;</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> fatalExit;</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> return static_cast&lt;const object_t&lt;T&gt;&amp;&gt;(*object_).data(); </span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">}*/</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOobjectTemplates_8cpp.html">IOobjectTemplates.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="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.">
<title>PhasicFlow: src/phasicFlow/repository/IOobject/IOobject.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" >
<tbody>
<tr>
<td id="projectlogo"><a href="https://github.com/PhasicFlow"><img alt="Logo" src="phasicFlow_logo.png"></a></td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</td>
</tr>
<tr>
<td id="projectbrief">
<a href="https://https://cemf.ir">www.cemf.ir</a>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IOobject_8cpp.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IOobject.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Include dependency graph for IOobject.cpp:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="IOobject_8cpp__incl.png" border="0" usemap="#src_2phasicFlow_2repository_2IOobject_2IOobject_8cpp" alt=""/></div>
</div>
</div>
<p><a href="IOobject_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cd7a5046d028e114fc17b2ebc2bd02d2.html">phasicFlow</a></li><li class="navelem"><a class="el" href="dir_8a09dd5b7fce343a5c545316ddba4e1b.html">repository</a></li><li class="navelem"><a class="el" href="dir_557182f9d267f2db2f460147f8d9cd32.html">IOobject</a></li><li class="navelem"><a class="el" href="IOobject_8cpp.html">IOobject.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
digraph "src/phasicFlow/repository/IOobject/IOobject.cpp"
{
// LATEX_PDF_SIZE
edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
node [fontname="Helvetica",fontsize="10",shape=record];
Node1 [label="src/phasicFlow/repository\l/IOobject/IOobject.cpp",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
Node1 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node2 [label="IOobject.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$IOobject_8hpp.html",tooltip=" "];
Node1 -> Node58 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
Node58 [label="repository.hpp",height=0.2,width=0.4,color="red", fillcolor="white", style="filled",URL="$repository_8hpp.html",tooltip=" "];
Node58 -> Node2 [color="midnightblue",fontsize="10",style="solid",fontname="Helvetica"];
}

Some files were not shown because too many files have changed in this diff Show More