|
142 | 142 | "We now have the boundary data (and in this case the solution of \n", |
143 | 143 | "the finite element problem) represented in the discrete function space.\n", |
144 | 144 | "Next we would like to apply the boundary values to all degrees of freedom that are on the boundary of the discrete domain. We start by identifying the facets (line-segments) representing the outer boundary, using `dolfinx.mesh.compute_boundary_facets`.\n", |
145 | | - "This function returns an array of booleans of the same size as the number of facets on this processor, where `True` indicates that the local facet $i$ is on the boundary. To reduce this to only the indices that are `True`, we use [`numpy.flatnonzero`](https://numpy.org/doc/stable/reference/generated/numpy.flatnonzero.html)." |
| 145 | + "This function returns an array of integers of the same size as the number of facets on this processor, where `1` indicates that the local facet $i$ is on the boundary. To reduce this to only the indices that are equal to `1`, we use [`numpy.flatnonzero`](https://numpy.org/doc/stable/reference/generated/numpy.flatnonzero.html)." |
146 | 146 | ] |
147 | 147 | }, |
148 | 148 | { |
|
343 | 343 | "output_type": "stream", |
344 | 344 | "text": [ |
345 | 345 | "Error_L2 : 8.24e-03\n", |
346 | | - "Error_max : 2.22e-15\n" |
| 346 | + "Error_max : 2.00e-15\n" |
347 | 347 | ] |
348 | 348 | } |
349 | 349 | ], |
|
409 | 409 | { |
410 | 410 | "data": { |
411 | 411 | "application/vnd.jupyter.widget-view+json": { |
412 | | - "model_id": "c0fbae39627443d095ae8e138ed6eb5b", |
| 412 | + "model_id": "be85adc5c1eb4871a7d86de3509c438e", |
413 | 413 | "version_major": 2, |
414 | 414 | "version_minor": 0 |
415 | 415 | }, |
416 | 416 | "text/plain": [ |
417 | | - "Renderer(camera=PerspectiveCamera(aspect=1.3333333333333333, children=(DirectionalLight(color='#fefefe', inten…" |
| 417 | + "Renderer(camera=PerspectiveCamera(aspect=1.3333333333333333, children=(DirectionalLight(intensity=0.25, positi…" |
418 | 418 | ] |
419 | 419 | }, |
420 | 420 | "metadata": {}, |
|
464 | 464 | { |
465 | 465 | "data": { |
466 | 466 | "application/vnd.jupyter.widget-view+json": { |
467 | | - "model_id": "8865425a451440cbbab2398e17448c41", |
| 467 | + "model_id": "12ac381a9d92468b88ac86a9348fb316", |
468 | 468 | "version_major": 2, |
469 | 469 | "version_minor": 0 |
470 | 470 | }, |
471 | 471 | "text/plain": [ |
472 | | - "Renderer(camera=PerspectiveCamera(aspect=1.3333333333333333, children=(DirectionalLight(color='#fefefe', inten…" |
| 472 | + "Renderer(camera=PerspectiveCamera(aspect=1.3333333333333333, children=(DirectionalLight(intensity=0.25, positi…" |
473 | 473 | ] |
474 | 474 | }, |
475 | 475 | "metadata": {}, |
|
503 | 503 | { |
504 | 504 | "data": { |
505 | 505 | "application/vnd.jupyter.widget-view+json": { |
506 | | - "model_id": "291ccff816554752956b35a46b1ccc07", |
| 506 | + "model_id": "1089f8c8d3d648c5be3284509702bf97", |
507 | 507 | "version_major": 2, |
508 | 508 | "version_minor": 0 |
509 | 509 | }, |
|
533 | 533 | }, |
534 | 534 | { |
535 | 535 | "cell_type": "code", |
536 | | - "execution_count": 19, |
| 536 | + "execution_count": 20, |
537 | 537 | "metadata": {}, |
538 | 538 | "outputs": [], |
539 | 539 | "source": [ |
|
0 commit comments