You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<h2><spanclass="section-number">1.4. </span>Python implementations of reference elements<aclass="headerlink" href="#python-implementations-of-reference-elements" title="Permalink to this headline">¶</a></h2>
<h2><spanclass="section-number">1.5. </span>Quadrature rules on reference elements<aclass="headerlink" href="#quadrature-rules-on-reference-elements" title="Permalink to this headline">¶</a></h2>
<pclass="card-text">Imperial students can also <aclass="reference external" href="https://imperial.cloud.panopto.eu/Panopto/Pages/Viewer.aspx?id=e5f1084f-c163-46d3-b317-ac9f00c1c772">watch this video on Panopto</a></p>
<aclass="reference internal" href="fe_utils.html#fe_utils.quadrature.QuadratureRule" title="fe_utils.quadrature.QuadratureRule"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">QuadratureRule</span></code></a> class which records
300
+
</details><p>The <codeclass="xref py py-mod docutils literal notranslate"><spanclass="pre">fe_utils.quadrature</span></code> module provides the
301
+
<codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">QuadratureRule</span></code> class which records
302
302
quadrature points and weights for a given
303
-
<aclass="reference internal" href="fe_utils.html#fe_utils.reference_elements.ReferenceCell" title="fe_utils.reference_elements.ReferenceCell"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">ReferenceCell</span></code></a>. The
<aclass="reference internal" href="fe_utils.html#fe_utils.quadrature.QuadratureRule.integrate" title="fe_utils.quadrature.QuadratureRule.integrate"><codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">integrate()</span></code></a> in one line
325
+
<codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">integrate()</span></code> in one line
326
326
using a <aclass="reference external" href="https://docs.python.org/3/tutorial/datastructures.html#list-comprehensions">list
carefully about how to loop over each row to construct the correct
316
316
powers of <spanclass="math notranslate nohighlight">\(x\)</span> and <spanclass="math notranslate nohighlight">\(y\)</span>. For the purposes of this exercise you should
317
317
ignore the <codeclass="docutils literal notranslate"><spanclass="pre">grad</span></code> argument.</p>
@@ -340,7 +340,7 @@ <h2><span class="section-number">2.5. </span>Implementing finite elements in Pyt
340
340
</details><p>The <aclass="reference internal" href="#def-ciarlet"><spanclass="std std-ref">Ciarlet triple</span></a><spanclass="math notranslate nohighlight">\((K, P, N)\)</span> also provides a
341
341
good abstraction for the implementation of software objects
342
342
corresponding to finite elements. In our case <spanclass="math notranslate nohighlight">\(K\)</span> will be a
343
-
<aclass="reference internal" href="fe_utils.html#fe_utils.reference_elements.ReferenceCell" title="fe_utils.reference_elements.ReferenceCell"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">ReferenceCell</span></code></a>. In this course we
343
+
<codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">ReferenceCell</span></code>. In this course we
344
344
will only implement finite element spaces consisting of complete
345
345
polynomial spaces so we will specify <spanclass="math notranslate nohighlight">\(P\)</span> by providing the maximum
346
346
degree of the polynomials in the space. Since we will only deal with
@@ -353,7 +353,7 @@ <h2><span class="section-number">2.5. </span>Implementing finite elements in Pyt
@@ -380,12 +380,12 @@ <h2><span class="section-number">2.6. </span>Implementing the Lagrange Elements<
380
380
allowfullscreen></iframe></div>
381
381
<pclass="card-text">Imperial students can also <aclass="reference external" href="https://imperial.cloud.panopto.eu/Panopto/Pages/Viewer.aspx?id=d78e85a7-fa59-433c-ac4c-ac9f00e02668">watch this video on Panopto</a></p>
</details><p>The <codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">FiniteElement</span></code> class implements
384
384
a general finite element object assuming we have provided the cell,
385
385
polynomial, degree and nodes. The
386
-
<aclass="reference internal" href="fe_utils.html#fe_utils.finite_elements.LagrangeElement" title="fe_utils.finite_elements.LagrangeElement"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">LagrangeElement</span></code></a> class is a
386
+
<codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">LagrangeElement</span></code> class is a
387
387
<aclass="reference external" href="https://docs.python.org/3/tutorial/classes.html#inheritance">subclass</a> of
388
-
<aclass="reference internal" href="fe_utils.html#fe_utils.finite_elements.FiniteElement" title="fe_utils.finite_elements.FiniteElement"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">FiniteElement</span></code></a> which will implement
388
+
<codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">FiniteElement</span></code> which will implement
389
389
the particular case of the equispaced Lagrange elements.</p>
390
390
<divclass="proof proof-type-exercise" id="id10">
391
391
<spanid="ex-lagrange-element"></span>
@@ -394,12 +394,12 @@ <h2><span class="section-number">2.6. </span>Implementing the Lagrange Elements<
394
394
395
395
</div><divclass="proof-content">
396
396
<p>Implement the <codeclass="xref py py-meth docutils literal notranslate"><spanclass="pre">__init__()</span></code> method of
397
-
<aclass="reference internal" href="fe_utils.html#fe_utils.finite_elements.LagrangeElement" title="fe_utils.finite_elements.LagrangeElement"><codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">LagrangeElement</span></code></a>. Use
398
-
<aclass="reference internal" href="fe_utils.html#fe_utils.finite_elements.lagrange_points" title="fe_utils.finite_elements.lagrange_points"><codeclass="xref py py-func docutils literal notranslate"><spanclass="pre">lagrange_points()</span></code></a> to obtain the
397
+
<codeclass="xref py py-class docutils literal notranslate"><spanclass="pre">LagrangeElement</span></code>. Use
398
+
<codeclass="xref py py-func docutils literal notranslate"><spanclass="pre">lagrange_points()</span></code> to obtain the
399
399
nodes. For the purpose of this exercise, you may ignore the
0 commit comments