1D Poisson's Equation

This example is taken from [4]. Consider a simple 1D Poisson’s equation with Dirichlet boundary conditions. The solution is given by

\[u(x)=\sin (2 \pi x)+0.1 \sin (50 \pi x)\]

using ModelingToolkit, IntervalSets, Sophon
using Optimization, OptimizationOptimJL, Zygote
using CairoMakie

@parameters x
@variables u(..)
Dₓ² = Differential(x)^2

f(x) = -4 * π^2 * sin(2 * π * x) - 250 * π^2 * sin(50 * π * x)
eq = Dₓ²(u(x)) ~ f(x)
domain = [x ∈ 0 .. 1]
bcs = [u(0) ~ 0, u(1) ~ 0]

@named poisson = PDESystem(eq, bcs, domain, [x], [u(x)])

\[ \begin{align} \frac{\mathrm{d}}{\mathrm{d}x} \frac{\mathrm{d} u\left( x \right)}{\mathrm{d}x} =& - 39.478 \sin\left( 6.2832 x \right) - 2467.4 \sin\left( 157.08 x \right) \end{align} \]

chain = Siren(1, 16, 32, 16, 1)
pinn = PINN(chain)
sampler = QuasiRandomSampler(200, 1)
strategy = NonAdaptiveTraining(1 , 50)

prob = Sophon.discretize(poisson, pinn, sampler, strategy)
@showprogress res = Optimization.solve(prob, BFGS(); maxiters=2000)

phi = pinn.phi
xs = 0:0.001:1
u_true = @. sin(2 * pi * xs) + 0.1 * sin(50 * pi * xs)
us = phi(xs', res.u)
fig = Figure()
axis = Axis(fig[1, 1])
lines!(xs, u_true; label="Ground Truth")
lines!(xs, vec(us); label="Prediction")
axislegend(axis)
fig

0.0%┣                                         ┫ 1/2.0k [00:21<Inf:Inf, InfGs/it]

3.361035e+06 0.1%┣                             ┫ 2/2.0k [00:21<11:35:38, 21s/it]

3.138804e+06 0.1%┣                             ┫ 3/2.0k [00:21<05:49:12, 10s/it]

2.936345e+06 0.2%┣                              ┫ 4/2.0k [00:21<03:53:34, 7s/it]

2.746533e+06 0.2%┣                              ┫ 5/2.0k [00:21<02:55:55, 5s/it]

2.498818e+06 0.3%┣                              ┫ 6/2.0k [00:21<02:21:07, 4s/it]

2.418663e+06 0.3%┣                              ┫ 7/2.0k [00:21<01:57:57, 4s/it]

2.174433e+06 0.4%┣▏                             ┫ 8/2.0k [00:21<01:41:25, 3s/it]

2.086895e+06 0.4%┣▏                             ┫ 9/2.0k [00:21<01:29:01, 3s/it]

2.003093e+06 0.5%┣▏                            ┫ 10/2.0k [00:22<01:19:22, 2s/it]

1.837683e+06 0.5%┣▏                            ┫ 11/2.0k [00:22<01:11:39, 2s/it]

1.725814e+06 0.6%┣▏                            ┫ 12/2.0k [00:22<01:05:20, 2s/it]

1.594955e+06 0.6%┣▏                            ┫ 13/2.0k [00:22<01:00:04, 2s/it]

1.506776e+06 0.7%┣▎                               ┫ 14/2.0k [00:22<55:37, 2s/it]

1.428959e+06 0.7%┣▎                               ┫ 15/2.0k [00:22<51:46, 2s/it]

1.395728e+06 0.8%┣▎                               ┫ 16/2.0k [00:22<48:29, 1s/it]

1.261727e+06 0.8%┣▎                               ┫ 17/2.0k [00:22<45:35, 1s/it]

1.151208e+06 0.9%┣▎                               ┫ 18/2.0k [00:22<43:03, 1s/it]

1.054997e+06 0.9%┣▎                               ┫ 19/2.0k [00:22<40:47, 1s/it]

9.799980e+05 1.0%┣▎                               ┫ 20/2.0k [00:22<38:44, 1s/it]

9.186868e+05 1.0%┣▍                               ┫ 21/2.0k [00:22<36:53, 1s/it]

8.594771e+05 1.1%┣▍                               ┫ 22/2.0k [00:22<35:14, 1s/it]

7.847681e+05 1.1%┣▍                               ┫ 23/2.0k [00:22<33:43, 1s/it]

7.135436e+05 1.2%┣▍                               ┫ 24/2.0k [00:23<32:20, 1it/s]

6.629802e+05 1.2%┣▍                               ┫ 25/2.0k [00:23<31:04, 1it/s]

6.133305e+05 1.3%┣▍                               ┫ 26/2.0k [00:23<29:54, 1it/s]

5.253909e+05 1.3%┣▍                               ┫ 27/2.0k [00:23<28:50, 1it/s]

4.587066e+05 1.4%┣▌                               ┫ 28/2.0k [00:23<27:50, 1it/s]

4.183185e+05 1.4%┣▌                               ┫ 29/2.0k [00:23<26:54, 1it/s]

3.725324e+05 1.5%┣▌                               ┫ 30/2.0k [00:23<26:02, 1it/s]

3.293172e+05 1.5%┣▌                               ┫ 31/2.0k [00:23<25:14, 1it/s]

2.785027e+05 1.6%┣▌                               ┫ 32/2.0k [00:23<24:28, 1it/s]

2.461240e+05 1.6%┣▌                               ┫ 33/2.0k [00:23<23:45, 1it/s]

2.151734e+05 1.7%┣▌                               ┫ 34/2.0k [00:23<23:05, 1it/s]

1.881705e+05 1.7%┣▋                               ┫ 35/2.0k [00:23<22:27, 1it/s]

1.745354e+05 1.8%┣▋                               ┫ 36/2.0k [00:23<21:51, 1it/s]

1.535701e+05 1.8%┣▋                               ┫ 37/2.0k [00:23<21:17, 2it/s]

1.354806e+05 1.9%┣▋                               ┫ 38/2.0k [00:23<20:46, 2it/s]

1.175053e+05 1.9%┣▋                               ┫ 39/2.0k [00:24<20:15, 2it/s]

1.015979e+05 2.0%┣▋                               ┫ 40/2.0k [00:24<19:46, 2it/s]

8.599934e+04 2.1%┣▊                               ┫ 42/2.0k [00:24<18:52, 2it/s]

7.724386e+04 2.1%┣▊                               ┫ 43/2.0k [00:24<18:28, 2it/s]

6.863331e+04 2.2%┣▊                               ┫ 44/2.0k [00:24<18:04, 2it/s]

6.204778e+04 2.2%┣▊                               ┫ 45/2.0k [00:24<17:42, 2it/s]

5.437739e+04 2.3%┣▊                               ┫ 46/2.0k [00:24<17:20, 2it/s]

4.776322e+04 2.3%┣▊                               ┫ 47/2.0k [00:24<17:00, 2it/s]

3.978627e+04 2.4%┣▊                               ┫ 48/2.0k [00:24<16:40, 2it/s]

3.550662e+04 2.4%┣▉                               ┫ 49/2.0k [00:24<16:21, 2it/s]

3.150346e+04 2.5%┣▉                               ┫ 50/2.0k [00:24<16:03, 2it/s]

2.866548e+04 2.5%┣▉                               ┫ 51/2.0k [00:24<15:45, 2it/s]

2.490911e+04 2.6%┣▉                               ┫ 52/2.0k [00:24<15:28, 2it/s]

2.169057e+04 2.7%┣▉                               ┫ 54/2.0k [00:24<14:56, 2it/s]

2.020877e+04 2.7%┣▉                               ┫ 55/2.0k [00:24<14:41, 2it/s]

1.644496e+04 2.8%┣█                               ┫ 57/2.0k [00:25<14:13, 2it/s]

1.483103e+04 2.9%┣█                               ┫ 58/2.0k [00:25<13:59, 2it/s]

1.231654e+04 3.0%┣█                               ┫ 60/2.0k [00:25<13:33, 2it/s]

1.137067e+04 3.0%┣█                               ┫ 61/2.0k [00:25<13:21, 2it/s]

1.024622e+04 3.1%┣█                               ┫ 63/2.0k [00:25<12:57, 2it/s]

9.558414e+03 3.2%┣█                               ┫ 64/2.0k [00:25<12:47, 3it/s]

9.003443e+03 3.2%┣█                               ┫ 65/2.0k [00:25<12:36, 3it/s]

8.466924e+03 3.3%┣█                               ┫ 66/2.0k [00:25<12:26, 3it/s]

7.568788e+03 3.4%┣█                               ┫ 68/2.0k [00:25<12:06, 3it/s]

7.122071e+03 3.4%┣█                               ┫ 69/2.0k [00:25<11:56, 3it/s]

6.654754e+03 3.5%┣█▏                              ┫ 70/2.0k [00:25<11:47, 3it/s]

6.069318e+03 3.6%┣█▏                              ┫ 72/2.0k [00:25<11:29, 3it/s]

5.778862e+03 3.6%┣█▏                              ┫ 73/2.0k [00:25<11:20, 3it/s]

5.404989e+03 3.7%┣█▏                              ┫ 75/2.0k [00:26<11:04, 3it/s]

5.170634e+03 3.8%┣█▏                              ┫ 76/2.0k [00:26<10:56, 3it/s]

4.673924e+03 3.9%┣█▎                              ┫ 78/2.0k [00:26<10:41, 3it/s]

4.480053e+03 3.9%┣█▎                              ┫ 79/2.0k [00:26<10:34, 3it/s]

3.951870e+03 4.0%┣█▎                              ┫ 81/2.0k [00:26<10:19, 3it/s]

3.765812e+03 4.1%┣█▎                              ┫ 82/2.0k [00:26<10:13, 3it/s]

3.416696e+03 4.2%┣█▍                              ┫ 84/2.0k [00:26<10:00, 3it/s]

3.120784e+03 4.3%┣█▍                              ┫ 86/2.0k [00:26<09:47, 3it/s]

2.809535e+03 4.4%┣█▍                              ┫ 88/2.0k [00:26<09:35, 3it/s]

2.683482e+03 4.4%┣█▍                              ┫ 89/2.0k [00:26<09:29, 3it/s]

2.473241e+03 4.5%┣█▌                              ┫ 91/2.0k [00:26<09:18, 3it/s]

2.374546e+03 4.6%┣█▌                              ┫ 92/2.0k [00:26<09:13, 3it/s]

2.142016e+03 4.7%┣█▌                              ┫ 94/2.0k [00:26<09:02, 4it/s]

2.006079e+03 4.7%┣█▌                              ┫ 95/2.0k [00:26<08:57, 4it/s]

1.821847e+03 4.8%┣█▌                              ┫ 97/2.0k [00:27<08:47, 4it/s]

1.701341e+03 4.9%┣█▋                              ┫ 98/2.0k [00:27<08:42, 4it/s]

1.528352e+03 5.0%┣█▌                             ┫ 100/2.0k [00:27<08:33, 4it/s]

1.359087e+03 5.1%┣█▋                             ┫ 102/2.0k [00:27<08:24, 4it/s]

1.235943e+03 5.2%┣█▋                             ┫ 104/2.0k [00:27<08:15, 4it/s]

1.128931e+03 5.3%┣█▋                             ┫ 106/2.0k [00:27<08:07, 4it/s]

1.072569e+03 5.4%┣█▊                             ┫ 108/2.0k [00:27<07:59, 4it/s]

9.949104e+02 5.5%┣█▊                             ┫ 110/2.0k [00:27<07:51, 4it/s]

9.083905e+02 5.6%┣█▊                             ┫ 112/2.0k [00:27<07:43, 4it/s]

8.929421e+02 5.6%┣█▊                             ┫ 113/2.0k [00:27<07:40, 4it/s]

8.040490e+02 5.7%┣█▉                             ┫ 115/2.0k [00:27<07:33, 4it/s]

6.976264e+02 5.8%┣█▉                             ┫ 117/2.0k [00:27<07:26, 4it/s]

6.398589e+02 5.9%┣█▉                             ┫ 119/2.0k [00:28<07:20, 4it/s]

5.896099e+02 6.0%┣█▉                             ┫ 121/2.0k [00:28<07:13, 4it/s]

5.404443e+02 6.1%┣██                             ┫ 123/2.0k [00:28<07:07, 4it/s]

5.053425e+02 6.2%┣██                             ┫ 125/2.0k [00:28<07:01, 4it/s]

4.786528e+02 6.3%┣██                             ┫ 127/2.0k [00:28<06:55, 5it/s]

4.383359e+02 6.4%┣██                             ┫ 129/2.0k [00:28<06:49, 5it/s]

4.105574e+02 6.5%┣██                             ┫ 131/2.0k [00:28<06:43, 5it/s]

3.961703e+02 6.6%┣██                             ┫ 133/2.0k [00:28<06:38, 5it/s]

3.710749e+02 6.7%┣██                             ┫ 135/2.0k [00:28<06:33, 5it/s]

3.499688e+02 6.8%┣██▏                            ┫ 137/2.0k [00:28<06:28, 5it/s]

3.325095e+02 6.9%┣██▏                            ┫ 139/2.0k [00:28<06:23, 5it/s]

3.108784e+02 7.0%┣██▏                            ┫ 141/2.0k [00:28<06:18, 5it/s]

2.934548e+02 7.1%┣██▏                            ┫ 143/2.0k [00:29<06:13, 5it/s]

2.776374e+02 7.2%┣██▎                            ┫ 145/2.0k [00:29<06:09, 5it/s]

2.622309e+02 7.3%┣██▎                            ┫ 147/2.0k [00:29<06:04, 5it/s]

2.487076e+02 7.4%┣██▎                            ┫ 149/2.0k [00:29<06:00, 5it/s]

2.387465e+02 7.5%┣██▍                            ┫ 151/2.0k [00:29<05:56, 5it/s]

2.241332e+02 7.6%┣██▍                            ┫ 153/2.0k [00:29<05:52, 5it/s]

2.124680e+02 7.7%┣██▍                            ┫ 155/2.0k [00:29<05:48, 5it/s]

2.014159e+02 7.8%┣██▍                            ┫ 157/2.0k [00:29<05:44, 5it/s]

1.934539e+02 7.9%┣██▌                            ┫ 159/2.0k [00:29<05:40, 5it/s]

1.861463e+02 8.0%┣██▌                            ┫ 161/2.0k [00:29<05:36, 5it/s]

1.719826e+02 8.1%┣██▌                            ┫ 163/2.0k [00:29<05:33, 6it/s]

1.566413e+02 8.2%┣██▋                            ┫ 165/2.0k [00:29<05:29, 6it/s]

1.428959e+02 8.3%┣██▋                            ┫ 167/2.0k [00:29<05:26, 6it/s]

1.327089e+02 8.4%┣██▋                            ┫ 169/2.0k [00:30<05:22, 6it/s]

1.232086e+02 8.5%┣██▋                            ┫ 171/2.0k [00:30<05:19, 6it/s]

1.168314e+02 8.6%┣██▊                            ┫ 173/2.0k [00:30<05:16, 6it/s]

1.101600e+02 8.7%┣██▊                            ┫ 175/2.0k [00:30<05:13, 6it/s]

1.029260e+02 8.8%┣██▊                            ┫ 177/2.0k [00:30<05:10, 6it/s]

9.825970e+01 8.9%┣██▊                            ┫ 179/2.0k [00:30<05:07, 6it/s]

9.337614e+01 9.0%┣██▉                            ┫ 181/2.0k [00:30<05:04, 6it/s]

8.912062e+01 9.1%┣██▉                            ┫ 183/2.0k [00:30<05:01, 6it/s]

8.691417e+01 9.2%┣██▉                            ┫ 184/2.0k [00:30<05:00, 6it/s]

8.257284e+01 9.3%┣██▉                            ┫ 186/2.0k [00:30<04:57, 6it/s]

7.895578e+01 9.4%┣███                            ┫ 188/2.0k [00:30<04:54, 6it/s]

7.623040e+01 9.5%┣███                            ┫ 190/2.0k [00:30<04:51, 6it/s]

7.369373e+01 9.6%┣███                            ┫ 192/2.0k [00:30<04:48, 6it/s]

7.054209e+01 9.7%┣███                            ┫ 194/2.0k [00:31<04:46, 6it/s]

6.627009e+01 9.8%┣███                            ┫ 196/2.0k [00:31<04:43, 6it/s]

6.243543e+01 9.9%┣███                            ┫ 198/2.0k [00:31<04:41, 6it/s]

6.028407e+01 10.0%┣███                           ┫ 200/2.0k [00:31<04:38, 6it/s]

5.717013e+01 10.1%┣███                           ┫ 202/2.0k [00:31<04:36, 7it/s]

5.499663e+01 10.2%┣███                           ┫ 204/2.0k [00:31<04:33, 7it/s]

5.141644e+01 10.3%┣███                           ┫ 206/2.0k [00:31<04:31, 7it/s]

4.820222e+01 10.4%┣███▏                          ┫ 208/2.0k [00:31<04:28, 7it/s]

4.523670e+01 10.5%┣███▏                          ┫ 210/2.0k [00:31<04:26, 7it/s]

4.247453e+01 10.6%┣███▏                          ┫ 212/2.0k [00:31<04:24, 7it/s]

4.115697e+01 10.7%┣███▏                          ┫ 214/2.0k [00:31<04:22, 7it/s]

4.010532e+01 10.7%┣███▎                          ┫ 215/2.0k [00:31<04:21, 7it/s]

3.823284e+01 10.8%┣███▎                          ┫ 217/2.0k [00:31<04:19, 7it/s]

3.646204e+01 10.9%┣███▎                          ┫ 219/2.0k [00:31<04:16, 7it/s]

3.492555e+01 11.0%┣███▎                          ┫ 221/2.0k [00:31<04:14, 7it/s]

3.306780e+01 11.1%┣███▍                          ┫ 223/2.0k [00:31<04:12, 7it/s]

3.148473e+01 11.2%┣███▍                          ┫ 225/2.0k [00:32<04:10, 7it/s]

2.962740e+01 11.3%┣███▍                          ┫ 227/2.0k [00:32<04:08, 7it/s]

2.832336e+01 11.4%┣███▍                          ┫ 229/2.0k [00:32<04:06, 7it/s]

2.715151e+01 11.5%┣███▌                          ┫ 231/2.0k [00:32<04:04, 7it/s]

2.595968e+01 11.6%┣███▌                          ┫ 233/2.0k [00:32<04:02, 7it/s]

2.484184e+01 11.7%┣███▌                          ┫ 235/2.0k [00:32<04:00, 7it/s]

2.339770e+01 11.8%┣███▌                          ┫ 237/2.0k [00:32<03:59, 7it/s]

2.212565e+01 11.9%┣███▋                          ┫ 239/2.0k [00:32<03:57, 7it/s]

2.079478e+01 12.0%┣███▋                          ┫ 241/2.0k [00:32<03:55, 7it/s]

1.920566e+01 12.1%┣███▋                          ┫ 243/2.0k [00:32<03:53, 8it/s]

1.806982e+01 12.2%┣███▊                          ┫ 245/2.0k [00:32<03:52, 8it/s]

1.733176e+01 12.3%┣███▊                          ┫ 247/2.0k [00:32<03:50, 8it/s]

1.694735e+01 12.4%┣███▊                          ┫ 249/2.0k [00:32<03:48, 8it/s]

1.624677e+01 12.6%┣███▉                          ┫ 252/2.0k [00:32<03:46, 8it/s]

1.589197e+01 12.7%┣███▉                          ┫ 254/2.0k [00:32<03:44, 8it/s]

1.531516e+01 12.8%┣███▉                          ┫ 256/2.0k [00:32<03:42, 8it/s]

1.469307e+01 12.9%┣███▉                          ┫ 258/2.0k [00:33<03:41, 8it/s]

1.419198e+01 13.0%┣████                          ┫ 260/2.0k [00:33<03:39, 8it/s]

1.383422e+01 13.1%┣████                          ┫ 262/2.0k [00:33<03:38, 8it/s]

1.318446e+01 13.2%┣████                          ┫ 265/2.0k [00:33<03:35, 8it/s]

1.252488e+01 13.3%┣████                          ┫ 267/2.0k [00:33<03:34, 8it/s]

1.180323e+01 13.4%┣████                          ┫ 269/2.0k [00:33<03:32, 8it/s]

1.151242e+01 13.5%┣████                          ┫ 271/2.0k [00:33<03:31, 8it/s]

1.100062e+01 13.7%┣████                          ┫ 274/2.0k [00:33<03:29, 8it/s]

1.044908e+01 13.8%┣████▏                         ┫ 277/2.0k [00:33<03:26, 8it/s]

9.911811e+00 14.0%┣████▏                         ┫ 280/2.0k [00:33<03:24, 8it/s]

9.631239e+00 14.1%┣████▎                         ┫ 282/2.0k [00:33<03:23, 8it/s]

9.141736e+00 14.2%┣████▎                         ┫ 284/2.0k [00:33<03:22, 9it/s]

8.847923e+00 14.3%┣████▎                         ┫ 286/2.0k [00:33<03:20, 9it/s]

8.508156e+00 14.4%┣████▎                         ┫ 288/2.0k [00:33<03:19, 9it/s]

8.149254e+00 14.5%┣████▍                         ┫ 291/2.0k [00:33<03:17, 9it/s]

7.732038e+00 14.7%┣████▍                         ┫ 294/2.0k [00:34<03:15, 9it/s]

7.327885e+00 14.8%┣████▌                         ┫ 297/2.0k [00:34<03:13, 9it/s]

7.080965e+00 14.9%┣████▌                         ┫ 299/2.0k [00:34<03:12, 9it/s]

6.880273e+00 15.1%┣████▌                         ┫ 302/2.0k [00:34<03:10, 9it/s]

6.562074e+00 15.2%┣████▋                         ┫ 305/2.0k [00:34<03:08, 9it/s]

6.326203e+00 15.3%┣████▋                         ┫ 307/2.0k [00:34<03:07, 9it/s]

6.147323e+00 15.4%┣████▋                         ┫ 309/2.0k [00:34<03:06, 9it/s]

5.905303e+00 15.5%┣████▋                         ┫ 311/2.0k [00:34<03:05, 9it/s]

5.704061e+00 15.6%┣████▊                         ┫ 313/2.0k [00:34<03:04, 9it/s]

5.511433e+00 15.8%┣████▊                         ┫ 316/2.0k [00:34<03:02, 9it/s]

5.211680e+00 15.9%┣████▉                         ┫ 319/2.0k [00:34<03:00, 9it/s]

5.039414e+00 16.0%┣████▉                         ┫ 321/2.0k [00:34<02:59, 9it/s]

4.893347e+00 16.1%┣████▉                         ┫ 323/2.0k [00:34<02:58, 9it/s]

4.658551e+00 16.2%┣████▉                         ┫ 325/2.0k [00:34<02:57, 9it/s]

4.466378e+00 16.3%┣█████                         ┫ 327/2.0k [00:34<02:56, 9it/s]

4.295274e+00 16.4%┣████▊                        ┫ 329/2.0k [00:34<02:55, 10it/s]

4.106732e+00 16.5%┣████▉                        ┫ 331/2.0k [00:34<02:54, 10it/s]

3.924522e+00 16.6%┣████▉                        ┫ 333/2.0k [00:35<02:53, 10it/s]

3.775251e+00 16.8%┣████▉                        ┫ 336/2.0k [00:35<02:52, 10it/s]

3.606540e+00 16.9%┣█████                        ┫ 339/2.0k [00:35<02:50, 10it/s]

3.392920e+00 17.1%┣█████                        ┫ 342/2.0k [00:35<02:49, 10it/s]

3.218358e+00 17.2%┣█████                        ┫ 344/2.0k [00:35<02:48, 10it/s]

3.011699e+00 17.3%┣█████                        ┫ 347/2.0k [00:35<02:47, 10it/s]

2.882405e+00 17.4%┣█████                        ┫ 349/2.0k [00:35<02:46, 10it/s]

2.751453e+00 17.6%┣█████                        ┫ 352/2.0k [00:35<02:44, 10it/s]

2.598173e+00 17.7%┣█████▏                       ┫ 355/2.0k [00:35<02:43, 10it/s]

2.491975e+00 17.9%┣█████▏                       ┫ 358/2.0k [00:35<02:41, 10it/s]

2.423040e+00 18.0%┣█████▎                       ┫ 361/2.0k [00:35<02:40, 10it/s]

2.316084e+00 18.2%┣█████▎                       ┫ 364/2.0k [00:35<02:39, 10it/s]

2.253518e+00 18.3%┣█████▎                       ┫ 367/2.0k [00:35<02:37, 10it/s]

2.132702e+00 18.5%┣█████▍                       ┫ 370/2.0k [00:35<02:36, 10it/s]

2.098205e+00 18.6%┣█████▍                       ┫ 372/2.0k [00:35<02:35, 10it/s]

2.016457e+00 18.7%┣█████▍                       ┫ 374/2.0k [00:35<02:35, 11it/s]

1.909722e+00 18.8%┣█████▌                       ┫ 377/2.0k [00:35<02:33, 11it/s]

1.840017e+00 19.0%┣█████▌                       ┫ 380/2.0k [00:36<02:32, 11it/s]

1.741884e+00 19.1%┣█████▌                       ┫ 383/2.0k [00:36<02:31, 11it/s]

1.668925e+00 19.3%┣█████▋                       ┫ 386/2.0k [00:36<02:30, 11it/s]

1.579074e+00 19.5%┣█████▋                       ┫ 390/2.0k [00:36<02:28, 11it/s]

1.533397e+00 19.7%┣█████▊                       ┫ 394/2.0k [00:36<02:26, 11it/s]

1.493016e+00 19.8%┣█████▊                       ┫ 397/2.0k [00:36<02:25, 11it/s]

1.423839e+00 20.0%┣█████▉                       ┫ 400/2.0k [00:36<02:24, 11it/s]

1.365434e+00 20.2%┣█████▉                       ┫ 404/2.0k [00:36<02:23, 11it/s]

1.314369e+00 20.4%┣██████                       ┫ 408/2.0k [00:36<02:21, 11it/s]

1.240803e+00 20.6%┣██████                       ┫ 412/2.0k [00:36<02:20, 11it/s]

1.189151e+00 20.8%┣██████                       ┫ 416/2.0k [00:36<02:18, 11it/s]

1.113061e+00 21.0%┣██████                       ┫ 420/2.0k [00:36<02:17, 12it/s]

1.053547e+00 21.2%┣██████▏                      ┫ 424/2.0k [00:36<02:15, 12it/s]

1.010637e+00 21.4%┣██████▏                      ┫ 428/2.0k [00:36<02:14, 12it/s]

9.576647e-01 21.6%┣██████▎                      ┫ 432/2.0k [00:36<02:13, 12it/s]

9.253599e-01 21.7%┣██████▎                      ┫ 435/2.0k [00:36<02:12, 12it/s]

8.715844e-01 21.9%┣██████▍                      ┫ 439/2.0k [00:37<02:10, 12it/s]

8.397791e-01 22.1%┣██████▍                      ┫ 442/2.0k [00:37<02:09, 12it/s]

7.920761e-01 22.3%┣██████▌                      ┫ 446/2.0k [00:37<02:08, 12it/s]

7.513430e-01 22.5%┣██████▌                      ┫ 450/2.0k [00:37<02:07, 12it/s]

7.220085e-01 22.7%┣██████▋                      ┫ 454/2.0k [00:37<02:06, 12it/s]

6.958726e-01 22.9%┣██████▋                      ┫ 458/2.0k [00:37<02:04, 12it/s]

6.720028e-01 23.0%┣██████▊                      ┫ 461/2.0k [00:37<02:03, 12it/s]

6.381235e-01 23.2%┣██████▊                      ┫ 465/2.0k [00:37<02:02, 13it/s]

6.036347e-01 23.4%┣██████▉                      ┫ 469/2.0k [00:37<02:01, 13it/s]

5.724475e-01 23.7%┣██████▉                      ┫ 474/2.0k [00:37<02:00, 13it/s]

5.397111e-01 23.9%┣███████                      ┫ 478/2.0k [00:37<01:58, 13it/s]

5.136491e-01 24.0%┣███████                      ┫ 481/2.0k [00:37<01:58, 13it/s]

4.860014e-01 24.2%┣███████                      ┫ 485/2.0k [00:37<01:56, 13it/s]

4.545378e-01 24.5%┣███████                      ┫ 490/2.0k [00:37<01:55, 13it/s]

4.205046e-01 24.7%┣███████▏                     ┫ 495/2.0k [00:37<01:54, 13it/s]

3.968927e-01 25.0%┣███████▎                     ┫ 500/2.0k [00:37<01:52, 13it/s]

3.671130e-01 25.2%┣███████▎                     ┫ 505/2.0k [00:37<01:51, 13it/s]

3.475728e-01 25.5%┣███████▍                     ┫ 510/2.0k [00:37<01:50, 14it/s]

3.363682e-01 25.7%┣███████▌                     ┫ 514/2.0k [00:38<01:49, 14it/s]

3.133610e-01 26.0%┣███████▌                     ┫ 521/2.0k [00:38<01:47, 14it/s]

2.938496e-01 26.3%┣███████▋                     ┫ 527/2.0k [00:38<01:45, 14it/s]

2.708746e-01 26.7%┣███████▊                     ┫ 534/2.0k [00:38<01:44, 14it/s]

2.548574e-01 27.0%┣███████▉                     ┫ 540/2.0k [00:38<01:42, 14it/s]

2.332770e-01 27.3%┣████████                     ┫ 547/2.0k [00:38<01:41, 14it/s]

2.160889e-01 27.7%┣████████                     ┫ 554/2.0k [00:38<01:39, 15it/s]

2.020683e-01 28.0%┣████████▏                    ┫ 561/2.0k [00:38<01:37, 15it/s]

1.886128e-01 28.3%┣████████▏                    ┫ 566/2.0k [00:38<01:36, 15it/s]

1.764560e-01 28.6%┣████████▎                    ┫ 572/2.0k [00:38<01:35, 15it/s]

1.662606e-01 28.9%┣████████▍                    ┫ 579/2.0k [00:38<01:34, 15it/s]

1.576643e-01 29.2%┣████████▌                    ┫ 585/2.0k [00:38<01:32, 15it/s]

1.471874e-01 29.6%┣████████▋                    ┫ 592/2.0k [00:38<01:31, 15it/s]

1.393796e-01 29.8%┣████████▋                    ┫ 597/2.0k [00:38<01:30, 16it/s]

1.316882e-01 30.2%┣████████▊                    ┫ 604/2.0k [00:38<01:29, 16it/s]

1.251579e-01 30.5%┣████████▉                    ┫ 610/2.0k [00:38<01:28, 16it/s]

1.189427e-01 30.8%┣█████████                    ┫ 617/2.0k [00:38<01:26, 16it/s]

1.138790e-01 31.1%┣█████████                    ┫ 623/2.0k [00:38<01:25, 16it/s]

1.085439e-01 31.4%┣█████████▏                   ┫ 629/2.0k [00:39<01:24, 16it/s]

1.045252e-01 31.7%┣█████████▏                   ┫ 634/2.0k [00:39<01:23, 16it/s]

1.008306e-01 31.9%┣█████████▎                   ┫ 639/2.0k [00:39<01:22, 17it/s]

9.557441e-02 32.3%┣█████████▍                   ┫ 646/2.0k [00:39<01:21, 17it/s]

9.084674e-02 32.6%┣█████████▌                   ┫ 652/2.0k [00:39<01:20, 17it/s]

8.742913e-02 32.9%┣█████████▌                   ┫ 659/2.0k [00:39<01:19, 17it/s]

8.437044e-02 33.2%┣█████████▋                   ┫ 665/2.0k [00:39<01:18, 17it/s]

8.158730e-02 33.6%┣█████████▊                   ┫ 672/2.0k [00:39<01:17, 17it/s]

7.872095e-02 33.9%┣█████████▉                   ┫ 678/2.0k [00:39<01:16, 17it/s]

7.593384e-02 34.2%┣██████████                   ┫ 684/2.0k [00:39<01:15, 18it/s]

7.224328e-02 34.5%┣██████████                   ┫ 691/2.0k [00:39<01:14, 18it/s]

6.922237e-02 34.8%┣██████████                   ┫ 697/2.0k [00:39<01:13, 18it/s]

6.572631e-02 35.2%┣██████████▏                  ┫ 704/2.0k [00:39<01:12, 18it/s]

6.271510e-02 35.4%┣██████████▎                  ┫ 709/2.0k [00:39<01:12, 18it/s]

5.996806e-02 35.8%┣██████████▍                  ┫ 716/2.0k [00:39<01:11, 18it/s]

5.747715e-02 36.1%┣██████████▌                  ┫ 722/2.0k [00:39<01:10, 18it/s]

5.469955e-02 36.4%┣██████████▋                  ┫ 729/2.0k [00:39<01:09, 18it/s]

5.274737e-02 36.7%┣██████████▋                  ┫ 735/2.0k [00:39<01:08, 19it/s]

4.976969e-02 37.1%┣██████████▊                  ┫ 742/2.0k [00:40<01:07, 19it/s]

4.825294e-02 37.3%┣██████████▉                  ┫ 746/2.0k [00:40<01:07, 19it/s]

4.666385e-02 37.5%┣██████████▉                  ┫ 750/2.0k [00:40<01:06, 19it/s]

4.323473e-02 37.8%┣███████████                  ┫ 757/2.0k [00:40<01:05, 19it/s]

4.118709e-02 38.1%┣███████████                  ┫ 763/2.0k [00:40<01:05, 19it/s]

3.913471e-02 38.5%┣███████████▏                 ┫ 770/2.0k [00:40<01:04, 19it/s]

3.771372e-02 38.8%┣███████████▎                 ┫ 776/2.0k [00:40<01:03, 19it/s]

3.614718e-02 39.1%┣███████████▍                 ┫ 782/2.0k [00:40<01:02, 20it/s]

3.483615e-02 39.4%┣███████████▍                 ┫ 789/2.0k [00:40<01:01, 20it/s]

3.342246e-02 39.7%┣███████████▌                 ┫ 795/2.0k [00:40<01:01, 20it/s]

3.188417e-02 40.1%┣███████████▋                 ┫ 802/2.0k [00:40<01:00, 20it/s]

3.068625e-02 40.4%┣███████████▊                 ┫ 808/2.0k [00:40<00:59, 20it/s]

2.962489e-02 40.7%┣███████████▉                 ┫ 815/2.0k [00:40<00:59, 20it/s]

2.891265e-02 41.0%┣███████████▉                 ┫ 820/2.0k [00:40<00:58, 20it/s]

2.780920e-02 41.3%┣████████████                 ┫ 827/2.0k [00:40<00:57, 21it/s]

2.669846e-02 41.6%┣████████████                 ┫ 833/2.0k [00:40<00:57, 21it/s]

2.551502e-02 42.0%┣████████████▏                ┫ 840/2.0k [00:40<00:56, 21it/s]

2.465953e-02 42.3%┣████████████▎                ┫ 846/2.0k [00:40<00:55, 21it/s]

2.389399e-02 42.6%┣████████████▍                ┫ 852/2.0k [00:41<00:55, 21it/s]

2.278472e-02 42.9%┣████████████▌                ┫ 859/2.0k [00:41<00:54, 21it/s]

2.222572e-02 43.1%┣████████████▌                ┫ 863/2.0k [00:41<00:54, 21it/s]

2.154399e-02 43.4%┣████████████▋                ┫ 868/2.0k [00:41<00:53, 21it/s]

2.087552e-02 43.7%┣████████████▊                ┫ 874/2.0k [00:41<00:53, 21it/s]

2.021094e-02 44.0%┣████████████▊                ┫ 880/2.0k [00:41<00:52, 22it/s]

1.943899e-02 44.3%┣████████████▉                ┫ 887/2.0k [00:41<00:51, 22it/s]

1.873895e-02 44.6%┣█████████████                ┫ 893/2.0k [00:41<00:51, 22it/s]

1.822522e-02 45.0%┣█████████████                ┫ 900/2.0k [00:41<00:50, 22it/s]

1.782435e-02 45.2%┣█████████████▏               ┫ 905/2.0k [00:41<00:50, 22it/s]

1.718496e-02 45.6%┣█████████████▎               ┫ 913/2.0k [00:41<00:49, 22it/s]

1.681103e-02 46.0%┣█████████████▍               ┫ 921/2.0k [00:41<00:48, 22it/s]

1.637343e-02 46.4%┣█████████████▌               ┫ 928/2.0k [00:41<00:48, 23it/s]

1.609474e-02 46.8%┣█████████████▋               ┫ 936/2.0k [00:41<00:47, 23it/s]

1.566383e-02 47.1%┣█████████████▊               ┫ 943/2.0k [00:41<00:46, 23it/s]

1.534344e-02 47.4%┣█████████████▊               ┫ 949/2.0k [00:41<00:46, 23it/s]

1.478802e-02 47.8%┣█████████████▉               ┫ 956/2.0k [00:41<00:45, 23it/s]

1.415692e-02 48.2%┣██████████████               ┫ 964/2.0k [00:41<00:45, 23it/s]

1.369302e-02 48.6%┣██████████████               ┫ 972/2.0k [00:41<00:44, 23it/s]

1.298991e-02 48.9%┣██████████████▏              ┫ 979/2.0k [00:42<00:43, 24it/s]

1.258477e-02 49.3%┣██████████████▎              ┫ 987/2.0k [00:42<00:43, 24it/s]

1.222162e-02 49.7%┣██████████████▍              ┫ 995/2.0k [00:42<00:42, 24it/s]

1.201196e-02 49.9%┣██████████████▌              ┫ 999/2.0k [00:42<00:42, 24it/s]

1.152559e-02 50.3%┣██████████████              ┫ 1.0k/2.0k [00:42<00:41, 24it/s]

1.119706e-02 50.6%┣██████████████▏             ┫ 1.0k/2.0k [00:42<00:41, 24it/s]

1.063366e-02 51.0%┣██████████████▎             ┫ 1.0k/2.0k [00:42<00:40, 24it/s]

1.020151e-02 51.3%┣██████████████▍             ┫ 1.0k/2.0k [00:42<00:40, 24it/s]

9.710973e-03 51.8%┣██████████████▌             ┫ 1.0k/2.0k [00:42<00:39, 25it/s]

9.251182e-03 52.1%┣██████████████▋             ┫ 1.0k/2.0k [00:42<00:39, 25it/s]

8.860535e-03 52.6%┣██████████████▊             ┫ 1.1k/2.0k [00:42<00:38, 25it/s]

8.598339e-03 53.0%┣██████████████▉             ┫ 1.1k/2.0k [00:42<00:37, 25it/s]

8.248366e-03 53.4%┣███████████████             ┫ 1.1k/2.0k [00:42<00:37, 25it/s]

7.912532e-03 53.9%┣███████████████             ┫ 1.1k/2.0k [00:42<00:36, 26it/s]

7.653951e-03 54.3%┣███████████████▏            ┫ 1.1k/2.0k [00:42<00:36, 26it/s]

7.493505e-03 54.7%┣███████████████▎            ┫ 1.1k/2.0k [00:42<00:35, 26it/s]

7.339985e-03 55.2%┣███████████████▌            ┫ 1.1k/2.0k [00:42<00:34, 26it/s]

7.186479e-03 55.6%┣███████████████▋            ┫ 1.1k/2.0k [00:42<00:34, 26it/s]

7.056097e-03 56.0%┣███████████████▊            ┫ 1.1k/2.0k [00:42<00:33, 26it/s]

6.979389e-03 56.4%┣███████████████▉            ┫ 1.1k/2.0k [00:43<00:33, 26it/s]

6.801028e-03 56.8%┣████████████████            ┫ 1.1k/2.0k [00:43<00:32, 27it/s]

6.659632e-03 57.3%┣████████████████            ┫ 1.1k/2.0k [00:43<00:32, 27it/s]

6.573109e-03 57.5%┣████████████████            ┫ 1.2k/2.0k [00:43<00:32, 27it/s]

6.396974e-03 57.9%┣████████████████▏           ┫ 1.2k/2.0k [00:43<00:31, 27it/s]

6.238316e-03 58.2%┣████████████████▎           ┫ 1.2k/2.0k [00:43<00:31, 27it/s]

5.963824e-03 58.7%┣████████████████▍           ┫ 1.2k/2.0k [00:43<00:30, 27it/s]

5.647570e-03 59.0%┣████████████████▌           ┫ 1.2k/2.0k [00:43<00:30, 27it/s]

5.292592e-03 59.5%┣████████████████▋           ┫ 1.2k/2.0k [00:43<00:29, 28it/s]

4.935298e-03 59.8%┣████████████████▊           ┫ 1.2k/2.0k [00:43<00:29, 28it/s]

4.639532e-03 60.2%┣████████████████▉           ┫ 1.2k/2.0k [00:43<00:28, 28it/s]

4.434512e-03 60.6%┣█████████████████           ┫ 1.2k/2.0k [00:43<00:28, 28it/s]

4.241863e-03 61.0%┣█████████████████           ┫ 1.2k/2.0k [00:43<00:28, 28it/s]

4.050319e-03 61.4%┣█████████████████▏          ┫ 1.2k/2.0k [00:43<00:27, 28it/s]

3.911861e-03 61.8%┣█████████████████▎          ┫ 1.2k/2.0k [00:43<00:27, 29it/s]

3.714134e-03 62.2%┣█████████████████▍          ┫ 1.2k/2.0k [00:43<00:26, 29it/s]

3.527503e-03 62.6%┣█████████████████▌          ┫ 1.3k/2.0k [00:43<00:26, 29it/s]

3.363822e-03 63.0%┣█████████████████▋          ┫ 1.3k/2.0k [00:43<00:26, 29it/s]

3.227033e-03 63.4%┣█████████████████▊          ┫ 1.3k/2.0k [00:44<00:25, 29it/s]

3.139186e-03 63.9%┣█████████████████▉          ┫ 1.3k/2.0k [00:44<00:25, 29it/s]

3.059819e-03 64.3%┣██████████████████          ┫ 1.3k/2.0k [00:44<00:24, 29it/s]

2.962845e-03 64.8%┣██████████████████▏         ┫ 1.3k/2.0k [00:44<00:24, 30it/s]

2.896853e-03 65.1%┣██████████████████▎         ┫ 1.3k/2.0k [00:44<00:23, 30it/s]

2.849110e-03 65.5%┣██████████████████▎         ┫ 1.3k/2.0k [00:44<00:23, 30it/s]

2.807694e-03 65.8%┣██████████████████▍         ┫ 1.3k/2.0k [00:44<00:23, 30it/s]

2.694183e-03 66.3%┣██████████████████▋         ┫ 1.3k/2.0k [00:44<00:22, 30it/s]

2.584948e-03 66.7%┣██████████████████▊         ┫ 1.3k/2.0k [00:44<00:22, 30it/s]

2.486044e-03 67.2%┣██████████████████▉         ┫ 1.3k/2.0k [00:44<00:22, 31it/s]

2.391868e-03 67.5%┣███████████████████         ┫ 1.4k/2.0k [00:44<00:21, 31it/s]

2.285475e-03 68.0%┣███████████████████         ┫ 1.4k/2.0k [00:44<00:21, 31it/s]

2.169383e-03 68.4%┣███████████████████▏        ┫ 1.4k/2.0k [00:44<00:20, 31it/s]

2.065262e-03 68.9%┣███████████████████▎        ┫ 1.4k/2.0k [00:44<00:20, 31it/s]

1.976537e-03 69.2%┣███████████████████▍        ┫ 1.4k/2.0k [00:44<00:20, 31it/s]

1.877483e-03 69.6%┣███████████████████▌        ┫ 1.4k/2.0k [00:44<00:19, 31it/s]

1.781967e-03 70.0%┣███████████████████▋        ┫ 1.4k/2.0k [00:44<00:19, 32it/s]

1.706436e-03 70.4%┣███████████████████▊        ┫ 1.4k/2.0k [00:44<00:19, 32it/s]

1.614389e-03 70.9%┣███████████████████▉        ┫ 1.4k/2.0k [00:44<00:18, 32it/s]

1.560269e-03 71.3%┣████████████████████        ┫ 1.4k/2.0k [00:45<00:18, 32it/s]

1.520343e-03 71.8%┣████████████████████        ┫ 1.4k/2.0k [00:45<00:18, 32it/s]

1.494245e-03 72.2%┣████████████████████▏       ┫ 1.4k/2.0k [00:45<00:17, 32it/s]

1.442266e-03 72.6%┣████████████████████▎       ┫ 1.5k/2.0k [00:45<00:17, 32it/s]

1.409813e-03 72.9%┣████████████████████▍       ┫ 1.5k/2.0k [00:45<00:17, 33it/s]

1.384513e-03 73.3%┣████████████████████▌       ┫ 1.5k/2.0k [00:45<00:16, 33it/s]

1.370442e-03 73.6%┣████████████████████▋       ┫ 1.5k/2.0k [00:45<00:16, 33it/s]

1.340131e-03 74.1%┣████████████████████▊       ┫ 1.5k/2.0k [00:45<00:16, 33it/s]

1.309218e-03 74.5%┣████████████████████▉       ┫ 1.5k/2.0k [00:45<00:15, 33it/s]

1.246795e-03 74.9%┣█████████████████████       ┫ 1.5k/2.0k [00:45<00:15, 33it/s]

1.192281e-03 75.4%┣█████████████████████▏      ┫ 1.5k/2.0k [00:45<00:15, 33it/s]

1.150465e-03 75.9%┣█████████████████████▎      ┫ 1.5k/2.0k [00:45<00:14, 34it/s]

1.108601e-03 76.2%┣█████████████████████▍      ┫ 1.5k/2.0k [00:45<00:14, 34it/s]

1.071789e-03 76.7%┣█████████████████████▌      ┫ 1.5k/2.0k [00:45<00:14, 34it/s]

1.035688e-03 77.2%┣█████████████████████▋      ┫ 1.5k/2.0k [00:45<00:13, 34it/s]

9.977512e-04 77.6%┣█████████████████████▊      ┫ 1.6k/2.0k [00:45<00:13, 34it/s]

9.806695e-04 78.0%┣█████████████████████▉      ┫ 1.6k/2.0k [00:45<00:13, 34it/s]

9.493924e-04 78.4%┣██████████████████████      ┫ 1.6k/2.0k [00:45<00:13, 34it/s]

9.357554e-04 78.9%┣██████████████████████      ┫ 1.6k/2.0k [00:46<00:12, 35it/s]

9.185199e-04 79.4%┣██████████████████████▏     ┫ 1.6k/2.0k [00:46<00:12, 35it/s]

9.052021e-04 79.7%┣██████████████████████▎     ┫ 1.6k/2.0k [00:46<00:12, 35it/s]

8.785946e-04 80.1%┣██████████████████████▍     ┫ 1.6k/2.0k [00:46<00:11, 35it/s]

8.608629e-04 80.5%┣██████████████████████▌     ┫ 1.6k/2.0k [00:46<00:11, 35it/s]

8.502895e-04 80.8%┣██████████████████████▋     ┫ 1.6k/2.0k [00:46<00:11, 35it/s]

8.271231e-04 81.3%┣██████████████████████▊     ┫ 1.6k/2.0k [00:46<00:11, 35it/s]

8.091991e-04 81.6%┣██████████████████████▉     ┫ 1.6k/2.0k [00:46<00:10, 36it/s]

7.960719e-04 82.1%┣███████████████████████     ┫ 1.6k/2.0k [00:46<00:10, 36it/s]

7.754686e-04 82.5%┣███████████████████████     ┫ 1.7k/2.0k [00:46<00:10, 36it/s]

7.622053e-04 83.0%┣███████████████████████▎    ┫ 1.7k/2.0k [00:46<00:09, 36it/s]

7.512193e-04 83.3%┣███████████████████████▎    ┫ 1.7k/2.0k [00:46<00:09, 36it/s]

7.307203e-04 83.8%┣███████████████████████▌    ┫ 1.7k/2.0k [00:46<00:09, 36it/s]

7.203863e-04 84.2%┣███████████████████████▋    ┫ 1.7k/2.0k [00:46<00:09, 36it/s]

7.063794e-04 84.7%┣███████████████████████▊    ┫ 1.7k/2.0k [00:46<00:08, 37it/s]

6.931902e-04 85.0%┣███████████████████████▉    ┫ 1.7k/2.0k [00:46<00:08, 37it/s]

6.832654e-04 85.5%┣████████████████████████    ┫ 1.7k/2.0k [00:46<00:08, 37it/s]

6.775846e-04 85.9%┣████████████████████████    ┫ 1.7k/2.0k [00:46<00:08, 37it/s]

6.714514e-04 86.4%┣████████████████████████▏   ┫ 1.7k/2.0k [00:47<00:07, 37it/s]

6.670260e-04 86.7%┣████████████████████████▎   ┫ 1.7k/2.0k [00:47<00:07, 37it/s]

6.544517e-04 87.1%┣████████████████████████▍   ┫ 1.7k/2.0k [00:47<00:07, 37it/s]

6.490860e-04 87.5%┣████████████████████████▌   ┫ 1.8k/2.0k [00:47<00:07, 37it/s]

6.426445e-04 87.9%┣████████████████████████▋   ┫ 1.8k/2.0k [00:47<00:06, 38it/s]

6.362482e-04 88.4%┣████████████████████████▊   ┫ 1.8k/2.0k [00:47<00:06, 38it/s]

6.339272e-04 88.6%┣████████████████████████▉   ┫ 1.8k/2.0k [00:47<00:06, 38it/s]

6.082896e-04 89.1%┣█████████████████████████   ┫ 1.8k/2.0k [00:47<00:06, 38it/s]

5.910454e-04 89.5%┣█████████████████████████   ┫ 1.8k/2.0k [00:47<00:06, 38it/s]

5.778728e-04 89.9%┣█████████████████████████▏  ┫ 1.8k/2.0k [00:47<00:05, 38it/s]

5.688689e-04 90.3%┣█████████████████████████▎  ┫ 1.8k/2.0k [00:47<00:05, 38it/s]

5.581091e-04 90.7%┣█████████████████████████▍  ┫ 1.8k/2.0k [00:47<00:05, 38it/s]

5.411605e-04 91.2%┣█████████████████████████▌  ┫ 1.8k/2.0k [00:47<00:05, 39it/s]

5.203213e-04 91.6%┣█████████████████████████▋  ┫ 1.8k/2.0k [00:47<00:04, 39it/s]

5.022494e-04 92.0%┣█████████████████████████▊  ┫ 1.8k/2.0k [00:47<00:04, 39it/s]

4.766589e-04 92.4%┣█████████████████████████▉  ┫ 1.8k/2.0k [00:47<00:04, 39it/s]

4.584549e-04 92.9%┣██████████████████████████  ┫ 1.9k/2.0k [00:47<00:04, 39it/s]

4.482883e-04 93.3%┣██████████████████████████  ┫ 1.9k/2.0k [00:47<00:03, 39it/s]

4.373828e-04 93.6%┣██████████████████████████▏ ┫ 1.9k/2.0k [00:48<00:03, 39it/s]

4.254914e-04 94.0%┣██████████████████████████▎ ┫ 1.9k/2.0k [00:48<00:03, 40it/s]

4.201819e-04 94.4%┣██████████████████████████▍ ┫ 1.9k/2.0k [00:48<00:03, 40it/s]

4.136522e-04 94.8%┣██████████████████████████▌ ┫ 1.9k/2.0k [00:48<00:03, 40it/s]

4.018640e-04 95.3%┣██████████████████████████▊ ┫ 1.9k/2.0k [00:48<00:02, 40it/s]

3.946360e-04 95.6%┣██████████████████████████▊ ┫ 1.9k/2.0k [00:48<00:02, 40it/s]

3.872557e-04 96.1%┣███████████████████████████ ┫ 1.9k/2.0k [00:48<00:02, 40it/s]

3.821473e-04 96.4%┣███████████████████████████ ┫ 1.9k/2.0k [00:48<00:02, 40it/s]

3.699913e-04 96.8%┣███████████████████████████ ┫ 1.9k/2.0k [00:48<00:02, 40it/s]

3.611223e-04 97.2%┣███████████████████████████▏┫ 1.9k/2.0k [00:48<00:01, 40it/s]

3.415626e-04 97.6%┣███████████████████████████▎┫ 2.0k/2.0k [00:48<00:01, 41it/s]

3.274656e-04 98.1%┣███████████████████████████▌┫ 2.0k/2.0k [00:48<00:01, 41it/s]

3.188943e-04 98.5%┣███████████████████████████▋┫ 2.0k/2.0k [00:48<00:01, 41it/s]

3.130764e-04 98.9%┣███████████████████████████▊┫ 2.0k/2.0k [00:48<00:01, 41it/s]

3.040417e-04 99.3%┣███████████████████████████▉┫ 2.0k/2.0k [00:48<00:00, 41it/s]

2.979800e-04 99.7%┣████████████████████████████┫ 2.0k/2.0k [00:48<00:00, 41it/s]

2.913693e-04 100.0%┣███████████████████████████┫ 2.0k/2.0k [00:48<00:00, 41it/s]

Compute the relative L2 error

using Integrals

u_analytical(x,p) = sin.(2 * pi .* x) + 0.1 * sin.(50 * pi .* x)
error(x,p) = abs2.(vec(phi([x;;],res.u)) .- u_analytical(x,p))

relative_L2_error = solve(IntegralProblem(error,0,1),HCubatureJL(),reltol=1e-3,abstol=1e-3) ./ solve(IntegralProblem((x,p) -> abs2.(u_analytical(x,p)),0, 1),HCubatureJL(),reltol=1e-3,abstol=1e-3)
1-element Vector{Float64}:
 8.740902437741377e-8