219 lines
16 KiB
HTML
Executable File
219 lines
16 KiB
HTML
Executable File
|
|
<!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="X-UA-Compatible" content="IE=Edge" />
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<title>Element Set Object — PyLaGriT 0.0.0 documentation</title>
|
|
<link rel="stylesheet" href="static/alabaster.css" type="text/css" />
|
|
<link rel="stylesheet" href="static/pygments.css" type="text/css" />
|
|
<script type="text/javascript" id="documentation_options" data-url_root="./" src="static/documentation_options.js"></script>
|
|
<script type="text/javascript" src="static/jquery.js"></script>
|
|
<script type="text/javascript" src="static/underscore.js"></script>
|
|
<script type="text/javascript" src="static/doctools.js"></script>
|
|
<script type="text/javascript" src="static/language_data.js"></script>
|
|
<link rel="index" title="Index" href="genindex.html" />
|
|
<link rel="search" title="Search" href="search.html" />
|
|
<link rel="next" title="Face Set Object" href="autodoc_faceset.html" />
|
|
<link rel="prev" title="Point Set Object" href="autodoc_pset.html" />
|
|
|
|
<link rel="stylesheet" href="static/custom.css" type="text/css" />
|
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
|
|
|
|
</head><body>
|
|
|
|
|
|
<div class="document">
|
|
<div class="documentwrapper">
|
|
<div class="bodywrapper">
|
|
|
|
|
|
<div class="body" role="main">
|
|
|
|
<div class="section" id="module-pylagrit">
|
|
<span id="element-set-object"></span><h1>Element Set Object<a class="headerlink" href="#module-pylagrit" title="Permalink to this headline">¶</a></h1>
|
|
<dl class="class">
|
|
<dt id="pylagrit.EltSet">
|
|
<em class="property">class </em><code class="descclassname">pylagrit.</code><code class="descname">EltSet</code><span class="sig-paren">(</span><em>name</em>, <em>parent</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>EltSet class</p>
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.create_faceset">
|
|
<code class="descname">create_faceset</code><span class="sig-paren">(</span><em>filename=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.create_faceset" title="Permalink to this definition">¶</a></dt>
|
|
<dd></dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.delete">
|
|
<code class="descname">delete</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.delete" title="Permalink to this definition">¶</a></dt>
|
|
<dd></dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.list">
|
|
<code class="descname">list</code><span class="sig-paren">(</span><em>attname=None, stride=[1, 0, 0]</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.list" title="Permalink to this definition">¶</a></dt>
|
|
<dd></dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.minmax">
|
|
<code class="descname">minmax</code><span class="sig-paren">(</span><em>attname=None, stride=[1, 0, 0]</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.minmax" title="Permalink to this definition">¶</a></dt>
|
|
<dd></dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.pset">
|
|
<code class="descname">pset</code><span class="sig-paren">(</span><em>name=None</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.pset" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Create a pset from the points in an element set
|
|
:arg name: Name of point set to be used within LaGriT
|
|
:type name: str
|
|
:returns: PyLaGriT PSet object</p>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.refine">
|
|
<code class="descname">refine</code><span class="sig-paren">(</span><em>amr=''</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.refine" title="Permalink to this definition">¶</a></dt>
|
|
<dd><p>Refine elements in the element set</p>
|
|
<dl class="docutils">
|
|
<dt>Example:</dt>
|
|
<dd><div class="first last highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="kn">from</span> <span class="nn">pylagrit</span> <span class="k">import</span> <span class="n">PyLaGriT</span>
|
|
<span class="gp">>>> </span><span class="kn">import</span> <span class="nn">numpy</span>
|
|
<span class="gp">>>> </span><span class="kn">import</span> <span class="nn">sys</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="n">df</span> <span class="o">=</span> <span class="mf">0.0005</span> <span class="c1"># Fault half aperture</span>
|
|
<span class="gp">>>> </span><span class="n">lr</span> <span class="o">=</span> <span class="mi">7</span> <span class="c1"># Levels of refinement</span>
|
|
<span class="gp">>>> </span><span class="n">nx</span> <span class="o">=</span> <span class="mi">4</span> <span class="c1"># Number of base mesh blocks in x direction</span>
|
|
<span class="gp">>>> </span><span class="n">nz</span> <span class="o">=</span> <span class="mi">20</span> <span class="c1"># Number of base mesh blocks in z direction</span>
|
|
<span class="gp">>>> </span><span class="n">d_base</span> <span class="o">=</span> <span class="n">df</span><span class="o">*</span><span class="mi">2</span><span class="o">**</span><span class="p">(</span><span class="n">lr</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="c1"># Calculated dimension of base block</span>
|
|
<span class="gp">>>> </span><span class="n">w</span> <span class="o">=</span> <span class="n">d_base</span><span class="o">*</span><span class="n">nx</span> <span class="c1"># Calculated width of model</span>
|
|
<span class="gp">>>> </span><span class="n">d</span> <span class="o">=</span> <span class="n">d_base</span><span class="o">*</span><span class="n">nz</span> <span class="c1"># Calculated depth of model</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="n">lg</span> <span class="o">=</span> <span class="n">PyLaGriT</span><span class="p">()</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="c1"># Create discrete fracture mesh</span>
|
|
<span class="gp">>>> </span><span class="n">dxyz</span> <span class="o">=</span> <span class="n">numpy</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="n">d_base</span><span class="p">,</span><span class="n">d_base</span><span class="p">,</span><span class="mf">0.</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">mins</span> <span class="o">=</span> <span class="n">numpy</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="mf">0.</span><span class="p">,</span><span class="o">-</span><span class="n">d</span><span class="p">,</span><span class="mf">0.</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">maxs</span> <span class="o">=</span> <span class="n">numpy</span><span class="o">.</span><span class="n">array</span><span class="p">([</span><span class="n">w</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">])</span>
|
|
<span class="gp">>>> </span><span class="n">mqua</span> <span class="o">=</span> <span class="n">lg</span><span class="o">.</span><span class="n">createpts_dxyz</span><span class="p">(</span><span class="n">dxyz</span><span class="p">,</span><span class="n">mins</span><span class="p">,</span><span class="n">maxs</span><span class="p">,</span><span class="s1">'quad'</span><span class="p">,</span><span class="n">hard_bound</span><span class="o">=</span><span class="p">(</span><span class="s1">'min'</span><span class="p">,</span><span class="s1">'max'</span><span class="p">,</span><span class="s1">'min'</span><span class="p">),</span><span class="n">connect</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">lr</span><span class="p">):</span>
|
|
<span class="gp">>>> </span> <span class="n">prefine</span> <span class="o">=</span> <span class="n">mqua</span><span class="o">.</span><span class="n">pset_geom_xyz</span><span class="p">(</span><span class="n">mins</span><span class="o">-</span><span class="mf">0.1</span><span class="p">,(</span><span class="mf">0.0001</span><span class="p">,</span><span class="mf">0.1</span><span class="p">,</span><span class="mi">0</span><span class="p">))</span>
|
|
<span class="gp">>>> </span> <span class="n">erefine</span> <span class="o">=</span> <span class="n">prefine</span><span class="o">.</span><span class="n">eltset</span><span class="p">()</span>
|
|
<span class="gp">>>> </span> <span class="n">erefine</span><span class="o">.</span><span class="n">refine</span><span class="p">()</span>
|
|
<span class="gp">>>> </span> <span class="n">prefine</span><span class="o">.</span><span class="n">delete</span><span class="p">()</span>
|
|
<span class="gp">>>> </span> <span class="n">erefine</span><span class="o">.</span><span class="n">delete</span><span class="p">()</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span> <span class="o">=</span> <span class="n">mqua</span><span class="o">.</span><span class="n">copypts</span><span class="p">(</span><span class="s1">'triplane'</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span><span class="o">.</span><span class="n">connect</span><span class="p">()</span>
|
|
<span class="gp">>>> </span><span class="c1"># Make sure that not nodes are lost during connect</span>
|
|
<span class="gp">>>> </span><span class="k">if</span> <span class="s1">'The mesh is complete but could not include all points.'</span> <span class="ow">in</span> <span class="n">lg</span><span class="o">.</span><span class="n">before</span><span class="p">:</span>
|
|
<span class="gp">>>> </span> <span class="nb">print</span> <span class="s1">'Error: Lost some points during connect, not completing mesh and exiting workflow!'</span>
|
|
<span class="gp">>>> </span> <span class="nb">print</span> <span class="s1">''</span>
|
|
<span class="gp">>>> </span> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">()</span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span><span class="o">.</span><span class="n">tri_mesh_output_prep</span><span class="p">()</span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span><span class="o">.</span><span class="n">reorder_nodes</span><span class="p">(</span><span class="n">cycle</span><span class="o">=</span><span class="s1">'xic yic zic'</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">pfault</span> <span class="o">=</span> <span class="n">mtri</span><span class="o">.</span><span class="n">pset_geom_xyz</span><span class="p">(</span><span class="n">mins</span><span class="o">-</span><span class="mf">0.1</span><span class="p">,(</span><span class="mf">0.0001</span><span class="p">,</span><span class="mf">0.1</span><span class="p">,</span><span class="mi">0</span><span class="p">))</span>
|
|
<span class="gp">>>> </span><span class="n">psource</span> <span class="o">=</span> <span class="n">mtri</span><span class="o">.</span><span class="n">pset_geom_xyz</span><span class="p">(</span><span class="n">mins</span><span class="o">-</span><span class="mf">0.1</span><span class="p">,</span><span class="n">mins</span><span class="o">+</span><span class="mf">0.0001</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span><span class="o">.</span><span class="n">setatt</span><span class="p">(</span><span class="s1">'imt'</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">pfault</span><span class="o">.</span><span class="n">setatt</span><span class="p">(</span><span class="s1">'imt'</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span>
|
|
<span class="gp">>>> </span><span class="n">psource</span><span class="o">.</span><span class="n">setatt</span><span class="p">(</span><span class="s1">'imt'</span><span class="p">,</span><span class="mi">20</span><span class="p">)</span>
|
|
<span class="gp">>>> </span>
|
|
<span class="gp">>>> </span><span class="n">mtri</span><span class="o">.</span><span class="n">paraview</span><span class="p">(</span><span class="n">filename</span><span class="o">=</span><span class="s1">'discrete_fracture.inp'</span><span class="p">)</span>
|
|
</pre></div>
|
|
</div>
|
|
</dd>
|
|
</dl>
|
|
</dd></dl>
|
|
|
|
<dl class="method">
|
|
<dt id="pylagrit.EltSet.setatt">
|
|
<code class="descname">setatt</code><span class="sig-paren">(</span><em>attname</em>, <em>value</em><span class="sig-paren">)</span><a class="headerlink" href="#pylagrit.EltSet.setatt" title="Permalink to this definition">¶</a></dt>
|
|
<dd></dd></dl>
|
|
|
|
</dd></dl>
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
|
<div class="sphinxsidebarwrapper">
|
|
<h1 class="logo"><a href="index.html">PyLaGriT</a></h1>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h3>Navigation</h3>
|
|
<ul class="current">
|
|
<li class="toctree-l1"><a class="reference internal" href="gettingstarted.html">Getting Started</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="stratigraphic.html">Stratigraphic Hex Mesh Tutorial</a></li>
|
|
<li class="toctree-l1 current"><a class="reference internal" href="autodoc.html">Class Documentation</a><ul class="current">
|
|
<li class="toctree-l2"><a class="reference internal" href="autodoc_pylagrit.html">PyLaGriT Class</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="autodoc_mo.html">Mesh Class</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="autodoc_pset.html">Point Set Class</a></li>
|
|
<li class="toctree-l2 current"><a class="current reference internal" href="#">Element Set Class</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="autodoc_faceset.html">Face Set Class</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="autodoc_region.html">Region Class</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
|
|
<div class="relations">
|
|
<h3>Related Topics</h3>
|
|
<ul>
|
|
<li><a href="index.html">Documentation overview</a><ul>
|
|
<li><a href="autodoc.html">Class Documentation</a><ul>
|
|
<li>Previous: <a href="autodoc_pset.html" title="previous chapter">Point Set Object</a></li>
|
|
<li>Next: <a href="autodoc_faceset.html" title="next chapter">Face Set Object</a></li>
|
|
</ul></li>
|
|
</ul></li>
|
|
</ul>
|
|
</div>
|
|
<div id="searchbox" style="display: none" role="search">
|
|
<h3>Quick search</h3>
|
|
<div class="searchformwrapper">
|
|
<form class="search" action="search.html" method="get">
|
|
<input type="text" name="q" />
|
|
<input type="submit" value="Go" />
|
|
<input type="hidden" name="check_keywords" value="yes" />
|
|
<input type="hidden" name="area" value="default" />
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">$('#searchbox').show(0);</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
<div class="clearer"></div>
|
|
</div>
|
|
<div class="footer">
|
|
©2016, Dylan R. Harp.
|
|
|
|
|
|
|
Powered by <a href="http://sphinx-doc.org/">Sphinx 1.8.5</a>
|
|
& <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
|
|
|
|
|
|
|
<a href="sources/autodoc_eltset.rst.txt"
|
|
rel="nofollow">Page source</a>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</body>
|
|
</html>
|