File tree Expand file tree Collapse file tree 3 files changed +68
-68
lines changed
9561cf6cd1a70079b986f4eb31580cbd
9ed4657d08dda04de30e6463e2f58d75 Expand file tree Collapse file tree 3 files changed +68
-68
lines changed Original file line number Diff line number Diff line change @@ -136,8 +136,8 @@ <h3>Weak formulation<a class="headerlink" href="#weak-formulation" title="Link t
136136\forall \ K \in \mathcal{T} \right\}
137137\]</ div >
138138< p > and considering the boundary conditions</ p >
139- < div class ="amsmath math notranslate nohighlight " id ="equation-2988ac96-e399-4cc2-89c7-0b227acdf30f ">
140- < span class ="eqno "> (1)< a class ="headerlink " href ="#equation-2988ac96-e399-4cc2-89c7-0b227acdf30f " title ="Permalink to this equation "> </ a > </ span > \[\begin{align}
139+ < div class ="amsmath math notranslate nohighlight " id ="equation-4bce06b2-61d1-4873-ae57-041d498b8d33 ">
140+ < span class ="eqno "> (1)< a class ="headerlink " href ="#equation-4bce06b2-61d1-4873-ae57-041d498b8d33 " title ="Permalink to this equation "> </ a > </ span > \[\begin{align}
141141u &= 0 \quad {\rm on} \ \partial\Omega, \\
142142\nabla^{2} u &= 0 \quad {\rm on} \ \partial\Omega,
143143\end{align}\]</ div >
Original file line number Diff line number Diff line change 22 "cells" : [
33 {
44 "cell_type" : " markdown" ,
5- "id" : " 46868830 " ,
5+ "id" : " 4aab2113 " ,
66 "metadata" : {},
77 "source" : [
88 " # Matrix-free conjugate gradient solver for the Poisson equation\n " ,
7373 {
7474 "cell_type" : " code" ,
7575 "execution_count" : null ,
76- "id" : " 928d50a3 " ,
76+ "id" : " cf567818 " ,
7777 "metadata" : {},
7878 "outputs" : [],
7979 "source" : [
8383 {
8484 "cell_type" : " code" ,
8585 "execution_count" : null ,
86- "id" : " b070a486 " ,
86+ "id" : " d419e491 " ,
8787 "metadata" : {},
8888 "outputs" : [],
8989 "source" : [
9393 {
9494 "cell_type" : " code" ,
9595 "execution_count" : null ,
96- "id" : " 35efb364 " ,
96+ "id" : " 7f68dd06 " ,
9797 "metadata" : {},
9898 "outputs" : [],
9999 "source" : [
104104 },
105105 {
106106 "cell_type" : " markdown" ,
107- "id" : " baed48ab " ,
107+ "id" : " 0d4502a0 " ,
108108 "metadata" : {},
109109 "source" : [
110110 " We begin by using {py:func}`create_rectangle\n " ,
117117 {
118118 "cell_type" : " code" ,
119119 "execution_count" : null ,
120- "id" : " 4a83b106 " ,
120+ "id" : " 1e95eb7e " ,
121121 "metadata" : {},
122122 "outputs" : [],
123123 "source" : [
130130 {
131131 "cell_type" : " code" ,
132132 "execution_count" : null ,
133- "id" : " 1ffb46f4 " ,
133+ "id" : " fe4eb286 " ,
134134 "metadata" : {},
135135 "outputs" : [],
136136 "source" : [
141141 },
142142 {
143143 "cell_type" : " markdown" ,
144- "id" : " dc833caf " ,
144+ "id" : " 87036ca7 " ,
145145 "metadata" : {},
146146 "source" : [
147147 " The second argument to {py:class}`functionspace\n " ,
160160 {
161161 "cell_type" : " code" ,
162162 "execution_count" : null ,
163- "id" : " ddb26e54 " ,
163+ "id" : " 691e80e9 " ,
164164 "metadata" : {},
165165 "outputs" : [],
166166 "source" : [
171171 },
172172 {
173173 "cell_type" : " markdown" ,
174- "id" : " 71944f2c " ,
174+ "id" : " 5ead55d1 " ,
175175 "metadata" : {},
176176 "source" : [
177177 " We now find the degrees of freedom that are associated with the boundary\n " ,
182182 {
183183 "cell_type" : " code" ,
184184 "execution_count" : null ,
185- "id" : " b854ae79 " ,
185+ "id" : " 4693f71d " ,
186186 "metadata" : {},
187187 "outputs" : [],
188188 "source" : [
191191 },
192192 {
193193 "cell_type" : " markdown" ,
194- "id" : " 9c82d1c3 " ,
194+ "id" : " 817fc9d2 " ,
195195 "metadata" : {},
196196 "source" : [
197197 " and use {py:func}`dirichletbc <dolfinx.fem.dirichletbc>` to define the\n " ,
204204 {
205205 "cell_type" : " code" ,
206206 "execution_count" : null ,
207- "id" : " e805a8d1 " ,
207+ "id" : " 9f16d1e9 " ,
208208 "metadata" : {},
209209 "outputs" : [],
210210 "source" : [
215215 },
216216 {
217217 "cell_type" : " markdown" ,
218- "id" : " 95376755 " ,
218+ "id" : " 1e1621fe " ,
219219 "metadata" : {},
220220 "source" : [
221221 " Next, we express the variational problem using UFL."
224224 {
225225 "cell_type" : " code" ,
226226 "execution_count" : null ,
227- "id" : " 2a11c73e " ,
227+ "id" : " 391d9367 " ,
228228 "metadata" : {},
229229 "outputs" : [],
230230 "source" : [
239239 },
240240 {
241241 "cell_type" : " markdown" ,
242- "id" : " f768abd2 " ,
242+ "id" : " a6814667 " ,
243243 "metadata" : {},
244244 "source" : [
245245 " For the matrix-free solvers we also define a second linear form `M` as\n " ,
255255 {
256256 "cell_type" : " code" ,
257257 "execution_count" : null ,
258- "id" : " aa46bf01 " ,
258+ "id" : " 5b9fe109 " ,
259259 "metadata" : {},
260260 "outputs" : [],
261261 "source" : [
266266 },
267267 {
268268 "cell_type" : " markdown" ,
269- "id" : " e48a262b " ,
269+ "id" : " ad916bda " ,
270270 "metadata" : {},
271271 "source" : [
272272 " ### Matrix-free conjugate gradient solver\n " ,
280280 {
281281 "cell_type" : " code" ,
282282 "execution_count" : null ,
283- "id" : " 87dbfd72 " ,
283+ "id" : " 239a3724 " ,
284284 "metadata" : {},
285285 "outputs" : [],
286286 "source" : [
295295 {
296296 "cell_type" : " code" ,
297297 "execution_count" : null ,
298- "id" : " ed923d34 " ,
298+ "id" : " 40194677 " ,
299299 "metadata" : {},
300300 "outputs" : [],
301301 "source" : [
306306 },
307307 {
308308 "cell_type" : " markdown" ,
309- "id" : " e8c77468 " ,
309+ "id" : " d57ccbef " ,
310310 "metadata" : {
311311 "lines_to_next_cell" : 2
312312 },
319319 {
320320 "cell_type" : " code" ,
321321 "execution_count" : null ,
322- "id" : " a245ba50 " ,
322+ "id" : " a2168487 " ,
323323 "metadata" : {
324324 "lines_to_next_cell" : 2
325325 },
342342 },
343343 {
344344 "cell_type" : " markdown" ,
345- "id" : " e8a85226 " ,
345+ "id" : " c98fee34 " ,
346346 "metadata" : {
347347 "lines_to_next_cell" : 2
348348 },
358358 {
359359 "cell_type" : " code" ,
360360 "execution_count" : null ,
361- "id" : " ce148751 " ,
361+ "id" : " 784b24e9 " ,
362362 "metadata" : {},
363363 "outputs" : [],
364364 "source" : [
404404 },
405405 {
406406 "cell_type" : " markdown" ,
407- "id" : " b5f9c594 " ,
407+ "id" : " 3601eadf " ,
408408 "metadata" : {},
409409 "source" : [
410410 " This matrix-free solver is now used to compute the finite element\n " ,
415415 {
416416 "cell_type" : " code" ,
417417 "execution_count" : null ,
418- "id" : " 62496e4b " ,
418+ "id" : " bb3efba2 " ,
419419 "metadata" : {},
420420 "outputs" : [],
421421 "source" : [
427427 {
428428 "cell_type" : " code" ,
429429 "execution_count" : null ,
430- "id" : " 91082b66 " ,
430+ "id" : " d7660c9f " ,
431431 "metadata" : {},
432432 "outputs" : [],
433433 "source" : [
438438 {
439439 "cell_type" : " code" ,
440440 "execution_count" : null ,
441- "id" : " 9ae55aa2 " ,
441+ "id" : " 040e7dfd " ,
442442 "metadata" : {},
443443 "outputs" : [],
444444 "source" : [
450450 {
451451 "cell_type" : " code" ,
452452 "execution_count" : null ,
453- "id" : " b489a563 " ,
453+ "id" : " 6660493e " ,
454454 "metadata" : {},
455455 "outputs" : [],
456456 "source" : [
You can’t perform that action at this time.
0 commit comments