|
39 | 39 | },
|
40 | 40 | {
|
41 | 41 | "cell_type": "code",
|
42 |
| - "execution_count": 1, |
| 42 | + "execution_count": null, |
43 | 43 | "id": "b52b39d9-260d-4c54-b62a-7440c3b92e5a",
|
44 | 44 | "metadata": {},
|
45 |
| - "outputs": [ |
46 |
| - { |
47 |
| - "name": "stdout", |
48 |
| - "output_type": "stream", |
49 |
| - "text": [ |
50 |
| - "float64\n", |
51 |
| - "complex128\n" |
52 |
| - ] |
53 |
| - } |
54 |
| - ], |
| 45 | + "outputs": [], |
55 | 46 | "source": [
|
56 | 47 | "from mpi4py import MPI\n",
|
57 | 48 | "import dolfinx\n",
|
|
80 | 71 | },
|
81 | 72 | {
|
82 | 73 | "cell_type": "code",
|
83 |
| - "execution_count": 2, |
| 74 | + "execution_count": null, |
84 | 75 | "id": "4d5b03e3-4d7f-45b7-95eb-9130a5141f34",
|
85 | 76 | "metadata": {},
|
86 |
| - "outputs": [ |
87 |
| - { |
88 |
| - "name": "stdout", |
89 |
| - "output_type": "stream", |
90 |
| - "text": [ |
91 |
| - "<class 'numpy.complex128'>\n" |
92 |
| - ] |
93 |
| - } |
94 |
| - ], |
| 77 | + "outputs": [], |
95 | 78 | "source": [
|
96 | 79 | "from petsc4py import PETSc\n",
|
97 | 80 | "from dolfinx.fem.petsc import assemble_vector\n",
|
|
110 | 93 | },
|
111 | 94 | {
|
112 | 95 | "cell_type": "code",
|
113 |
| - "execution_count": 3, |
| 96 | + "execution_count": null, |
114 | 97 | "id": "be8461a0-a089-4ff3-8bc8-61b016407e70",
|
115 | 98 | "metadata": {},
|
116 | 99 | "outputs": [],
|
|
137 | 120 | },
|
138 | 121 | {
|
139 | 122 | "cell_type": "code",
|
140 |
| - "execution_count": 4, |
| 123 | + "execution_count": null, |
141 | 124 | "id": "779ab267-4609-4628-9577-a280b9c18b6d",
|
142 | 125 | "metadata": {},
|
143 |
| - "outputs": [ |
144 |
| - { |
145 |
| - "name": "stdout", |
146 |
| - "output_type": "stream", |
147 |
| - "text": [ |
148 |
| - "{ c_0 * (conj((v_0))) } * dx(<Mesh #0>[everywhere], {})\n", |
149 |
| - "{ c_0 * (conj((v_0))) } * dx(<Mesh #0>[everywhere], {})\n" |
150 |
| - ] |
151 |
| - } |
152 |
| - ], |
| 126 | + "outputs": [], |
153 | 127 | "source": [
|
154 | 128 | "L2 = f * ufl.conj(v) * ufl.dx\n",
|
155 | 129 | "print(L)\n",
|
|
166 | 140 | },
|
167 | 141 | {
|
168 | 142 | "cell_type": "code",
|
169 |
| - "execution_count": 5, |
| 143 | + "execution_count": null, |
170 | 144 | "id": "d61c477a-d364-4a81-9362-42f1eb4cd8ee",
|
171 | 145 | "metadata": {},
|
172 |
| - "outputs": [ |
173 |
| - { |
174 |
| - "name": "stdout", |
175 |
| - "output_type": "stream", |
176 |
| - "text": [ |
177 |
| - "[4.21666667e-03+3.33333333e-05j 1.58750000e-03+8.33333333e-06j\n", |
178 |
| - " 4.68333333e-03+1.00000000e-04j 8.13333333e-03+2.66666667e-04j\n", |
179 |
| - " 3.35000000e-03+3.33333333e-05j 4.68333333e-03+3.66666667e-04j\n", |
180 |
| - " 6.43333333e-03+2.66666667e-04j 8.13333333e-03+8.66666667e-04j\n", |
181 |
| - " 2.58333333e-03+3.33333333e-05j 4.68333333e-03+8.33333333e-04j\n", |
182 |
| - " 4.93333333e-03+2.66666667e-04j 6.43333333e-03+8.66666667e-04j\n", |
183 |
| - " 8.13333333e-03+1.86666667e-03j 1.91666667e-03+3.33333333e-05j\n", |
184 |
| - " 4.68333333e-03+1.50000000e-03j 3.63333333e-03+2.66666667e-04j\n", |
185 |
| - " 4.93333333e-03+8.66666667e-04j 6.43333333e-03+1.86666667e-03j\n", |
186 |
| - " 8.13333333e-03+3.26666667e-03j 1.35000000e-03+3.33333333e-05j\n", |
187 |
| - " 4.68333333e-03+2.36666667e-03j 2.53333333e-03+2.66666667e-04j\n", |
188 |
| - " 3.63333333e-03+8.66666667e-04j 4.93333333e-03+1.86666667e-03j\n", |
189 |
| - " 6.43333333e-03+3.26666667e-03j 8.13333333e-03+5.06666667e-03j\n", |
190 |
| - " 8.83333333e-04+3.33333333e-05j 4.68333333e-03+3.43333333e-03j\n", |
191 |
| - " 1.63333333e-03+2.66666667e-04j 2.53333333e-03+8.66666667e-04j\n", |
192 |
| - " 3.63333333e-03+1.86666667e-03j 4.93333333e-03+3.26666667e-03j\n", |
193 |
| - " 6.43333333e-03+5.06666667e-03j 8.13333333e-03+7.26666667e-03j\n", |
194 |
| - " 5.16666667e-04+3.33333333e-05j 4.68333333e-03+4.70000000e-03j\n", |
195 |
| - " 9.33333333e-04+2.66666667e-04j 1.63333333e-03+8.66666667e-04j\n", |
196 |
| - " 2.53333333e-03+1.86666667e-03j 3.63333333e-03+3.26666667e-03j\n", |
197 |
| - " 4.93333333e-03+5.06666667e-03j 6.43333333e-03+7.26666667e-03j\n", |
198 |
| - " 8.13333333e-03+9.86666667e-03j 2.50000000e-04+3.33333333e-05j\n", |
199 |
| - " 4.68333333e-03+6.16666667e-03j 4.33333333e-04+2.66666667e-04j\n", |
200 |
| - " 9.33333333e-04+8.66666667e-04j 1.63333333e-03+1.86666667e-03j\n", |
201 |
| - " 2.53333333e-03+3.26666667e-03j 3.63333333e-03+5.06666667e-03j\n", |
202 |
| - " 4.93333333e-03+7.26666667e-03j 6.43333333e-03+9.86666667e-03j\n", |
203 |
| - " 8.13333333e-03+1.28666667e-02j 8.33333333e-05+3.33333333e-05j\n", |
204 |
| - " 4.68333333e-03+7.83333333e-03j 1.33333333e-04+2.66666667e-04j\n", |
205 |
| - " 4.33333333e-04+8.66666667e-04j 9.33333333e-04+1.86666667e-03j\n", |
206 |
| - " 1.63333333e-03+3.26666667e-03j 2.53333333e-03+5.06666667e-03j\n", |
207 |
| - " 3.63333333e-03+7.26666667e-03j 4.93333333e-03+9.86666667e-03j\n", |
208 |
| - " 6.43333333e-03+1.28666667e-02j 8.13333333e-03+1.62666667e-02j\n", |
209 |
| - " 1.25000000e-05+2.50000000e-05j 3.09583333e-03+6.19166667e-03j\n", |
210 |
| - " 1.66666667e-05+1.66666667e-04j 1.33333333e-04+8.66666667e-04j\n", |
211 |
| - " 4.33333333e-04+1.86666667e-03j 9.33333333e-04+3.26666667e-03j\n", |
212 |
| - " 1.63333333e-03+5.06666667e-03j 2.53333333e-03+7.26666667e-03j\n", |
213 |
| - " 3.63333333e-03+9.86666667e-03j 4.93333333e-03+1.28666667e-02j\n", |
214 |
| - " 6.43333333e-03+1.62666667e-02j 3.91666667e-03+9.36666667e-03j\n", |
215 |
| - " 1.66666667e-05+5.00000000e-04j 1.33333333e-04+1.86666667e-03j\n", |
216 |
| - " 4.33333333e-04+3.26666667e-03j 9.33333333e-04+5.06666667e-03j\n", |
217 |
| - " 1.63333333e-03+7.26666667e-03j 2.53333333e-03+9.86666667e-03j\n", |
218 |
| - " 3.63333333e-03+1.28666667e-02j 4.93333333e-03+1.62666667e-02j\n", |
219 |
| - " 3.08333333e-03+9.36666667e-03j 1.66666667e-05+1.03333333e-03j\n", |
220 |
| - " 1.33333333e-04+3.26666667e-03j 4.33333333e-04+5.06666667e-03j\n", |
221 |
| - " 9.33333333e-04+7.26666667e-03j 1.63333333e-03+9.86666667e-03j\n", |
222 |
| - " 2.53333333e-03+1.28666667e-02j 3.63333333e-03+1.62666667e-02j\n", |
223 |
| - " 2.35000000e-03+9.36666667e-03j 1.66666667e-05+1.76666667e-03j\n", |
224 |
| - " 1.33333333e-04+5.06666667e-03j 4.33333333e-04+7.26666667e-03j\n", |
225 |
| - " 9.33333333e-04+9.86666667e-03j 1.63333333e-03+1.28666667e-02j\n", |
226 |
| - " 2.53333333e-03+1.62666667e-02j 1.71666667e-03+9.36666667e-03j\n", |
227 |
| - " 1.66666667e-05+2.70000000e-03j 1.33333333e-04+7.26666667e-03j\n", |
228 |
| - " 4.33333333e-04+9.86666667e-03j 9.33333333e-04+1.28666667e-02j\n", |
229 |
| - " 1.63333333e-03+1.62666667e-02j 1.18333333e-03+9.36666667e-03j\n", |
230 |
| - " 1.66666667e-05+3.83333333e-03j 1.33333333e-04+9.86666667e-03j\n", |
231 |
| - " 4.33333333e-04+1.28666667e-02j 9.33333333e-04+1.62666667e-02j\n", |
232 |
| - " 7.50000000e-04+9.36666667e-03j 1.66666667e-05+5.16666667e-03j\n", |
233 |
| - " 1.33333333e-04+1.28666667e-02j 4.33333333e-04+1.62666667e-02j\n", |
234 |
| - " 4.16666667e-04+9.36666667e-03j 1.66666667e-05+6.70000000e-03j\n", |
235 |
| - " 1.33333333e-04+1.62666667e-02j 1.83333333e-04+9.36666667e-03j\n", |
236 |
| - " 1.66666667e-05+8.43333333e-03j 5.00000000e-05+9.36666667e-03j\n", |
237 |
| - " 4.16666667e-06+3.17500000e-03j]\n" |
238 |
| - ] |
239 |
| - } |
240 |
| - ], |
| 146 | + "outputs": [], |
241 | 147 | "source": [
|
242 | 148 | "J = u_c**2 * ufl.dx\n",
|
243 | 149 | "F = ufl.derivative(J, u_c, ufl.conj(v))\n",
|
|
256 | 162 | },
|
257 | 163 | {
|
258 | 164 | "cell_type": "code",
|
259 |
| - "execution_count": 6, |
| 165 | + "execution_count": null, |
260 | 166 | "id": "eb2357ae-ac71-4407-bf37-432f1b1e31d0",
|
261 | 167 | "metadata": {},
|
262 | 168 | "outputs": [],
|
|
281 | 187 | },
|
282 | 188 | {
|
283 | 189 | "cell_type": "code",
|
284 |
| - "execution_count": 7, |
| 190 | + "execution_count": null, |
285 | 191 | "id": "f51d9a7a-2cde-4d0f-8606-91f91c372c4b",
|
286 | 192 | "metadata": {},
|
287 |
| - "outputs": [ |
288 |
| - { |
289 |
| - "name": "stdout", |
290 |
| - "output_type": "stream", |
291 |
| - "text": [ |
292 |
| - "(0.0007865435216227239+0.0017660156338113711j) 3.553078358632328e-06\n" |
293 |
| - ] |
294 |
| - } |
295 |
| - ], |
| 193 | + "outputs": [], |
296 | 194 | "source": [
|
297 | 195 | "x = ufl.SpatialCoordinate(mesh)\n",
|
298 | 196 | "u_ex = 0.5 * x[0]**2 + 1j*x[1]**2\n",
|
|
322 | 220 | "source": [
|
323 | 221 | "import pyvista\n",
|
324 | 222 | "pyvista.start_xvfb()\n",
|
| 223 | + "mesh.topology.create_connectivity(mesh.topology.dim, mesh.topology.dim)\n", |
325 | 224 | "p_mesh = pyvista.UnstructuredGrid(*dolfinx.plot.vtk_mesh(mesh, mesh.topology.dim))\n",
|
326 | 225 | "pyvista_cells, cell_types, geometry = dolfinx.plot.vtk_mesh(V)\n",
|
327 | 226 | "grid = pyvista.UnstructuredGrid(pyvista_cells, cell_types, geometry)\n",
|
|
0 commit comments