|
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