Skip to content

Instantly share code, notes, and snippets.

@rowanc1
Last active January 2, 2016 18:48
Show Gist options
  • Save rowanc1/8345668 to your computer and use it in GitHub Desktop.
Save rowanc1/8345668 to your computer and use it in GitHub Desktop.
SimPEG Tutorial - Creating a Mesh

In this tutorial we will go over creating a mesh, and the basics of numbering, counting, and naming conventions. With these skills you can move faster, and move between different meshes (hopefully) with ease!

<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="objective-">Objective:</h3>
<p>In this tutorial we will go over creating a mesh, and the basics of numbering, counting, and naming conventions. With these skills you can move faster, and move between different meshes (hopefully) with ease!</p>
<p>We will go over the basics of using a <em>TensorMesh</em>, but these skills are transferable to the other meshes available in SimPEG. All of the mesh generation code is located in the <em>mesh</em> package in SimPEG (i.e. <em>SimPEG.mesh</em>). The following meshes are available for use: </p>
<pre><code>&#39;TensorMesh&#39;
&#39;Cyl1DMesh&#39;
&#39;LogicallyOrthogonalMesh&#39;
&#39;TreeMesh&#39;
</code></pre><p>Each mesh code follows the guiding principles that are present in this tutorial, but the details, advantages and disadvantages differ between the implementations. Please read up on the documentation at <a href="http://simpeg.rtfd.org">http://simpeg.rtfd.org</a>.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[1]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="kn">from</span> <span class="nn">SimPEG</span> <span class="kn">import</span> <span class="o">*</span>
<span class="k">print</span> <span class="s">&#39;</span><span class="se">\n</span><span class="s">&#39;</span><span class="o">.</span><span class="n">join</span><span class="p">([</span><span class="n">m</span> <span class="k">for</span> <span class="n">m</span> <span class="ow">in</span> <span class="nb">dir</span><span class="p">(</span><span class="n">Mesh</span><span class="p">)</span> <span class="k">if</span> <span class="n">m</span><span class="p">[</span><span class="o">-</span><span class="mi">4</span><span class="p">:]</span> <span class="o">==</span> <span class="s">&#39;Mesh&#39;</span> <span class="ow">and</span> <span class="s">&#39;Base&#39;</span> <span class="ow">not</span> <span class="ow">in</span> <span class="n">m</span><span class="p">])</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>
Warning: mumps solver not available.
Cyl1DMesh
LogicallyOrthogonalMesh
TensorMesh
TreeMesh
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="variable-locations-and-terminology">Variable Locations and Terminology</h3>
<p>To create a <em>TensorMesh</em> we need to create mesh tensors, the widths of each cell of the mesh in each dimension. We will call these tensors $h$, and these will be define the constant widths of cells in each dimension of the <em>TensorMesh</em>.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[2]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">hx</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">r_</span><span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">]</span>
<span class="n">hy</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">r_</span><span class="p">[</span><span class="mi">3</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">]</span>
<span class="n">M</span> <span class="o">=</span> <span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">([</span><span class="n">hx</span><span class="p">,</span> <span class="n">hy</span><span class="p">])</span>
<span class="n">M</span><span class="o">.</span><span class="n">plotGrid</span><span class="p">(</span><span class="n">centers</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
n4PYo4ZeAAAAAElFTkSuQmCC
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>In this simple mesh, the $h_x$ vector defines the widths of the cell in the $x$ dimension, and starts counting from the origin $(0,0)$. The resulting mesh is divided into cells, and the cell-centers are plotted above as red circles. Other terminology for this mesh are:</p>
<ul>
<li>cell-centers</li>
<li>nodes</li>
<li>faces</li>
<li>edges</li>
</ul>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[3]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">M</span><span class="o">.</span><span class="n">plotGrid</span><span class="p">(</span><span class="n">faces</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">nodes</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s">&#39;Cell faces in the x- and y-directions.&#39;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">legend</span><span class="p">((</span><span class="s">&#39;Nodes&#39;</span><span class="p">,</span> <span class="s">&#39;X-Faces&#39;</span><span class="p">,</span> <span class="s">&#39;Y-Faces&#39;</span><span class="p">))</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt output_prompt">
Out[3]:</div>
<div class="output_text output_subarea output_pyout">
<pre>
&lt;matplotlib.legend.Legend at 0x10f501690&gt;
</pre>
</div>
</div>
<div class="output_area"><div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
wZUrV7Blyxb07t0bcXFxassyCy8vL7Ro0QIXLlwAABw4cADt27dXWZX5BAQE4Pjx48jLywMR4cCB
AwgMDFRblmIGDRqEDRs2AAA2bNgg3cHOvn37sGzZMuzcuRMNGzZUW44iOnbsiJs3b+LKlSu4cuUK
fH19cfr06ap3tjUZZKcmfP311/Too4+Sv78/LVq0SC0ZFnHkyBHSaDTUuXNnCgoKoqCgINq7d6/a
sixCr9dTRESE2jIUcfbsWQoODqZOnTrRkCFDKDMzU21Jili6dCkFBgZShw4daMKECZSfn6+2pCoZ
PXo0eXt7k729Pfn6+tKnn35Kt27doqeffpratm1Lffr0odu3b6sts1LK61+/fj21adOG/Pz8jNvv
yy+/rLbMSinV/8gjjxjbvyytWrWiW7duVRmDH5hiGIap48h1ywXDMAyjGE70DMMwdRxO9AzDMHUc
TvQMwzB1HE70DMMwdRxO9AzDMHUcTvQMUwnPPfccXF1dpRvGmWHKw4meYSphzpw52Lhxo9oyGKbG
cKJn/vL89NNP6Ny5M+7du4fc3Fx06NAB58+fR+/evaUarI5hKkPYO2MZRha6deuGQYMGYf78+cjL
y8P48eOlHH+GYSqDEz3DAHjrrbcQHByMRo0aYc2aNWrLYRirwtYNwwBIT09Hbm4ucnJykJeXZ/xe
1nHWGaYsnOgZBsDUqVOxcOFCjB07FnPnzjV+z2P+MXUBtm6YvzxxcXFo0KABRo8ejeLiYoSGhuLQ
oUOIjo7Gb7/9hpycHLRo0QKffvop+vTpo7ZchlEMD1PMMAxTx2HrhmEYpo7DiZ5hGKaOw4meYRim
jsOJnmEYpo7DiZ5hGKaOw4meYRimjsOJnmEYpo7DiZ5hGKaO8/8klM0Qw7yzLQAAAABJRU5ErkJg
gg==
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>Generally, the faces are used to discretize fluxes, quantities that leave or enter the cells. As such, these fluxes have a direction to them, which is normal to the cell (i.e. directly out of the cell face). The plot above shows that x-faces point in the x-direction, and y-faces point in the y-direction. The nodes are shown in blue, and lie at the intersection of the grid lines. In a two-dimensional mesh, the edges actually live in the same location as the faces, however, they align (or are tangent to) the face. This is easier to see in 3D, when the edges do not live in the same location as the faces. In the 3D plot below, the edge variables are seen as black triangles, and live on the edges(!) of the cell.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[4]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">])</span><span class="o">.</span><span class="n">plotGrid</span><span class="p">(</span><span class="n">faces</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">edges</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">centers</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
QmCC
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="how-many-of-each-">How many of each?</h3>
<p>When making variables that live in each of these locations, it is important to know how many of each variable type you are dealing with. SimPEG makes this pretty easy:</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[5]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="k">print</span> <span class="n">M</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>
---- 2-D TensorMesh ----
x0: 0.00
y0: 0.00
nCx: 8
nCy: 4
hx: 3.00, 2.00, 4*1.00, 2.00, 3.00
hy: 3.00, 2*1.00, 3.00
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[6]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">count</span> <span class="o">=</span> <span class="p">{</span><span class="s">&#39;numCells&#39;</span><span class="p">:</span> <span class="n">M</span><span class="o">.</span><span class="n">nC</span><span class="p">,</span>
<span class="s">&#39;numCells_xDir&#39;</span><span class="p">:</span> <span class="n">M</span><span class="o">.</span><span class="n">nCx</span><span class="p">,</span>
<span class="s">&#39;numCells_yDir&#39;</span><span class="p">:</span> <span class="n">M</span><span class="o">.</span><span class="n">nCy</span><span class="p">,</span>
<span class="s">&#39;numCells_vector&#39;</span><span class="p">:</span> <span class="n">M</span><span class="o">.</span><span class="n">vnC</span><span class="p">}</span>
<span class="k">print</span> <span class="s">&#39;This mesh has </span><span class="si">%(numCells)d</span><span class="s"> cells, which is </span><span class="si">%(numCells_xDir)d</span><span class="s">*</span><span class="si">%(numCells_yDir)d</span><span class="s">!!&#39;</span> <span class="o">%</span> <span class="n">count</span>
<span class="k">print</span> <span class="n">count</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>
This mesh has 32 cells, which is 8*4!!
{&apos;numCells_vector&apos;: array([8, 4]), &apos;numCells_yDir&apos;: 4, &apos;numCells_xDir&apos;: 8, &apos;numCells&apos;: 32}
</pre>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>SimPEG also counts the nodes, faces, and edges.</p>
<pre><code>Nodes: M.nN, M.nNx, M.nNy, M.nNz, M.vnN
Faces: M.nF, M.nFx, M.nFy, M.nFz, M.vnF, M.vnFx, M.vnFy, M.vnFz
Edges: M.nE, M.nEx, M.nEy, M.nEz, M.vnE, M.vnEx, M.vnEy, M.vnEz
</code></pre><p>Face and edge variables have different counts depending on the dimension of the direction that you are interested in. In a 4x5 mesh, for example, there is a 5x5 grid of x-faces, and a 4x6 grid of y-faces. You can count them below! As such, the vnF(x,y,z) and vnE(x,y,z) properties give the vector grid size.</p>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[7]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">([</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">])</span><span class="o">.</span><span class="n">plotGrid</span><span class="p">(</span><span class="n">faces</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
<span class="k">print</span> <span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">([</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">])</span><span class="o">.</span><span class="n">vnFx</span>
<span class="k">print</span> <span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">([</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">])</span><span class="o">.</span><span class="n">vnFy</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>
[5 5]
[4 6]
</pre>
</div>
</div>
<div class="output_area"><div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
q6q6LL8AAAAASUVORK5CYII=
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="some-extra-things-">Some extra things!</h3>
<p>For tensor meshes, there are some additional functions that can come in handy. For example, creating mesh tensors can be a bit time consuming, these can be created speedily by just giving numbers and sizes of padding. See the example below, that follows this notation:</p>
<pre><code>h1 = ( (numPad, sizeStart [, increaseFactor]), (numCore, sizeCode), (numPad, sizeStart [, increaseFactor]) )
</code></pre>
</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">
In&nbsp;[9]:
</div>
<div class="inner_cell">
<div class="input_area">
<div class="highlight"><pre><span class="n">h1</span> <span class="o">=</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mf">1.5</span><span class="p">),</span> <span class="p">(</span><span class="mi">20</span><span class="p">,</span> <span class="mi">5</span><span class="p">),</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
<span class="n">M</span> <span class="o">=</span> <span class="n">Mesh</span><span class="o">.</span><span class="n">TensorMesh</span><span class="p">(</span><span class="n">Utils</span><span class="o">.</span><span class="n">meshTensors</span><span class="p">(</span><span class="n">h1</span><span class="p">,</span> <span class="n">h1</span><span class="p">))</span>
<span class="k">print</span> <span class="n">M</span>
<span class="n">M</span><span class="o">.</span><span class="n">plotGrid</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="output_wrapper">
<div class="output">
<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>
---- 2-D TensorMesh ----
x0: 0.00
y0: 0.00
nCx: 28
nCy: 28
hx: 50.62, 33.75, 22.50, 15.00, 10.00, 20*5.00, 10.00, 13.00, 16.90
hy: 50.62, 33.75, 22.50, 15.00, 10.00, 20*5.00, 10.00, 13.00, 16.90
</pre>
</div>
</div>
<div class="output_area"><div class="prompt"></div>
<div class="output_png output_subarea ">
<img src="data:image/png;base64,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
AABJRU5ErkJggg==
"
>
</div>
</div>
</div>
</div>
</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>Hopefully, you now know how to create TensorMesh objects in SimPEG, and by extension you are also familiar with how to create and use other types of meshes in this SimPEG framework.</p>
</div>
</div>
</div>
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment