3.4. Time dependant problems#
In this unit we want to turn to instationary problems. And we will start with a very basic setup: implicit Euler time stepping for the convection diffusion equation. After the main part of this tutorial we have supplementary material to extend the case in several regards.
We are solving the unsteady heat equation
with a suitable advective field \(b\) (the wind).
#imports
from ngsolve import *
#from netgen.geom2d import SplineGeometry
from ngsolve.webgui import Draw
Geometry: \((-1,1)^2\)
Dirichlet boundaries everywhere
Mesh
from netgen.occ import *
from netgen.webgui import Draw as DrawGeo
shape = Rectangle(2,2).Face().Move((-1,-1,0))
shape.edges.Min(X).name="left"
shape.edges.Max(X).name="right"
shape.edges.Min(Y).name="bottom"
shape.edges.Max(Y).name="top"
mesh = Mesh(OCCGeometry(shape, dim=2).GenerateMesh(maxh=0.25))
fes = H1(mesh, order=3, dirichlet="bottom|right|left|top")
u,v = fes.TnT()
time = 0.0
dt = 0.001
We define the field \(b\) (the wind) as
b = CoefficientFunction((2*y*(1-x*x),-2*x*(1-y*y)))
Draw(b,mesh,"wind", vectors={"grid_size": 32}, order=3)
BaseWebGuiScene
bilinear forms for
convection-diffusion stiffness and
mass matrix separately.
non-symmetric memory layout for the mass matrix so that a and m have the same sparsity pattern.
a = BilinearForm(fes, symmetric=False)
a += 0.01*grad(u)*grad(v)*dx + b*grad(u)*v*dx
a.Assemble()
m = BilinearForm(fes, symmetric=False)
m += u*v*dx
m.Assemble()
<ngsolve.comp.BilinearForm at 0x7fce4788c630>
3.4.1. Implicit Euler method#
or in an incremental form:
Incremental form: \(u^{n+1} - u^n\) has homogeneous boundary conditions (unless boundary conditions are time-dependent).
For the time stepping method: set up linear combinations of matrices.
(Only) if the sparsity pattern of the matrices agree we can copy the pattern and sum up the entries.
First, we create a matrix of same format as m.mat and compare number of non-zero entries and sparsity pattern:
mstar = m.mat.CreateMatrix()
print(f"m.mat.nze = {m.mat.nze}, a.mat.nze={a.mat.nze}, mstar.nze={mstar.nze}")
m.mat.nze = 11257, a.mat.nze=11257, mstar.nze=11257
Using the vector we can build the linear combination of the a and the m matrix:
mstar.AsVector().data = m.mat.AsVector() + dt * a.mat.AsVector()
# We cannot do this:
# mstar.data = m.mat + dt * a.mat
# unsupported operand type(s) for *: 'NoneType' and 'ngsolve.la.DynamicVectorExpression'
# corresponds to M* = M + dt * A
invmstar = mstar.Inverse(freedofs=fes.FreeDofs())
We set the r.h.s. \(f = exp(-6 ((x+\frac12)^2+y^2)) - exp(-6 ((x-\frac12)^2+y^2))\)
f = LinearForm(fes)
gaussp = exp(-6*((x+0.5)*(x+0.5)+y*y))-exp(-6*((x-0.5)*(x-0.5)+y*y))
Draw(gaussp,mesh,"f", deformation=True)
f += gaussp*v*dx
f.Assemble()
<ngsolve.comp.LinearForm at 0x7fce271da8b0>
and the initial data: \(u_0 = (1-y^2)x\)
gfu = GridFunction(fes)
gfu.Set((1-y*y)*x) # note that boundary conditions remain
scene = Draw(gfu,mesh,"u")
we define a simple time loop including some visualization sampling:
def TimeStepping(invmstar, initial_cond = None, t0 = 0, tend = 2,
nsamples = 10):
if initial_cond:
gfu.Set(initial_cond)
cnt = 0; time = t0
sample_int = int(floor(tend / dt / nsamples)+1)
gfut = GridFunction(gfu.space,multidim=0)
gfut.AddMultiDimComponent(gfu.vec)
while time < tend - 0.5 * dt:
res = dt * f.vec - dt * a.mat * gfu.vec
gfu.vec.data += invmstar * res
print("\r",time,end="")
scene.Redraw()
if cnt % sample_int == 0:
gfut.AddMultiDimComponent(gfu.vec)
cnt += 1; time = cnt * dt
return gfut
%%time
gfut = TimeStepping(invmstar, (1-y*y)*x)
0
0.001
0.002
0.003
0.004
0.005
0.006
0.007
0.008
0.009000000000000001
0.01
0.011
0.012
0.013000000000000001
0.014
0.015
0.016
0.017
0.018000000000000002
0.019
0.02
0.021
0.022
0.023
0.024
0.025
0.026000000000000002
0.027
0.028
0.029
0.03
0.031
0.032
0.033
0.034
0.035
0.036000000000000004
0.037
0.038
0.039
0.04
0.041
0.042
0.043000000000000003
0.044
0.045
0.046
0.047
0.048
0.049
0.05
0.051000000000000004
0.052000000000000005
0.053
0.054
0.055
0.056
0.057
0.058
0.059000000000000004
0.06
0.061
0.062
0.063
0.064
0.065
0.066
0.067
0.068
0.069
0.07
0.07100000000000001
0.07200000000000001
0.073
0.074
0.075
0.076
0.077
0.078
0.079
0.08
0.081
0.082
0.083
0.084
0.085
0.08600000000000001
0.08700000000000001
0.088
0.089
0.09
0.091
0.092
0.093
0.094
0.095
0.096
0.097
0.098
0.099
0.1
0.101
0.10200000000000001
0.10300000000000001
0.10400000000000001
0.105
0.106
0.107
0.108
0.109
0.11
0.111
0.112
0.113
0.114
0.115
0.116
0.117
0.11800000000000001
0.11900000000000001
0.12
0.121
0.122
0.123
0.124
0.125
0.126
0.127
0.128
0.129
0.13
0.131
0.132
0.133
0.134
0.135
0.136
0.137
0.138
0.139
0.14
0.14100000000000001
0.14200000000000002
0.14300000000000002
0.14400000000000002
0.145
0.146
0.147
0.148
0.149
0.15
0.151
0.152
0.153
0.154
0.155
0.156
0.157
0.158
0.159
0.16
0.161
0.162
0.163
0.164
0.165
0.166
0.167
0.168
0.169
0.17
0.171
0.17200000000000001
0.17300000000000001
0.17400000000000002
0.17500000000000002
0.176
0.177
0.178
0.179
0.18
0.181
0.182
0.183
0.184
0.185
0.186
0.187
0.188
0.189
0.19
0.191
0.192
0.193
0.194
0.195
0.196
0.197
0.198
0.199
0.2
0.201
0.202
0.203
0.20400000000000001
0.20500000000000002
0.20600000000000002
0.20700000000000002
0.20800000000000002
0.209
0.21
0.211
0.212
0.213
0.214
0.215
0.216
0.217
0.218
0.219
0.22
0.221
0.222
0.223
0.224
0.225
0.226
0.227
0.228
0.229
0.23
0.231
0.232
0.233
0.234
0.23500000000000001
0.23600000000000002
0.23700000000000002
0.23800000000000002
0.23900000000000002
0.24
0.241
0.242
0.243
0.244
0.245
0.246
0.247
0.248
0.249
0.25
0.251
0.252
0.253
0.254
0.255
0.256
0.257
0.258
0.259
0.26
0.261
0.262
0.263
0.264
0.265
0.266
0.267
0.268
0.269
0.27
0.271
0.272
0.273
0.274
0.275
0.276
0.277
0.278
0.279
0.28
0.281
0.28200000000000003
0.28300000000000003
0.28400000000000003
0.28500000000000003
0.28600000000000003
0.28700000000000003
0.28800000000000003
0.289
0.29
0.291
0.292
0.293
0.294
0.295
0.296
0.297
0.298
0.299
0.3
0.301
0.302
0.303
0.304
0.305
0.306
0.307
0.308
0.309
0.31
0.311
0.312
0.313
0.314
0.315
0.316
0.317
0.318
0.319
0.32
0.321
0.322
0.323
0.324
0.325
0.326
0.327
0.328
0.329
0.33
0.331
0.332
0.333
0.334
0.335
0.336
0.337
0.338
0.339
0.34
0.341
0.342
0.343
0.34400000000000003
0.34500000000000003
0.34600000000000003
0.34700000000000003
0.34800000000000003
0.34900000000000003
0.35000000000000003
0.35100000000000003
0.352
0.353
0.354
0.355
0.356
0.357
0.358
0.359
0.36
0.361
0.362
0.363
0.364
0.365
0.366
0.367
0.368
0.369
0.37
0.371
0.372
0.373
0.374
0.375
0.376
0.377
0.378
0.379
0.38
0.381
0.382
0.383
0.384
0.385
0.386
0.387
0.388
0.389
0.39
0.391
0.392
0.393
0.394
0.395
0.396
0.397
0.398
0.399
0.4
0.401
0.402
0.403
0.404
0.405
0.406
0.40700000000000003
0.40800000000000003
0.40900000000000003
0.41000000000000003
0.41100000000000003
0.41200000000000003
0.41300000000000003
0.41400000000000003
0.41500000000000004
0.41600000000000004
0.417
0.418
0.419
0.42
0.421
0.422
0.423
0.424
0.425
0.426
0.427
0.428
0.429
0.43
0.431
0.432
0.433
0.434
0.435
0.436
0.437
0.438
0.439
0.44
0.441
0.442
0.443
0.444
0.445
0.446
0.447
0.448
0.449
0.45
0.451
0.452
0.453
0.454
0.455
0.456
0.457
0.458
0.459
0.46
0.461
0.462
0.463
0.464
0.465
0.466
0.467
0.468
0.46900000000000003
0.47000000000000003
0.47100000000000003
0.47200000000000003
0.47300000000000003
0.47400000000000003
0.47500000000000003
0.47600000000000003
0.47700000000000004
0.47800000000000004
0.47900000000000004
0.48
0.481
0.482
0.483
0.484
0.485
0.486
0.487
0.488
0.489
0.49
0.491
0.492
0.493
0.494
0.495
0.496
0.497
0.498
0.499
0.5
0.501
0.502
0.503
0.504
0.505
0.506
0.507
0.508
0.509
0.51
0.511
0.512
0.513
0.514
0.515
0.516
0.517
0.518
0.519
0.52
0.521
0.522
0.523
0.524
0.525
0.526
0.527
0.528
0.529
0.53
0.531
0.532
0.533
0.534
0.535
0.536
0.537
0.538
0.539
0.54
0.541
0.542
0.543
0.544
0.545
0.546
0.547
0.548
0.549
0.55
0.551
0.552
0.553
0.554
0.555
0.556
0.557
0.558
0.559
0.56
0.561
0.562
0.5630000000000001
0.5640000000000001
0.5650000000000001
0.5660000000000001
0.5670000000000001
0.5680000000000001
0.5690000000000001
0.5700000000000001
0.5710000000000001
0.5720000000000001
0.5730000000000001
0.5740000000000001
0.5750000000000001
0.5760000000000001
0.577
0.578
0.579
0.58
0.581
0.582
0.583
0.584
0.585
0.586
0.587
0.588
0.589
0.59
0.591
0.592
0.593
0.594
0.595
0.596
0.597
0.598
0.599
0.6
0.601
0.602
0.603
0.604
0.605
0.606
0.607
0.608
0.609
0.61
0.611
0.612
0.613
0.614
0.615
0.616
0.617
0.618
0.619
0.62
0.621
0.622
0.623
0.624
0.625
0.626
0.627
0.628
0.629
0.63
0.631
0.632
0.633
0.634
0.635
0.636
0.637
0.638
0.639
0.64
0.641
0.642
0.643
0.644
0.645
0.646
0.647
0.648
0.649
0.65
0.651
0.652
0.653
0.654
0.655
0.656
0.657
0.658
0.659
0.66
0.661
0.662
0.663
0.664
0.665
0.666
0.667
0.668
0.669
0.67
0.671
0.672
0.673
0.674
0.675
0.676
0.677
0.678
0.679
0.68
0.681
0.682
0.683
0.684
0.685
0.686
0.687
0.6880000000000001
0.6890000000000001
0.6900000000000001
0.6910000000000001
0.6920000000000001
0.6930000000000001
0.6940000000000001
0.6950000000000001
0.6960000000000001
0.6970000000000001
0.6980000000000001
0.6990000000000001
0.7000000000000001
0.7010000000000001
0.7020000000000001
0.7030000000000001
0.704
0.705
0.706
0.707
0.708
0.709
0.71
0.711
0.712
0.713
0.714
0.715
0.716
0.717
0.718
0.719
0.72
0.721
0.722
0.723
0.724
0.725
0.726
0.727
0.728
0.729
0.73
0.731
0.732
0.733
0.734
0.735
0.736
0.737
0.738
0.739
0.74
0.741
0.742
0.743
0.744
0.745
0.746
0.747
0.748
0.749
0.75
0.751
0.752
0.753
0.754
0.755
0.756
0.757
0.758
0.759
0.76
0.761
0.762
0.763
0.764
0.765
0.766
0.767
0.768
0.769
0.77
0.771
0.772
0.773
0.774
0.775
0.776
0.777
0.778
0.779
0.78
0.781
0.782
0.783
0.784
0.785
0.786
0.787
0.788
0.789
0.79
0.791
0.792
0.793
0.794
0.795
0.796
0.797
0.798
0.799
0.8
0.801
0.802
0.803
0.804
0.805
0.806
0.807
0.808
0.809
0.81
0.811
0.812
0.8130000000000001
0.8140000000000001
0.8150000000000001
0.8160000000000001
0.8170000000000001
0.8180000000000001
0.8190000000000001
0.8200000000000001
0.8210000000000001
0.8220000000000001
0.8230000000000001
0.8240000000000001
0.8250000000000001
0.8260000000000001
0.8270000000000001
0.8280000000000001
0.8290000000000001
0.8300000000000001
0.8310000000000001
0.8320000000000001
0.833
0.834
0.835
0.836
0.837
0.838
0.839
0.84
0.841
0.842
0.843
0.844
0.845
0.846
0.847
0.848
0.849
0.85
0.851
0.852
0.853
0.854
0.855
0.856
0.857
0.858
0.859
0.86
0.861
0.862
0.863
0.864
0.865
0.866
0.867
0.868
0.869
0.87
0.871
0.872
0.873
0.874
0.875
0.876
0.877
0.878
0.879
0.88
0.881
0.882
0.883
0.884
0.885
0.886
0.887
0.888
0.889
0.89
0.891
0.892
0.893
0.894
0.895
0.896
0.897
0.898
0.899
0.9
0.901
0.902
0.903
0.904
0.905
0.906
0.907
0.908
0.909
0.91
0.911
0.912
0.913
0.914
0.915
0.916
0.917
0.918
0.919
0.92
0.921
0.922
0.923
0.924
0.925
0.926
0.927
0.928
0.929
0.93
0.931
0.932
0.933
0.934
0.935
0.936
0.937
0.9380000000000001
0.9390000000000001
0.9400000000000001
0.9410000000000001
0.9420000000000001
0.9430000000000001
0.9440000000000001
0.9450000000000001
0.9460000000000001
0.9470000000000001
0.9480000000000001
0.9490000000000001
0.9500000000000001
0.9510000000000001
0.9520000000000001
0.9530000000000001
0.9540000000000001
0.9550000000000001
0.9560000000000001
0.9570000000000001
0.9580000000000001
0.9590000000000001
0.96
0.961
0.962
0.963
0.964
0.965
0.966
0.967
0.968
0.969
0.97
0.971
0.972
0.973
0.974
0.975
0.976
0.977
0.978
0.979
0.98
0.981
0.982
0.983
0.984
0.985
0.986
0.987
0.988
0.989
0.99
0.991
0.992
0.993
0.994
0.995
0.996
0.997
0.998
0.999
1.0
1.0010000000000001
1.002
1.0030000000000001
1.004
1.0050000000000001
1.006
1.0070000000000001
1.008
1.0090000000000001
1.01
1.0110000000000001
1.012
1.0130000000000001
1.014
1.0150000000000001
1.016
1.0170000000000001
1.018
1.0190000000000001
1.02
1.0210000000000001
1.022
1.0230000000000001
1.024
1.025
1.026
1.027
1.028
1.029
1.03
1.031
1.032
1.033
1.034
1.035
1.036
1.037
1.038
1.039
1.04
1.041
1.042
1.043
1.044
1.045
1.046
1.047
1.048
1.049
1.05
1.051
1.052
1.053
1.054
1.055
1.056
1.057
1.058
1.059
1.06
1.061
1.062
1.063
1.064
1.065
1.066
1.067
1.068
1.069
1.07
1.071
1.072
1.073
1.074
1.075
1.076
1.077
1.078
1.079
1.08
1.081
1.082
1.083
1.084
1.085
1.086
1.087
1.088
1.089
1.09
1.091
1.092
1.093
1.094
1.095
1.096
1.097
1.098
1.099
1.1
1.101
1.102
1.103
1.104
1.105
1.106
1.107
1.108
1.109
1.11
1.111
1.112
1.113
1.114
1.115
1.116
1.117
1.118
1.119
1.12
1.121
1.122
1.123
1.124
1.125
1.1260000000000001
1.127
1.1280000000000001
1.129
1.1300000000000001
1.131
1.1320000000000001
1.133
1.1340000000000001
1.135
1.1360000000000001
1.137
1.1380000000000001
1.139
1.1400000000000001
1.141
1.1420000000000001
1.143
1.1440000000000001
1.145
1.1460000000000001
1.147
1.1480000000000001
1.149
1.1500000000000001
1.151
1.1520000000000001
1.153
1.154
1.155
1.156
1.157
1.158
1.159
1.16
1.161
1.162
1.163
1.164
1.165
1.166
1.167
1.168
1.169
1.17
1.171
1.172
1.173
1.174
1.175
1.176
1.177
1.178
1.179
1.18
1.181
1.182
1.183
1.184
1.185
1.186
1.187
1.188
1.189
1.19
1.191
1.192
1.193
1.194
1.195
1.196
1.197
1.198
1.199
1.2
1.201
1.202
1.203
1.204
1.205
1.206
1.207
1.208
1.209
1.21
1.211
1.212
1.213
1.214
1.215
1.216
1.217
1.218
1.219
1.22
1.221
1.222
1.223
1.224
1.225
1.226
1.227
1.228
1.229
1.23
1.231
1.232
1.233
1.234
1.235
1.236
1.237
1.238
1.239
1.24
1.241
1.242
1.243
1.244
1.245
1.246
1.247
1.248
1.249
1.25
1.2510000000000001
1.252
1.2530000000000001
1.254
1.2550000000000001
1.256
1.2570000000000001
1.258
1.2590000000000001
1.26
1.2610000000000001
1.262
1.2630000000000001
1.264
1.2650000000000001
1.266
1.2670000000000001
1.268
1.2690000000000001
1.27
1.2710000000000001
1.272
1.2730000000000001
1.274
1.2750000000000001
1.276
1.2770000000000001
1.278
1.2790000000000001
1.28
1.281
1.282
1.283
1.284
1.285
1.286
1.287
1.288
1.289
1.29
1.291
1.292
1.293
1.294
1.295
1.296
1.297
1.298
1.299
1.3
1.301
1.302
1.303
1.304
1.305
1.306
1.307
1.308
1.309
1.31
1.311
1.312
1.313
1.314
1.315
1.316
1.317
1.318
1.319
1.32
1.321
1.322
1.323
1.324
1.325
1.326
1.327
1.328
1.329
1.33
1.331
1.332
1.333
1.334
1.335
1.336
1.337
1.338
1.339
1.34
1.341
1.342
1.343
1.344
1.345
1.346
1.347
1.348
1.349
1.35
1.351
1.352
1.353
1.354
1.355
1.356
1.357
1.358
1.359
1.36
1.361
1.362
1.363
1.364
1.365
1.366
1.367
1.368
1.369
1.37
1.371
1.372
1.373
1.374
1.375
1.3760000000000001
1.377
1.3780000000000001
1.379
1.3800000000000001
1.381
1.3820000000000001
1.383
1.3840000000000001
1.385
1.3860000000000001
1.387
1.3880000000000001
1.389
1.3900000000000001
1.391
1.3920000000000001
1.393
1.3940000000000001
1.395
1.3960000000000001
1.397
1.3980000000000001
1.399
1.4000000000000001
1.401
1.4020000000000001
1.403
1.4040000000000001
1.405
1.4060000000000001
1.407
1.408
1.409
1.41
1.411
1.412
1.413
1.414
1.415
1.416
1.417
1.418
1.419
1.42
1.421
1.422
1.423
1.424
1.425
1.426
1.427
1.428
1.429
1.43
1.431
1.432
1.433
1.434
1.435
1.436
1.437
1.438
1.439
1.44
1.441
1.442
1.443
1.444
1.445
1.446
1.447
1.448
1.449
1.45
1.451
1.452
1.453
1.454
1.455
1.456
1.457
1.458
1.459
1.46
1.461
1.462
1.463
1.464
1.465
1.466
1.467
1.468
1.469
1.47
1.471
1.472
1.473
1.474
1.475
1.476
1.477
1.478
1.479
1.48
1.481
1.482
1.483
1.484
1.485
1.486
1.487
1.488
1.489
1.49
1.491
1.492
1.493
1.494
1.495
1.496
1.497
1.498
1.499
1.5
1.5010000000000001
1.502
1.5030000000000001
1.504
1.5050000000000001
1.506
1.5070000000000001
1.508
1.5090000000000001
1.51
1.5110000000000001
1.512
1.5130000000000001
1.514
1.5150000000000001
1.516
1.5170000000000001
1.518
1.5190000000000001
1.52
1.5210000000000001
1.522
1.5230000000000001
1.524
1.5250000000000001
1.526
1.5270000000000001
1.528
1.5290000000000001
1.53
1.5310000000000001
1.532
1.5330000000000001
1.534
1.5350000000000001
1.536
1.537
1.538
1.539
1.54
1.541
1.542
1.543
1.544
1.545
1.546
1.547
1.548
1.549
1.55
1.551
1.552
1.553
1.554
1.555
1.556
1.557
1.558
1.559
1.56
1.561
1.562
1.563
1.564
1.565
1.566
1.567
1.568
1.569
1.57
1.571
1.572
1.573
1.574
1.575
1.576
1.577
1.578
1.579
1.58
1.581
1.582
1.583
1.584
1.585
1.586
1.587
1.588
1.589
1.59
1.591
1.592
1.593
1.594
1.595
1.596
1.597
1.598
1.599
1.6
1.601
1.602
1.603
1.604
1.605
1.606
1.607
1.608
1.609
1.61
1.611
1.612
1.613
1.614
1.615
1.616
1.617
1.618
1.619
1.62
1.621
1.622
1.623
1.624
1.625
1.6260000000000001
1.627
1.6280000000000001
1.629
1.6300000000000001
1.631
1.6320000000000001
1.633
1.6340000000000001
1.635
1.6360000000000001
1.637
1.6380000000000001
1.639
1.6400000000000001
1.641
1.6420000000000001
1.643
1.6440000000000001
1.645
1.6460000000000001
1.647
1.6480000000000001
1.649
1.6500000000000001
1.651
1.6520000000000001
1.653
1.6540000000000001
1.655
1.6560000000000001
1.657
1.6580000000000001
1.659
1.6600000000000001
1.661
1.6620000000000001
1.663
1.6640000000000001
1.665
1.666
1.667
1.668
1.669
1.67
1.671
1.672
1.673
1.674
1.675
1.676
1.677
1.678
1.679
1.68
1.681
1.682
1.683
1.684
1.685
1.686
1.687
1.688
1.689
1.69
1.691
1.692
1.693
1.694
1.695
1.696
1.697
1.698
1.699
1.7
1.701
1.702
1.703
1.704
1.705
1.706
1.707
1.708
1.709
1.71
1.711
1.712
1.713
1.714
1.715
1.716
1.717
1.718
1.719
1.72
1.721
1.722
1.723
1.724
1.725
1.726
1.727
1.728
1.729
1.73
1.731
1.732
1.733
1.734
1.735
1.736
1.737
1.738
1.739
1.74
1.741
1.742
1.743
1.744
1.745
1.746
1.747
1.748
1.749
1.75
1.7510000000000001
1.752
1.7530000000000001
1.754
1.7550000000000001
1.756
1.7570000000000001
1.758
1.7590000000000001
1.76
1.7610000000000001
1.762
1.7630000000000001
1.764
1.7650000000000001
1.766
1.7670000000000001
1.768
1.7690000000000001
1.77
1.7710000000000001
1.772
1.7730000000000001
1.774
1.7750000000000001
1.776
1.7770000000000001
1.778
1.7790000000000001
1.78
1.7810000000000001
1.782
1.7830000000000001
1.784
1.7850000000000001
1.786
1.7870000000000001
1.788
1.7890000000000001
1.79
1.7910000000000001
1.792
1.793
1.794
1.795
1.796
1.797
1.798
1.799
1.8
1.801
1.802
1.803
1.804
1.805
1.806
1.807
1.808
1.809
1.81
1.811
1.812
1.813
1.814
1.815
1.816
1.817
1.818
1.819
1.82
1.821
1.822
1.823
1.824
1.825
1.826
1.827
1.828
1.829
1.83
1.831
1.832
1.833
1.834
1.835
1.836
1.837
1.838
1.839
1.84
1.841
1.842
1.843
1.844
1.845
1.846
1.847
1.848
1.849
1.85
1.851
1.852
1.853
1.854
1.855
1.856
1.857
1.858
1.859
1.86
1.861
1.862
1.863
1.864
1.865
1.866
1.867
1.868
1.869
1.87
1.871
1.872
1.873
1.874
1.875
1.8760000000000001
1.877
1.8780000000000001
1.879
1.8800000000000001
1.881
1.8820000000000001
1.883
1.8840000000000001
1.885
1.8860000000000001
1.887
1.8880000000000001
1.889
1.8900000000000001
1.891
1.8920000000000001
1.893
1.8940000000000001
1.895
1.8960000000000001
1.897
1.8980000000000001
1.899
1.9000000000000001
1.901
1.9020000000000001
1.903
1.9040000000000001
1.905
1.9060000000000001
1.907
1.9080000000000001
1.909
1.9100000000000001
1.911
1.9120000000000001
1.913
1.9140000000000001
1.915
1.9160000000000001
1.917
1.9180000000000001
1.919
1.92
1.921
1.922
1.923
1.924
1.925
1.926
1.927
1.928
1.929
1.93
1.931
1.932
1.933
1.934
1.935
1.936
1.937
1.938
1.939
1.94
1.941
1.942
1.943
1.944
1.945
1.946
1.947
1.948
1.949
1.95
1.951
1.952
1.953
1.954
1.955
1.956
1.957
1.958
1.959
1.96
1.961
1.962
1.963
1.964
1.965
1.966
1.967
1.968
1.969
1.97
1.971
1.972
1.973
1.974
1.975
1.976
1.977
1.978
1.979
1.98
1.981
1.982
1.983
1.984
1.985
1.986
1.987
1.988
1.989
1.99
1.991
1.992
1.993
1.994
1.995
1.996
1.997
1.998
1.999CPU times: user 7.57 s, sys: 586 ms, total: 8.16 s
Wall time: 5.24 s
1.999CPU times: user 7.05 s, sys: 630 ms, total: 7.68 s Wall time: 6.57 s
Draw(gfut, mesh, interpolate_multidim=True, animate=True)
BaseWebGuiScene
3.4.2. Using iterative solvers#
For a factorization of \(M^\ast\) (and \({M^\ast}^{-1}\)) we required a sparse matrix \(M^\ast\)
To store \(M^\ast\) as a sparse matrix requires new storage (and same memory layout of \(A\) and \(M\))
For iterative solvers we only require the matrix (and preconditioner) applications and it suffices to have \(M^\ast\) available as a linear operator
mstar_alt = m.mat + dt * a.mat
has no storage but defines the operator action: sum of two matrix-vector multiplications
iterative solver version (with Jacobi preconditining):
** does not perform well for this problem, just for explanation **
mstar_alt = m.mat + dt * a.mat
precond = preconditioners.Local
preflags ={"GS":False}
prea = precond(a, **preflags)
prem = precond(m, **preflags)
premstar_alt = prem.mat + dt * prea.mat
print(premstar_alt)
Sum of
Scale a = 1
Print base-matrix
Scale b = 1
Scale with 0.001:
Print base-matrix
Now, replace the action of the inverse Matrix from the previous script with a solution of a conjugate gradient method:
from ngsolve.krylovspace import CGSolver
invmstar_alt = CGSolver(mstar_alt, premstar_alt, tol=1e-8, plotrates=False, maxiter=200)
Now, we can repeat the time stepping. As in 2D direct solvers are quite efficient, this simple preconditioned solver can hardly compete. We hence only do a few time steps:
%%time
gfut_a1 = TimeStepping(invmstar_alt, (1-y*y)*x )
0
0.001
0.002
0.003
0.004
0.005
0.006
0.007
0.008
0.009000000000000001
0.01
0.011
0.012
0.013000000000000001
0.014
0.015
0.016
0.017
0.018000000000000002
0.019
0.02
0.021
0.022
0.023
0.024
0.025
0.026000000000000002
0.027
0.028
0.029
0.03
0.031
0.032
0.033
0.034
0.035
0.036000000000000004
0.037
0.038
0.039
0.04
0.041
0.042
0.043000000000000003
0.044
0.045
0.046
0.047
0.048
0.049
0.05
0.051000000000000004
0.052000000000000005
0.053
0.054
0.055
0.056
0.057
0.058
0.059000000000000004
0.06
0.061
0.062
0.063
0.064
0.065
0.066
0.067
0.068
0.069
0.07
0.07100000000000001
0.07200000000000001
0.073
0.074
0.075
0.076
0.077
0.078
0.079
0.08
0.081
0.082
0.083
0.084
0.085
0.08600000000000001
0.08700000000000001
0.088
0.089
0.09
0.091
0.092
0.093
0.094
0.095
0.096
0.097
0.098
0.099
0.1
0.101
0.10200000000000001
0.10300000000000001
0.10400000000000001
0.105
0.106
0.107
0.108
0.109
0.11
0.111
0.112
0.113
0.114
0.115
0.116
0.117
0.11800000000000001
0.11900000000000001
0.12
0.121
0.122
0.123
0.124
0.125
0.126
0.127
0.128
0.129
0.13
0.131
0.132
0.133
0.134
0.135
0.136
0.137
0.138
0.139
0.14
0.14100000000000001
0.14200000000000002
0.14300000000000002
0.14400000000000002
0.145
0.146
0.147
0.148
0.149
0.15
0.151
0.152
0.153
0.154
0.155
0.156
0.157
0.158
0.159
0.16
0.161
0.162
0.163
0.164
0.165
0.166
0.167
0.168
0.169
0.17
0.171
0.17200000000000001
0.17300000000000001
0.17400000000000002
0.17500000000000002
0.176
0.177
0.178
0.179
0.18
0.181
0.182
0.183
0.184
0.185
0.186
0.187
0.188
0.189
0.19
0.191
0.192
0.193
0.194
0.195
0.196
0.197
0.198
0.199
0.2
0.201
0.202
0.203
0.20400000000000001
0.20500000000000002
0.20600000000000002
0.20700000000000002
0.20800000000000002
0.209
0.21
0.211
0.212
0.213
0.214
0.215
0.216
0.217
0.218
0.219
0.22
0.221
0.222
0.223
0.224
0.225
0.226
0.227
0.228
0.229
0.23
0.231
0.232
0.233
0.234
0.23500000000000001
0.23600000000000002
0.23700000000000002
0.23800000000000002
0.23900000000000002
0.24
0.241
0.242
0.243
0.244
0.245
0.246
0.247
0.248
0.249
0.25
0.251
0.252
0.253
0.254
0.255
0.256
0.257
0.258
0.259
0.26
0.261
0.262
0.263
0.264
0.265
0.266
0.267
0.268
0.269
0.27
0.271
0.272
0.273
0.274
0.275
0.276
0.277
0.278
0.279
0.28
0.281
0.28200000000000003
0.28300000000000003
0.28400000000000003
0.28500000000000003
0.28600000000000003
0.28700000000000003
0.28800000000000003
0.289
0.29
0.291
0.292
0.293
0.294
0.295
0.296
0.297
0.298
0.299
0.3
0.301
0.302
0.303
0.304
0.305
0.306
0.307
0.308
0.309
0.31
0.311
0.312
0.313
0.314
0.315
0.316
0.317
0.318
0.319
0.32
0.321
0.322
0.323
0.324
0.325
0.326
0.327
0.328
0.329
0.33
0.331
0.332
0.333
0.334
0.335
0.336
0.337
0.338
0.339
0.34
0.341
0.342
0.343
0.34400000000000003
0.34500000000000003
0.34600000000000003
0.34700000000000003
0.34800000000000003
0.34900000000000003
0.35000000000000003
0.35100000000000003
0.352
0.353
0.354
0.355
0.356
0.357
0.358
0.359
0.36
0.361
0.362
0.363
0.364
0.365
0.366
0.367
0.368
0.369
0.37
0.371
0.372
0.373
0.374
0.375
0.376
0.377
0.378
0.379
0.38
0.381
0.382
0.383
0.384
0.385
0.386
0.387
0.388
0.389
0.39
0.391
0.392
0.393
0.394
0.395
0.396
0.397
0.398
0.399
0.4
0.401
0.402
0.403
0.404
0.405
0.406
0.40700000000000003
0.40800000000000003
0.40900000000000003
0.41000000000000003
0.41100000000000003
0.41200000000000003
0.41300000000000003
0.41400000000000003
0.41500000000000004
0.41600000000000004
0.417
0.418
0.419
0.42
0.421
0.422
0.423
0.424
0.425
0.426
0.427
0.428
0.429
0.43
0.431
0.432
0.433
0.434
0.435
0.436
0.437
0.438
0.439
0.44
0.441
0.442
0.443
0.444
0.445
0.446
0.447
0.448
0.449
0.45
0.451
0.452
0.453
0.454
0.455
0.456
0.457
0.458
0.459
0.46
0.461
0.462
0.463
0.464
0.465
0.466
0.467
0.468
0.46900000000000003
0.47000000000000003
0.47100000000000003
0.47200000000000003
0.47300000000000003
0.47400000000000003
0.47500000000000003
0.47600000000000003
0.47700000000000004
0.47800000000000004
0.47900000000000004
0.48
0.481
0.482
0.483
0.484
0.485
0.486
0.487
0.488
0.489
0.49
0.491
0.492
0.493
0.494
0.495
0.496
0.497
0.498
0.499
0.5
0.501
0.502
0.503
0.504
0.505
0.506
0.507
0.508
0.509
0.51
0.511
0.512
0.513
0.514
0.515
0.516
0.517
0.518
0.519
0.52
0.521
0.522
0.523
0.524
0.525
0.526
0.527
0.528
0.529
0.53
0.531
0.532
0.533
0.534
0.535
0.536
0.537
0.538
0.539
0.54
0.541
0.542
0.543
0.544
0.545
0.546
0.547
0.548
0.549
0.55
0.551
0.552
0.553
0.554
0.555
0.556
0.557
0.558
0.559
0.56
0.561
0.562
0.5630000000000001
0.5640000000000001
0.5650000000000001
0.5660000000000001
0.5670000000000001
0.5680000000000001
0.5690000000000001
0.5700000000000001
0.5710000000000001
0.5720000000000001
0.5730000000000001
0.5740000000000001
0.5750000000000001
0.5760000000000001
0.577
0.578
0.579
0.58
0.581
0.582
0.583
0.584
0.585
0.586
0.587
0.588
0.589
0.59
0.591
0.592
0.593
0.594
0.595
0.596
0.597
0.598
0.599
0.6
0.601
0.602
0.603
0.604
0.605
0.606
0.607
0.608
0.609
0.61
0.611
0.612
0.613
0.614
0.615
0.616
0.617
0.618
0.619
0.62
0.621
0.622
0.623
0.624
0.625
0.626
0.627
0.628
0.629
0.63
0.631
0.632
0.633
0.634
0.635
0.636
0.637
0.638
0.639
0.64
0.641
0.642
0.643
0.644
0.645
0.646
0.647
0.648
0.649
0.65
0.651
0.652
0.653
0.654
0.655
0.656
0.657
0.658
0.659
0.66
0.661
0.662
0.663
0.664
0.665
0.666
0.667
0.668
0.669
0.67
0.671
0.672
0.673
0.674
0.675
0.676
0.677
0.678
0.679
0.68
0.681
0.682
0.683
0.684
0.685
0.686
0.687
0.6880000000000001
0.6890000000000001
0.6900000000000001
0.6910000000000001
0.6920000000000001
0.6930000000000001
0.6940000000000001
0.6950000000000001
0.6960000000000001
0.6970000000000001
0.6980000000000001
0.6990000000000001
0.7000000000000001
0.7010000000000001
0.7020000000000001
0.7030000000000001
0.704
0.705
0.706
0.707
0.708
0.709
0.71
0.711
0.712
0.713
0.714
0.715
0.716
0.717
0.718
0.719
0.72
0.721
0.722
0.723
0.724
0.725
0.726
0.727
0.728
0.729
0.73
0.731
0.732
0.733
0.734
0.735
0.736
0.737
0.738
0.739
0.74
0.741
0.742
0.743
0.744
0.745
0.746
0.747
0.748
0.749
0.75
0.751
0.752
0.753
0.754
0.755
0.756
0.757
0.758
0.759
0.76
0.761
0.762
0.763
0.764
0.765
0.766
0.767
0.768
0.769
0.77
0.771
0.772
0.773
0.774
0.775
0.776
0.777
0.778
0.779
0.78
0.781
0.782
0.783
0.784
0.785
0.786
0.787
0.788
0.789
0.79
0.791
0.792
0.793
0.794
0.795
0.796
0.797
0.798
0.799
0.8
0.801
0.802
0.803
0.804
0.805
0.806
0.807
0.808
0.809
0.81
0.811
0.812
0.8130000000000001
0.8140000000000001
0.8150000000000001
0.8160000000000001
0.8170000000000001
0.8180000000000001
0.8190000000000001
0.8200000000000001
0.8210000000000001
0.8220000000000001
0.8230000000000001
0.8240000000000001
0.8250000000000001
0.8260000000000001
0.8270000000000001
0.8280000000000001
0.8290000000000001
0.8300000000000001
0.8310000000000001
0.8320000000000001
0.833
0.834
0.835
0.836
0.837
0.838
0.839
0.84
0.841
0.842
0.843
0.844
0.845
0.846
0.847
0.848
0.849
0.85
0.851
0.852
0.853
0.854
0.855
0.856
0.857
0.858
0.859
0.86
0.861
0.862
0.863
0.864
0.865
0.866
0.867
0.868
0.869
0.87
0.871
0.872
0.873
0.874
0.875
0.876
0.877
0.878
0.879
0.88
0.881
0.882
0.883
0.884
0.885
0.886
0.887
0.888
0.889
0.89
0.891
0.892
0.893
0.894
0.895
0.896
0.897
0.898
0.899
0.9
0.901
0.902
0.903
0.904
0.905
0.906
0.907
0.908
0.909
0.91
0.911
0.912
0.913
0.914
0.915
0.916
0.917
0.918
0.919
0.92
0.921
0.922
0.923
0.924
0.925
0.926
0.927
0.928
0.929
0.93
0.931
0.932
0.933
0.934
0.935
0.936
0.937
0.9380000000000001
0.9390000000000001
0.9400000000000001
0.9410000000000001
0.9420000000000001
0.9430000000000001
0.9440000000000001
0.9450000000000001
0.9460000000000001
0.9470000000000001
0.9480000000000001
0.9490000000000001
0.9500000000000001
0.9510000000000001
0.9520000000000001
0.9530000000000001
0.9540000000000001
0.9550000000000001
0.9560000000000001
0.9570000000000001
0.9580000000000001
0.9590000000000001
0.96
0.961
0.962
0.963
0.964
0.965
0.966
0.967
0.968
0.969
0.97
0.971
0.972
0.973
0.974
0.975
0.976
0.977
0.978
0.979
0.98
0.981
0.982
0.983
0.984
0.985
0.986
0.987
0.988
0.989
0.99
0.991
0.992
0.993
0.994
0.995
0.996
0.997
0.998
0.999
1.0
1.0010000000000001
1.002
1.0030000000000001
1.004
1.0050000000000001
1.006
1.0070000000000001
1.008
1.0090000000000001
1.01
1.0110000000000001
1.012
1.0130000000000001
1.014
1.0150000000000001
1.016
1.0170000000000001
1.018
1.0190000000000001
1.02
1.0210000000000001
1.022
1.0230000000000001
1.024
1.025
1.026
1.027
1.028
1.029
1.03
1.031
1.032
1.033
1.034
1.035
1.036
1.037
1.038
1.039
1.04
1.041
1.042
1.043
1.044
1.045
1.046
1.047
1.048
1.049
1.05
1.051
1.052
1.053
1.054
1.055
1.056
1.057
1.058
1.059
1.06
1.061
1.062
1.063
1.064
1.065
1.066
1.067
1.068
1.069
1.07
1.071
1.072
1.073
1.074
1.075
1.076
1.077
1.078
1.079
1.08
1.081
1.082
1.083
1.084
1.085
1.086
1.087
1.088
1.089
1.09
1.091
1.092
1.093
1.094
1.095
1.096
1.097
1.098
1.099
1.1
1.101
1.102
1.103
1.104
1.105
1.106
1.107
1.108
1.109
1.11
1.111
1.112
1.113
1.114
1.115
1.116
1.117
1.118
1.119
1.12
1.121
1.122
1.123
1.124
1.125
1.1260000000000001
1.127
1.1280000000000001
1.129
1.1300000000000001
1.131
1.1320000000000001
1.133
1.1340000000000001
1.135
1.1360000000000001
1.137
1.1380000000000001
1.139
1.1400000000000001
1.141
1.1420000000000001
1.143
1.1440000000000001
1.145
1.1460000000000001
1.147
1.1480000000000001
1.149
1.1500000000000001
1.151
1.1520000000000001
1.153
1.154
1.155
1.156
1.157
1.158
1.159
1.16
1.161
1.162
1.163
1.164
1.165
1.166
1.167
1.168
1.169
1.17
1.171
1.172
1.173
1.174
1.175
1.176
1.177
1.178
1.179
1.18
1.181
1.182
1.183
1.184
1.185
1.186
1.187
1.188
1.189
1.19
1.191
1.192
1.193
1.194
1.195
1.196
1.197
1.198
1.199
1.2
1.201
1.202
1.203
1.204
1.205
1.206
1.207
1.208
1.209
1.21
1.211
1.212
1.213
1.214
1.215
1.216
1.217
1.218
1.219
1.22
1.221
1.222
1.223
1.224
1.225
1.226
1.227
1.228
1.229
1.23
1.231
1.232
1.233
1.234
1.235
1.236
1.237
1.238
1.239
1.24
1.241
1.242
1.243
1.244
1.245
1.246
1.247
1.248
1.249
1.25
1.2510000000000001
1.252
1.2530000000000001
1.254
1.2550000000000001
1.256
1.2570000000000001
1.258
1.2590000000000001
1.26
1.2610000000000001
1.262
1.2630000000000001
1.264
1.2650000000000001
1.266
1.2670000000000001
1.268
1.2690000000000001
1.27
1.2710000000000001
1.272
1.2730000000000001
1.274
1.2750000000000001
1.276
1.2770000000000001
1.278
1.2790000000000001
1.28
1.281
1.282
1.283
1.284
1.285
1.286
1.287
1.288
1.289
1.29
1.291
1.292
1.293
1.294
1.295
1.296
1.297
1.298
1.299
1.3
1.301
1.302
1.303
1.304
1.305
1.306
1.307
1.308
1.309
1.31
1.311
1.312
1.313
1.314
1.315
1.316
1.317
1.318
1.319
1.32
1.321
1.322
1.323
1.324
1.325
1.326
1.327
1.328
1.329
1.33
1.331
1.332
1.333
1.334
1.335
1.336
1.337
1.338
1.339
1.34
1.341
1.342
1.343
1.344
1.345
1.346
1.347
1.348
1.349
1.35
1.351
1.352
1.353
1.354
1.355
1.356
1.357
1.358
1.359
1.36
1.361
1.362
1.363
1.364
1.365
1.366
1.367
1.368
1.369
1.37
1.371
1.372
1.373
1.374
1.375
1.3760000000000001
1.377
1.3780000000000001
1.379
1.3800000000000001
1.381
1.3820000000000001
1.383
1.3840000000000001
1.385
1.3860000000000001
1.387
1.3880000000000001
1.389
1.3900000000000001
1.391
1.3920000000000001
1.393
1.3940000000000001
1.395
1.3960000000000001
1.397
1.3980000000000001
1.399
1.4000000000000001
1.401
1.4020000000000001
1.403
1.4040000000000001
1.405
1.4060000000000001
1.407
1.408
1.409
1.41
1.411
1.412
1.413
1.414
1.415
1.416
1.417
1.418
1.419
1.42
1.421
1.422
1.423
1.424
1.425
1.426
1.427
1.428
1.429
1.43
1.431
1.432
1.433
1.434
1.435
1.436
1.437
1.438
1.439
1.44
1.441
1.442
1.443
1.444
1.445
1.446
1.447
1.448
1.449
1.45
1.451
1.452
1.453
1.454
1.455
1.456
1.457
1.458
1.459
1.46
1.461
1.462
1.463
1.464
1.465
1.466
1.467
1.468
1.469
1.47
1.471
1.472
1.473
1.474
1.475
1.476
1.477
1.478
1.479
1.48
1.481
1.482
1.483
1.484
1.485
1.486
1.487
1.488
1.489
1.49
1.491
1.492
1.493
1.494
1.495
1.496
1.497
1.498
1.499
1.5
1.5010000000000001
1.502
1.5030000000000001
1.504
1.5050000000000001
1.506
1.5070000000000001
1.508
1.5090000000000001
1.51
1.5110000000000001
1.512
1.5130000000000001
1.514
1.5150000000000001
1.516
1.5170000000000001
1.518
1.5190000000000001
1.52
1.5210000000000001
1.522
1.5230000000000001
1.524
1.5250000000000001
1.526
1.5270000000000001
1.528
1.5290000000000001
1.53
1.5310000000000001
1.532
1.5330000000000001
1.534
1.5350000000000001
1.536
1.537
1.538
1.539
1.54
1.541
1.542
1.543
1.544
1.545
1.546
1.547
1.548
1.549
1.55
1.551
1.552
1.553
1.554
1.555
1.556
1.557
1.558
1.559
1.56
1.561
1.562
1.563
1.564
1.565
1.566
1.567
1.568
1.569
1.57
1.571
1.572
1.573
1.574
1.575
1.576
1.577
1.578
1.579
1.58
1.581
1.582
1.583
1.584
1.585
1.586
1.587
1.588
1.589
1.59
1.591
1.592
1.593
1.594
1.595
1.596
1.597
1.598
1.599
1.6
1.601
1.602
1.603
1.604
1.605
1.606
1.607
1.608
1.609
1.61
1.611
1.612
1.613
1.614
1.615
1.616
1.617
1.618
1.619
1.62
1.621
1.622
1.623
1.624
1.625
1.6260000000000001
1.627
1.6280000000000001
1.629
1.6300000000000001
1.631
1.6320000000000001
1.633
1.6340000000000001
1.635
1.6360000000000001
1.637
1.6380000000000001
1.639
1.6400000000000001
1.641
1.6420000000000001
1.643
1.6440000000000001
1.645
1.6460000000000001
1.647
1.6480000000000001
1.649
1.6500000000000001
1.651
1.6520000000000001
1.653
1.6540000000000001
1.655
1.6560000000000001
1.657
1.6580000000000001
1.659
1.6600000000000001
1.661
1.6620000000000001
1.663
1.6640000000000001
1.665
1.666
1.667
1.668
1.669
1.67
1.671
1.672
1.673
1.674
1.675
1.676
1.677
1.678
1.679
1.68
1.681
1.682
1.683
1.684
1.685
1.686
1.687
1.688
1.689
1.69
1.691
1.692
1.693
1.694
1.695
1.696
1.697
1.698
1.699
1.7
1.701
1.702
1.703
1.704
1.705
1.706
1.707
1.708
1.709
1.71
1.711
1.712
1.713
1.714
1.715
1.716
1.717
1.718
1.719
1.72
1.721
1.722
1.723
1.724
1.725
1.726
1.727
1.728
1.729
1.73
1.731
1.732
1.733
1.734
1.735
1.736
1.737
1.738
1.739
1.74
1.741
1.742
1.743
1.744
1.745
1.746
1.747
1.748
1.749
1.75
1.7510000000000001
1.752
1.7530000000000001
1.754
1.7550000000000001
1.756
1.7570000000000001
1.758
1.7590000000000001
1.76
1.7610000000000001
1.762
1.7630000000000001
1.764
1.7650000000000001
1.766
1.7670000000000001
1.768
1.7690000000000001
1.77
1.7710000000000001
1.772
1.7730000000000001
1.774
1.7750000000000001
1.776
1.7770000000000001
1.778
1.7790000000000001
1.78
1.7810000000000001
1.782
1.7830000000000001
1.784
1.7850000000000001
1.786
1.7870000000000001
1.788
1.7890000000000001
1.79
1.7910000000000001
1.792
1.793
1.794
1.795
1.796
1.797
1.798
1.799
1.8
1.801
1.802
1.803
1.804
1.805
1.806
1.807
1.808
1.809
1.81
1.811
1.812
1.813
1.814
1.815
1.816
1.817
1.818
1.819
1.82
1.821
1.822
1.823
1.824
1.825
1.826
1.827
1.828
1.829
1.83
1.831
1.832
1.833
1.834
1.835
1.836
1.837
1.838
1.839
1.84
1.841
1.842
1.843
1.844
1.845
1.846
1.847
1.848
1.849
1.85
1.851
1.852
1.853
1.854
1.855
1.856
1.857
1.858
1.859
1.86
1.861
1.862
1.863
1.864
1.865
1.866
1.867
1.868
1.869
1.87
1.871
1.872
1.873
1.874
1.875
1.8760000000000001
1.877
1.8780000000000001
1.879
1.8800000000000001
1.881
1.8820000000000001
1.883
1.8840000000000001
1.885
1.8860000000000001
1.887
1.8880000000000001
1.889
1.8900000000000001
1.891
1.8920000000000001
1.893
1.8940000000000001
1.895
1.8960000000000001
1.897
1.8980000000000001
1.899
1.9000000000000001
1.901
1.9020000000000001
1.903
1.9040000000000001
1.905
1.9060000000000001
1.907
1.9080000000000001
1.909
1.9100000000000001
1.911
1.9120000000000001
1.913
1.9140000000000001
1.915
1.9160000000000001
1.917
1.9180000000000001
1.919
1.92
1.921
1.922
1.923
1.924
1.925
1.926
1.927
1.928
1.929
1.93
1.931
1.932
1.933
1.934
1.935
1.936
1.937
1.938
1.939
1.94
1.941
1.942
1.943
1.944
1.945
1.946
1.947
1.948
1.949
1.95
1.951
1.952
1.953
1.954
1.955
1.956
1.957
1.958
1.959
1.96
1.961
1.962
1.963
1.964
1.965
1.966
1.967
1.968
1.969
1.97
1.971
1.972
1.973
1.974
1.975
1.976
1.977
1.978
1.979
1.98
1.981
1.982
1.983
1.984
1.985
1.986
1.987
1.988
1.989
1.99
1.991
1.992
1.993
1.994
1.995
1.996
1.997
1.998
1.999CPU times: user 23.5 s, sys: 400 ms, total: 23.9 s
Wall time: 23.3 s
Draw(gfut_a1, mesh, interpolate_multidim=True, animate=True);
3.4.3. time-dependent r.h.s. data#
Next: time-dependent r.h.s. data \(f=f(t)\):
Use
Parameter
t representing the time.A
Parameter
is a constantCoefficientFunction
the value of which can be changed with theSet
-function.
t = Parameter(0.0)
An example of a time-dependent coefficient that we want to use as r.h.s. in the following is
omega=pi
gausspt = exp(-10*((x-0.5)**2 + (y-0.5)**2) )*(sin(omega*t))
gff = GridFunction(L2(mesh,order=gfu.space.globalorder+1))
gfft = GridFunction(gff.space,multidim=0)
time = 0.0
for i in range(7):
t.Set(3*i/6)
gff.Set(gausspt)
gfft.AddMultiDimComponent(gff.vec)
Draw(gfft, mesh, interpolate_multidim=True, animate=True, min=-1, max=1, autoscale=False);
Accordingly, we define a different linear form which then has to be assembled in every time step.
ft = LinearForm(fes)
ft += gausspt*v*dx
def TimeStepping_app2(invmstar, initial_cond = None, t0 = 0, tend = 2,
nsamples = 20):
if initial_cond:
gfu.Set(initial_cond)
cnt = 0; time = t0
sample_int = int(floor(tend / dt / nsamples)+1)
gfut = GridFunction(gfu.space,multidim=0)
gfut.AddMultiDimComponent(gfu.vec)
while time < tend - 0.5 * dt:
t.Set(time)
ft.Assemble()
res = dt * ft.vec - dt * a.mat * gfu.vec
gfu.vec.data += invmstar * res
print("\r",time,end="")
if cnt % sample_int == 0:
gfut.AddMultiDimComponent(gfu.vec)
cnt += 1; time = cnt * dt
return gfut
%%time
gfut_a2 = TimeStepping_app2(invmstar, initial_cond=CF(0),tend=5)
Draw(gfut_a2, mesh, interpolate_multidim=True, animate=True,
min=-0.25,max=0.25,autoscale=False);
0
0.001
0.002
0.003
0.004
0.005
0.006
0.007
0.008
0.009000000000000001
0.01
0.011
0.012
0.013000000000000001
0.014
0.015
0.016
0.017
0.018000000000000002
0.019
0.02
0.021
0.022
0.023
0.024
0.025
0.026000000000000002
0.027
0.028
0.029
0.03
0.031
0.032
0.033
0.034
0.035
0.036000000000000004
0.037
0.038
0.039
0.04
0.041
0.042
0.043000000000000003
0.044
0.045
0.046
0.047
0.048
0.049
0.05
0.051000000000000004
0.052000000000000005
0.053
0.054
0.055
0.056
0.057
0.058
0.059000000000000004
0.06
0.061
0.062
0.063
0.064
0.065
0.066
0.067
0.068
0.069
0.07
0.07100000000000001
0.07200000000000001
0.073
0.074
0.075
0.076
0.077
0.078
0.079
0.08
0.081
0.082
0.083
0.084
0.085
0.08600000000000001
0.08700000000000001
0.088
0.089
0.09
0.091
0.092
0.093
0.094
0.095
0.096
0.097
0.098
0.099
0.1
0.101
0.10200000000000001
0.10300000000000001
0.10400000000000001
0.105
0.106
0.107
0.108
0.109
0.11
0.111
0.112
0.113
0.114
0.115
0.116
0.117
0.11800000000000001
0.11900000000000001
0.12
0.121
0.122
0.123
0.124
0.125
0.126
0.127
0.128
0.129
0.13
0.131
0.132
0.133
0.134
0.135
0.136
0.137
0.138
0.139
0.14
0.14100000000000001
0.14200000000000002
0.14300000000000002
0.14400000000000002
0.145
0.146
0.147
0.148
0.149
0.15
0.151
0.152
0.153
0.154
0.155
0.156
0.157
0.158
0.159
0.16
0.161
0.162
0.163
0.164
0.165
0.166
0.167
0.168
0.169
0.17
0.171
0.17200000000000001
0.17300000000000001
0.17400000000000002
0.17500000000000002
0.176
0.177
0.178
0.179
0.18
0.181
0.182
0.183
0.184
0.185
0.186
0.187
0.188
0.189
0.19
0.191
0.192
0.193
0.194
0.195
0.196
0.197
0.198
0.199
0.2
0.201
0.202
0.203
0.20400000000000001
0.20500000000000002
0.20600000000000002
0.20700000000000002
0.20800000000000002
0.209
0.21
0.211
0.212
0.213
0.214
0.215
0.216
0.217
0.218
0.219
0.22
0.221
0.222
0.223
0.224
0.225
0.226
0.227
0.228
0.229
0.23
0.231
0.232
0.233
0.234
0.23500000000000001
0.23600000000000002
0.23700000000000002
0.23800000000000002
0.23900000000000002
0.24
0.241
0.242
0.243
0.244
0.245
0.246
0.247
0.248
0.249
0.25
0.251
0.252
0.253
0.254
0.255
0.256
0.257
0.258
0.259
0.26
0.261
0.262
0.263
0.264
0.265
0.266
0.267
0.268
0.269
0.27
0.271
0.272
0.273
0.274
0.275
0.276
0.277
0.278
0.279
0.28
0.281
0.28200000000000003
0.28300000000000003
0.28400000000000003
0.28500000000000003
0.28600000000000003
0.28700000000000003
0.28800000000000003
0.289
0.29
0.291
0.292
0.293
0.294
0.295
0.296
0.297
0.298
0.299
0.3
0.301
0.302
0.303
0.304
0.305
0.306
0.307
0.308
0.309
0.31
0.311
0.312
0.313
0.314
0.315
0.316
0.317
0.318
0.319
0.32
0.321
0.322
0.323
0.324
0.325
0.326
0.327
0.328
0.329
0.33
0.331
0.332
0.333
0.334
0.335
0.336
0.337
0.338
0.339
0.34
0.341
0.342
0.343
0.34400000000000003
0.34500000000000003
0.34600000000000003
0.34700000000000003
0.34800000000000003
0.34900000000000003
0.35000000000000003
0.35100000000000003
0.352
0.353
0.354
0.355
0.356
0.357
0.358
0.359
0.36
0.361
0.362
0.363
0.364
0.365
0.366
0.367
0.368
0.369
0.37
0.371
0.372
0.373
0.374
0.375
0.376
0.377
0.378
0.379
0.38
0.381
0.382
0.383
0.384
0.385
0.386
0.387
0.388
0.389
0.39
0.391
0.392
0.393
0.394
0.395
0.396
0.397
0.398
0.399
0.4
0.401
0.402
0.403
0.404
0.405
0.406
0.40700000000000003
0.40800000000000003
0.40900000000000003
0.41000000000000003
0.41100000000000003
0.41200000000000003
0.41300000000000003
0.41400000000000003
0.41500000000000004
0.41600000000000004
0.417
0.418
0.419
0.42
0.421
0.422
0.423
0.424
0.425
0.426
0.427
0.428
0.429
0.43
0.431
0.432
0.433
0.434
0.435
0.436
0.437
0.438
0.439
0.44
0.441
0.442
0.443
0.444
0.445
0.446
0.447
0.448
0.449
0.45
0.451
0.452
0.453
0.454
0.455
0.456
0.457
0.458
0.459
0.46
0.461
0.462
0.463
0.464
0.465
0.466
0.467
0.468
0.46900000000000003
0.47000000000000003
0.47100000000000003
0.47200000000000003
0.47300000000000003
0.47400000000000003
0.47500000000000003
0.47600000000000003
0.47700000000000004
0.47800000000000004
0.47900000000000004
0.48
0.481
0.482
0.483
0.484
0.485
0.486
0.487
0.488
0.489
0.49
0.491
0.492
0.493
0.494
0.495
0.496
0.497
0.498
0.499
0.5
0.501
0.502
0.503
0.504
0.505
0.506
0.507
0.508
0.509
0.51
0.511
0.512
0.513
0.514
0.515
0.516
0.517
0.518
0.519
0.52
0.521
0.522
0.523
0.524
0.525
0.526
0.527
0.528
0.529
0.53
0.531
0.532
0.533
0.534
0.535
0.536
0.537
0.538
0.539
0.54
0.541
0.542
0.543
0.544
0.545
0.546
0.547
0.548
0.549
0.55
0.551
0.552
0.553
0.554
0.555
0.556
0.557
0.558
0.559
0.56
0.561
0.562
0.5630000000000001
0.5640000000000001
0.5650000000000001
0.5660000000000001
0.5670000000000001
0.5680000000000001
0.5690000000000001
0.5700000000000001
0.5710000000000001
0.5720000000000001
0.5730000000000001
0.5740000000000001
0.5750000000000001
0.5760000000000001
0.577
0.578
0.579
0.58
0.581
0.582
0.583
0.584
0.585
0.586
0.587
0.588
0.589
0.59
0.591
0.592
0.593
0.594
0.595
0.596
0.597
0.598
0.599
0.6
0.601
0.602
0.603
0.604
0.605
0.606
0.607
0.608
0.609
0.61
0.611
0.612
0.613
0.614
0.615
0.616
0.617
0.618
0.619
0.62
0.621
0.622
0.623
0.624
0.625
0.626
0.627
0.628
0.629
0.63
0.631
0.632
0.633
0.634
0.635
0.636
0.637
0.638
0.639
0.64
0.641
0.642
0.643
0.644
0.645
0.646
0.647
0.648
0.649
0.65
0.651
0.652
0.653
0.654
0.655
0.656
0.657
0.658
0.659
0.66
0.661
0.662
0.663
0.664
0.665
0.666
0.667
0.668
0.669
0.67
0.671
0.672
0.673
0.674
0.675
0.676
0.677
0.678
0.679
0.68
0.681
0.682
0.683
0.684
0.685
0.686
0.687
0.6880000000000001
0.6890000000000001
0.6900000000000001
0.6910000000000001
0.6920000000000001
0.6930000000000001
0.6940000000000001
0.6950000000000001
0.6960000000000001
0.6970000000000001
0.6980000000000001
0.6990000000000001
0.7000000000000001
0.7010000000000001
0.7020000000000001
0.7030000000000001
0.704
0.705
0.706
0.707
0.708
0.709
0.71
0.711
0.712
0.713
0.714
0.715
0.716
0.717
0.718
0.719
0.72
0.721
0.722
0.723
0.724
0.725
0.726
0.727
0.728
0.729
0.73
0.731
0.732
0.733
0.734
0.735
0.736
0.737
0.738
0.739
0.74
0.741
0.742
0.743
0.744
0.745
0.746
0.747
0.748
0.749
0.75
0.751
0.752
0.753
0.754
0.755
0.756
0.757
0.758
0.759
0.76
0.761
0.762
0.763
0.764
0.765
0.766
0.767
0.768
0.769
0.77
0.771
0.772
0.773
0.774
0.775
0.776
0.777
0.778
0.779
0.78
0.781
0.782
0.783
0.784
0.785
0.786
0.787
0.788
0.789
0.79
0.791
0.792
0.793
0.794
0.795
0.796
0.797
0.798
0.799
0.8
0.801
0.802
0.803
0.804
0.805
0.806
0.807
0.808
0.809
0.81
0.811
0.812
0.8130000000000001
0.8140000000000001
0.8150000000000001
0.8160000000000001
0.8170000000000001
0.8180000000000001
0.8190000000000001
0.8200000000000001
0.8210000000000001
0.8220000000000001
0.8230000000000001
0.8240000000000001
0.8250000000000001
0.8260000000000001
0.8270000000000001
0.8280000000000001
0.8290000000000001
0.8300000000000001
0.8310000000000001
0.8320000000000001
0.833
0.834
0.835
0.836
0.837
0.838
0.839
0.84
0.841
0.842
0.843
0.844
0.845
0.846
0.847
0.848
0.849
0.85
0.851
0.852
0.853
0.854
0.855
0.856
0.857
0.858
0.859
0.86
0.861
0.862
0.863
0.864
0.865
0.866
0.867
0.868
0.869
0.87
0.871
0.872
0.873
0.874
0.875
0.876
0.877
0.878
0.879
0.88
0.881
0.882
0.883
0.884
0.885
0.886
0.887
0.888
0.889
0.89
0.891
0.892
0.893
0.894
0.895
0.896
0.897
0.898
0.899
0.9
0.901
0.902
0.903
0.904
0.905
0.906
0.907
0.908
0.909
0.91
0.911
0.912
0.913
0.914
0.915
0.916
0.917
0.918
0.919
0.92
0.921
0.922
0.923
0.924
0.925
0.926
0.927
0.928
0.929
0.93
0.931
0.932
0.933
0.934
0.935
0.936
0.937
0.9380000000000001
0.9390000000000001
0.9400000000000001
0.9410000000000001
0.9420000000000001
0.9430000000000001
0.9440000000000001
0.9450000000000001
0.9460000000000001
0.9470000000000001
0.9480000000000001
0.9490000000000001
0.9500000000000001
0.9510000000000001
0.9520000000000001
0.9530000000000001
0.9540000000000001
0.9550000000000001
0.9560000000000001
0.9570000000000001
0.9580000000000001
0.9590000000000001
0.96
0.961
0.962
0.963
0.964
0.965
0.966
0.967
0.968
0.969
0.97
0.971
0.972
0.973
0.974
0.975
0.976
0.977
0.978
0.979
0.98
0.981
0.982
0.983
0.984
0.985
0.986
0.987
0.988
0.989
0.99
0.991
0.992
0.993
0.994
0.995
0.996
0.997
0.998
0.999
1.0
1.0010000000000001
1.002
1.0030000000000001
1.004
1.0050000000000001
1.006
1.0070000000000001
1.008
1.0090000000000001
1.01
1.0110000000000001
1.012
1.0130000000000001
1.014
1.0150000000000001
1.016
1.0170000000000001
1.018
1.0190000000000001
1.02
1.0210000000000001
1.022
1.0230000000000001
1.024
1.025
1.026
1.027
1.028
1.029
1.03
1.031
1.032
1.033
1.034
1.035
1.036
1.037
1.038
1.039
1.04
1.041
1.042
1.043
1.044
1.045
1.046
1.047
1.048
1.049
1.05
1.051
1.052
1.053
1.054
1.055
1.056
1.057
1.058
1.059
1.06
1.061
1.062
1.063
1.064
1.065
1.066
1.067
1.068
1.069
1.07
1.071
1.072
1.073
1.074
1.075
1.076
1.077
1.078
1.079
1.08
1.081
1.082
1.083
1.084
1.085
1.086
1.087
1.088
1.089
1.09
1.091
1.092
1.093
1.094
1.095
1.096
1.097
1.098
1.099
1.1
1.101
1.102
1.103
1.104
1.105
1.106
1.107
1.108
1.109
1.11
1.111
1.112
1.113
1.114
1.115
1.116
1.117
1.118
1.119
1.12
1.121
1.122
1.123
1.124
1.125
1.1260000000000001
1.127
1.1280000000000001
1.129
1.1300000000000001
1.131
1.1320000000000001
1.133
1.1340000000000001
1.135
1.1360000000000001
1.137
1.1380000000000001
1.139
1.1400000000000001
1.141
1.1420000000000001
1.143
1.1440000000000001
1.145
1.1460000000000001
1.147
1.1480000000000001
1.149
1.1500000000000001
1.151
1.1520000000000001
1.153
1.154
1.155
1.156
1.157
1.158
1.159
1.16
1.161
1.162
1.163
1.164
1.165
1.166
1.167
1.168
1.169
1.17
1.171
1.172
1.173
1.174
1.175
1.176
1.177
1.178
1.179
1.18
1.181
1.182
1.183
1.184
1.185
1.186
1.187
1.188
1.189
1.19
1.191
1.192
1.193
1.194
1.195
1.196
1.197
1.198
1.199
1.2
1.201
1.202
1.203
1.204
1.205
1.206
1.207
1.208
1.209
1.21
1.211
1.212
1.213
1.214
1.215
1.216
1.217
1.218
1.219
1.22
1.221
1.222
1.223
1.224
1.225
1.226
1.227
1.228
1.229
1.23
1.231
1.232
1.233
1.234
1.235
1.236
1.237
1.238
1.239
1.24
1.241
1.242
1.243
1.244
1.245
1.246
1.247
1.248
1.249
1.25
1.2510000000000001
1.252
1.2530000000000001
1.254
1.2550000000000001
1.256
1.2570000000000001
1.258
1.2590000000000001
1.26
1.2610000000000001
1.262
1.2630000000000001
1.264
1.2650000000000001
1.266
1.2670000000000001
1.268
1.2690000000000001
1.27
1.2710000000000001
1.272
1.2730000000000001
1.274
1.2750000000000001
1.276
1.2770000000000001
1.278
1.2790000000000001
1.28
1.281
1.282
1.283
1.284
1.285
1.286
1.287
1.288
1.289
1.29
1.291
1.292
1.293
1.294
1.295
1.296
1.297
1.298
1.299
1.3
1.301
1.302
1.303
1.304
1.305
1.306
1.307
1.308
1.309
1.31
1.311
1.312
1.313
1.314
1.315
1.316
1.317
1.318
1.319
1.32
1.321
1.322
1.323
1.324
1.325
1.326
1.327
1.328
1.329
1.33
1.331
1.332
1.333
1.334
1.335
1.336
1.337
1.338
1.339
1.34
1.341
1.342
1.343
1.344
1.345
1.346
1.347
1.348
1.349
1.35
1.351
1.352
1.353
1.354
1.355
1.356
1.357
1.358
1.359
1.36
1.361
1.362
1.363
1.364
1.365
1.366
1.367
1.368
1.369
1.37
1.371
1.372
1.373
1.374
1.375
1.3760000000000001
1.377
1.3780000000000001
1.379
1.3800000000000001
1.381
1.3820000000000001
1.383
1.3840000000000001
1.385
1.3860000000000001
1.387
1.3880000000000001
1.389
1.3900000000000001
1.391
1.3920000000000001
1.393
1.3940000000000001
1.395
1.3960000000000001
1.397
1.3980000000000001
1.399
1.4000000000000001
1.401
1.4020000000000001
1.403
1.4040000000000001
1.405
1.4060000000000001
1.407
1.408
1.409
1.41
1.411
1.412
1.413
1.414
1.415
1.416
1.417
1.418
1.419
1.42
1.421
1.422
1.423
1.424
1.425
1.426
1.427
1.428
1.429
1.43
1.431
1.432
1.433
1.434
1.435
1.436
1.437
1.438
1.439
1.44
1.441
1.442
1.443
1.444
1.445
1.446
1.447
1.448
1.449
1.45
1.451
1.452
1.453
1.454
1.455
1.456
1.457
1.458
1.459
1.46
1.461
1.462
1.463
1.464
1.465
1.466
1.467
1.468
1.469
1.47
1.471
1.472
1.473
1.474
1.475
1.476
1.477
1.478
1.479
1.48
1.481
1.482
1.483
1.484
1.485
1.486
1.487
1.488
1.489
1.49
1.491
1.492
1.493
1.494
1.495
1.496
1.497
1.498
1.499
1.5
1.5010000000000001
1.502
1.5030000000000001
1.504
1.5050000000000001
1.506
1.5070000000000001
1.508
1.5090000000000001
1.51
1.5110000000000001
1.512
1.5130000000000001
1.514
1.5150000000000001
1.516
1.5170000000000001
1.518
1.5190000000000001
1.52
1.5210000000000001
1.522
1.5230000000000001
1.524
1.5250000000000001
1.526
1.5270000000000001
1.528
1.5290000000000001
1.53
1.5310000000000001
1.532
1.5330000000000001
1.534
1.5350000000000001
1.536
1.537
1.538
1.539
1.54
1.541
1.542
1.543
1.544
1.545
1.546
1.547
1.548
1.549
1.55
1.551
1.552
1.553
1.554
1.555
1.556
1.557
1.558
1.559
1.56
1.561
1.562
1.563
1.564
1.565
1.566
1.567
1.568
1.569
1.57
1.571
1.572
1.573
1.574
1.575
1.576
1.577
1.578
1.579
1.58
1.581
1.582
1.583
1.584
1.585
1.586
1.587
1.588
1.589
1.59
1.591
1.592
1.593
1.594
1.595
1.596
1.597
1.598
1.599
1.6
1.601
1.602
1.603
1.604
1.605
1.606
1.607
1.608
1.609
1.61
1.611
1.612
1.613
1.614
1.615
1.616
1.617
1.618
1.619
1.62
1.621
1.622
1.623
1.624
1.625
1.6260000000000001
1.627
1.6280000000000001
1.629
1.6300000000000001
1.631
1.6320000000000001
1.633
1.6340000000000001
1.635
1.6360000000000001
1.637
1.6380000000000001
1.639
1.6400000000000001
1.641
1.6420000000000001
1.643
1.6440000000000001
1.645
1.6460000000000001
1.647
1.6480000000000001
1.649
1.6500000000000001
1.651
1.6520000000000001
1.653
1.6540000000000001
1.655
1.6560000000000001
1.657
1.6580000000000001
1.659
1.6600000000000001
1.661
1.6620000000000001
1.663
1.6640000000000001
1.665
1.666
1.667
1.668
1.669
1.67
1.671
1.672
1.673
1.674
1.675
1.676
1.677
1.678
1.679
1.68
1.681
1.682
1.683
1.684
1.685
1.686
1.687
1.688
1.689
1.69
1.691
1.692
1.693
1.694
1.695
1.696
1.697
1.698
1.699
1.7
1.701
1.702
1.703
1.704
1.705
1.706
1.707
1.708
1.709
1.71
1.711
1.712
1.713
1.714
1.715
1.716
1.717
1.718
1.719
1.72
1.721
1.722
1.723
1.724
1.725
1.726
1.727
1.728
1.729
1.73
1.731
1.732
1.733
1.734
1.735
1.736
1.737
1.738
1.739
1.74
1.741
1.742
1.743
1.744
1.745
1.746
1.747
1.748
1.749
1.75
1.7510000000000001
1.752
1.7530000000000001
1.754
1.7550000000000001
1.756
1.7570000000000001
1.758
1.7590000000000001
1.76
1.7610000000000001
1.762
1.7630000000000001
1.764
1.7650000000000001
1.766
1.7670000000000001
1.768
1.7690000000000001
1.77
1.7710000000000001
1.772
1.7730000000000001
1.774
1.7750000000000001
1.776
1.7770000000000001
1.778
1.7790000000000001
1.78
1.7810000000000001
1.782
1.7830000000000001
1.784
1.7850000000000001
1.786
1.7870000000000001
1.788
1.7890000000000001
1.79
1.7910000000000001
1.792
1.793
1.794
1.795
1.796
1.797
1.798
1.799
1.8
1.801
1.802
1.803
1.804
1.805
1.806
1.807
1.808
1.809
1.81
1.811
1.812
1.813
1.814
1.815
1.816
1.817
1.818
1.819
1.82
1.821
1.822
1.823
1.824
1.825
1.826
1.827
1.828
1.829
1.83
1.831
1.832
1.833
1.834
1.835
1.836
1.837
1.838
1.839
1.84
1.841
1.842
1.843
1.844
1.845
1.846
1.847
1.848
1.849
1.85
1.851
1.852
1.853
1.854
1.855
1.856
1.857
1.858
1.859
1.86
1.861
1.862
1.863
1.864
1.865
1.866
1.867
1.868
1.869
1.87
1.871
1.872
1.873
1.874
1.875
1.8760000000000001
1.877
1.8780000000000001
1.879
1.8800000000000001
1.881
1.8820000000000001
1.883
1.8840000000000001
1.885
1.8860000000000001
1.887
1.8880000000000001
1.889
1.8900000000000001
1.891
1.8920000000000001
1.893
1.8940000000000001
1.895
1.8960000000000001
1.897
1.8980000000000001
1.899
1.9000000000000001
1.901
1.9020000000000001
1.903
1.9040000000000001
1.905
1.9060000000000001
1.907
1.9080000000000001
1.909
1.9100000000000001
1.911
1.9120000000000001
1.913
1.9140000000000001
1.915
1.9160000000000001
1.917
1.9180000000000001
1.919
1.92
1.921
1.922
1.923
1.924
1.925
1.926
1.927
1.928
1.929
1.93
1.931
1.932
1.933
1.934
1.935
1.936
1.937
1.938
1.939
1.94
1.941
1.942
1.943
1.944
1.945
1.946
1.947
1.948
1.949
1.95
1.951
1.952
1.953
1.954
1.955
1.956
1.957
1.958
1.959
1.96
1.961
1.962
1.963
1.964
1.965
1.966
1.967
1.968
1.969
1.97
1.971
1.972
1.973
1.974
1.975
1.976
1.977
1.978
1.979
1.98
1.981
1.982
1.983
1.984
1.985
1.986
1.987
1.988
1.989
1.99
1.991
1.992
1.993
1.994
1.995
1.996
1.997
1.998
1.999
2.0
2.001
2.0020000000000002
2.003
2.004
2.005
2.0060000000000002
2.007
2.008
2.009
2.0100000000000002
2.011
2.012
2.013
2.0140000000000002
2.015
2.016
2.017
2.0180000000000002
2.019
2.02
2.021
2.0220000000000002
2.023
2.024
2.025
2.0260000000000002
2.027
2.028
2.029
2.0300000000000002
2.031
2.032
2.033
2.0340000000000003
2.035
2.036
2.037
2.0380000000000003
2.039
2.04
2.041
2.0420000000000003
2.043
2.044
2.045
2.0460000000000003
2.047
2.048
2.049
2.05
2.051
2.052
2.053
2.054
2.055
2.056
2.057
2.058
2.059
2.06
2.061
2.062
2.063
2.064
2.065
2.066
2.067
2.068
2.069
2.07
2.071
2.072
2.073
2.074
2.075
2.076
2.077
2.078
2.079
2.08
2.081
2.082
2.083
2.084
2.085
2.086
2.087
2.088
2.089
2.09
2.091
2.092
2.093
2.094
2.095
2.096
2.097
2.098
2.099
2.1
2.101
2.102
2.103
2.104
2.105
2.106
2.107
2.108
2.109
2.11
2.111
2.112
2.113
2.114
2.115
2.116
2.117
2.118
2.119
2.12
2.121
2.122
2.123
2.124
2.125
2.126
2.1270000000000002
2.128
2.129
2.13
2.1310000000000002
2.132
2.133
2.134
2.1350000000000002
2.136
2.137
2.138
2.1390000000000002
2.14
2.141
2.142
2.1430000000000002
2.144
2.145
2.146
2.1470000000000002
2.148
2.149
2.15
2.1510000000000002
2.152
2.153
2.154
2.1550000000000002
2.156
2.157
2.158
2.1590000000000003
2.16
2.161
2.162
2.1630000000000003
2.164
2.165
2.166
2.1670000000000003
2.168
2.169
2.17
2.1710000000000003
2.172
2.173
2.174
2.1750000000000003
2.176
2.177
2.178
2.179
2.18
2.181
2.182
2.183
2.184
2.185
2.186
2.187
2.188
2.189
2.19
2.191
2.192
2.193
2.194
2.195
2.196
2.197
2.198
2.199
2.2
2.201
2.202
2.203
2.204
2.205
2.206
2.207
2.208
2.209
2.21
2.211
2.212
2.213
2.214
2.215
2.216
2.217
2.218
2.219
2.22
2.221
2.222
2.223
2.224
2.225
2.226
2.227
2.228
2.229
2.23
2.231
2.232
2.233
2.234
2.235
2.236
2.237
2.238
2.239
2.24
2.241
2.242
2.243
2.244
2.245
2.246
2.247
2.248
2.249
2.25
2.251
2.2520000000000002
2.253
2.254
2.255
2.2560000000000002
2.257
2.258
2.259
2.2600000000000002
2.261
2.262
2.263
2.2640000000000002
2.265
2.266
2.267
2.2680000000000002
2.269
2.27
2.271
2.2720000000000002
2.273
2.274
2.275
2.2760000000000002
2.277
2.278
2.279
2.2800000000000002
2.281
2.282
2.283
2.2840000000000003
2.285
2.286
2.287
2.2880000000000003
2.289
2.29
2.291
2.2920000000000003
2.293
2.294
2.295
2.2960000000000003
2.297
2.298
2.299
2.3000000000000003
2.301
2.302
2.303
2.3040000000000003
2.305
2.306
2.307
2.308
2.309
2.31
2.311
2.312
2.313
2.314
2.315
2.316
2.317
2.318
2.319
2.32
2.321
2.322
2.323
2.324
2.325
2.326
2.327
2.328
2.329
2.33
2.331
2.332
2.333
2.334
2.335
2.336
2.337
2.338
2.339
2.34
2.341
2.342
2.343
2.344
2.345
2.346
2.347
2.348
2.349
2.35
2.351
2.352
2.353
2.354
2.355
2.356
2.357
2.358
2.359
2.36
2.361
2.362
2.363
2.364
2.365
2.366
2.367
2.368
2.369
2.37
2.371
2.372
2.373
2.374
2.375
2.376
2.3770000000000002
2.378
2.379
2.38
2.3810000000000002
2.382
2.383
2.384
2.3850000000000002
2.386
2.387
2.388
2.3890000000000002
2.39
2.391
2.392
2.3930000000000002
2.394
2.395
2.396
2.3970000000000002
2.398
2.399
2.4
2.4010000000000002
2.402
2.403
2.404
2.4050000000000002
2.406
2.407
2.408
2.4090000000000003
2.41
2.411
2.412
2.4130000000000003
2.414
2.415
2.416
2.4170000000000003
2.418
2.419
2.42
2.4210000000000003
2.422
2.423
2.424
2.4250000000000003
2.426
2.427
2.428
2.4290000000000003
2.43
2.431
2.432
2.433
2.434
2.435
2.436
2.437
2.438
2.439
2.44
2.441
2.442
2.443
2.444
2.445
2.446
2.447
2.448
2.449
2.45
2.451
2.452
2.453
2.454
2.455
2.456
2.457
2.458
2.459
2.46
2.461
2.462
2.463
2.464
2.465
2.466
2.467
2.468
2.469
2.47
2.471
2.472
2.473
2.474
2.475
2.476
2.477
2.478
2.479
2.48
2.481
2.482
2.483
2.484
2.485
2.486
2.487
2.488
2.489
2.49
2.491
2.492
2.493
2.494
2.495
2.496
2.497
2.498
2.499
2.5
2.501
2.5020000000000002
2.503
2.504
2.505
2.5060000000000002
2.507
2.508
2.509
2.5100000000000002
2.511
2.512
2.513
2.5140000000000002
2.515
2.516
2.517
2.5180000000000002
2.519
2.52
2.521
2.5220000000000002
2.523
2.524
2.525
2.5260000000000002
2.527
2.528
2.529
2.5300000000000002
2.531
2.532
2.533
2.5340000000000003
2.535
2.536
2.537
2.5380000000000003
2.539
2.54
2.541
2.5420000000000003
2.543
2.544
2.545
2.5460000000000003
2.547
2.548
2.549
2.5500000000000003
2.551
2.552
2.553
2.5540000000000003
2.555
2.556
2.557
2.5580000000000003
2.559
2.56
2.561
2.562
2.563
2.564
2.565
2.566
2.567
2.568
2.569
2.57
2.571
2.572
2.573
2.574
2.575
2.576
2.577
2.578
2.579
2.58
2.581
2.582
2.583
2.584
2.585
2.586
2.587
2.588
2.589
2.59
2.591
2.592
2.593
2.594
2.595
2.596
2.597
2.598
2.599
2.6
2.601
2.602
2.603
2.604
2.605
2.606
2.607
2.608
2.609
2.61
2.611
2.612
2.613
2.614
2.615
2.616
2.617
2.618
2.619
2.62
2.621
2.622
2.623
2.624
2.625
2.626
2.6270000000000002
2.628
2.629
2.63
2.6310000000000002
2.632
2.633
2.634
2.6350000000000002
2.636
2.637
2.638
2.6390000000000002
2.64
2.641
2.642
2.6430000000000002
2.644
2.645
2.646
2.6470000000000002
2.648
2.649
2.65
2.6510000000000002
2.652
2.653
2.654
2.6550000000000002
2.656
2.657
2.658
2.6590000000000003
2.66
2.661
2.662
2.6630000000000003
2.664
2.665
2.666
2.6670000000000003
2.668
2.669
2.67
2.6710000000000003
2.672
2.673
2.674
2.6750000000000003
2.676
2.677
2.678
2.6790000000000003
2.68
2.681
2.682
2.6830000000000003
2.684
2.685
2.686
2.6870000000000003
2.688
2.689
2.69
2.691
2.692
2.693
2.694
2.695
2.696
2.697
2.698
2.699
2.7
2.701
2.702
2.703
2.704
2.705
2.706
2.707
2.708
2.709
2.71
2.711
2.712
2.713
2.714
2.715
2.716
2.717
2.718
2.719
2.72
2.721
2.722
2.723
2.724
2.725
2.726
2.727
2.728
2.729
2.73
2.731
2.732
2.733
2.734
2.735
2.736
2.737
2.738
2.739
2.74
2.741
2.742
2.743
2.744
2.745
2.746
2.747
2.748
2.749
2.75
2.751
2.7520000000000002
2.753
2.754
2.755
2.7560000000000002
2.757
2.758
2.759
2.7600000000000002
2.761
2.762
2.763
2.7640000000000002
2.765
2.766
2.767
2.7680000000000002
2.769
2.77
2.771
2.7720000000000002
2.773
2.774
2.775
2.7760000000000002
2.777
2.778
2.779
2.7800000000000002
2.781
2.782
2.783
2.7840000000000003
2.785
2.786
2.787
2.7880000000000003
2.789
2.79
2.791
2.7920000000000003
2.793
2.794
2.795
2.7960000000000003
2.797
2.798
2.799
2.8000000000000003
2.801
2.802
2.803
2.8040000000000003
2.805
2.806
2.807
2.8080000000000003
2.809
2.81
2.811
2.8120000000000003
2.813
2.814
2.815
2.816
2.817
2.818
2.819
2.82
2.821
2.822
2.823
2.824
2.825
2.826
2.827
2.828
2.829
2.83
2.831
2.832
2.833
2.834
2.835
2.836
2.837
2.838
2.839
2.84
2.841
2.842
2.843
2.844
2.845
2.846
2.847
2.848
2.849
2.85
2.851
2.852
2.853
2.854
2.855
2.856
2.857
2.858
2.859
2.86
2.861
2.862
2.863
2.864
2.865
2.866
2.867
2.868
2.869
2.87
2.871
2.872
2.873
2.874
2.875
2.876
2.8770000000000002
2.878
2.879
2.88
2.8810000000000002
2.882
2.883
2.884
2.8850000000000002
2.886
2.887
2.888
2.8890000000000002
2.89
2.891
2.892
2.8930000000000002
2.894
2.895
2.896
2.8970000000000002
2.898
2.899
2.9
2.9010000000000002
2.902
2.903
2.904
2.9050000000000002
2.906
2.907
2.908
2.9090000000000003
2.91
2.911
2.912
2.9130000000000003
2.914
2.915
2.916
2.9170000000000003
2.918
2.919
2.92
2.9210000000000003
2.922
2.923
2.924
2.9250000000000003
2.926
2.927
2.928
2.9290000000000003
2.93
2.931
2.932
2.9330000000000003
2.934
2.935
2.936
2.9370000000000003
2.938
2.939
2.94
2.9410000000000003
2.942
2.943
2.944
2.945
2.946
2.947
2.948
2.949
2.95
2.951
2.952
2.953
2.954
2.955
2.956
2.957
2.958
2.959
2.96
2.961
2.962
2.963
2.964
2.965
2.966
2.967
2.968
2.969
2.97
2.971
2.972
2.973
2.974
2.975
2.976
2.977
2.978
2.979
2.98
2.981
2.982
2.983
2.984
2.985
2.986
2.987
2.988
2.989
2.99
2.991
2.992
2.993
2.994
2.995
2.996
2.997
2.998
2.999
3.0
3.001
3.0020000000000002
3.003
3.004
3.005
3.0060000000000002
3.007
3.008
3.009
3.0100000000000002
3.011
3.012
3.013
3.0140000000000002
3.015
3.016
3.017
3.0180000000000002
3.019
3.02
3.021
3.0220000000000002
3.023
3.024
3.025
3.0260000000000002
3.027
3.028
3.029
3.0300000000000002
3.031
3.032
3.033
3.0340000000000003
3.035
3.036
3.037
3.0380000000000003
3.039
3.04
3.041
3.0420000000000003
3.043
3.044
3.045
3.0460000000000003
3.047
3.048
3.049
3.0500000000000003
3.051
3.052
3.053
3.0540000000000003
3.055
3.056
3.057
3.0580000000000003
3.059
3.06
3.061
3.0620000000000003
3.063
3.064
3.065
3.0660000000000003
3.067
3.068
3.069
3.0700000000000003
3.071
3.072
3.073
3.074
3.075
3.076
3.077
3.078
3.079
3.08
3.081
3.082
3.083
3.084
3.085
3.086
3.087
3.088
3.089
3.09
3.091
3.092
3.093
3.094
3.095
3.096
3.097
3.098
3.099
3.1
3.101
3.102
3.103
3.104
3.105
3.106
3.107
3.108
3.109
3.11
3.111
3.112
3.113
3.114
3.115
3.116
3.117
3.118
3.119
3.12
3.121
3.122
3.123
3.124
3.125
3.126
3.1270000000000002
3.128
3.129
3.13
3.1310000000000002
3.132
3.133
3.134
3.1350000000000002
3.136
3.137
3.138
3.1390000000000002
3.14
3.141
3.142
3.1430000000000002
3.144
3.145
3.146
3.1470000000000002
3.148
3.149
3.15
3.1510000000000002
3.152
3.153
3.154
3.1550000000000002
3.156
3.157
3.158
3.1590000000000003
3.16
3.161
3.162
3.1630000000000003
3.164
3.165
3.166
3.1670000000000003
3.168
3.169
3.17
3.1710000000000003
3.172
3.173
3.174
3.1750000000000003
3.176
3.177
3.178
3.1790000000000003
3.18
3.181
3.182
3.1830000000000003
3.184
3.185
3.186
3.1870000000000003
3.188
3.189
3.19
3.1910000000000003
3.192
3.193
3.194
3.1950000000000003
3.196
3.197
3.198
3.1990000000000003
3.2
3.201
3.202
3.203
3.204
3.205
3.206
3.207
3.208
3.209
3.21
3.211
3.212
3.213
3.214
3.215
3.216
3.217
3.218
3.219
3.22
3.221
3.222
3.223
3.224
3.225
3.226
3.227
3.228
3.229
3.23
3.231
3.232
3.233
3.234
3.235
3.236
3.237
3.238
3.239
3.24
3.241
3.242
3.243
3.244
3.245
3.246
3.247
3.248
3.249
3.25
3.251
3.2520000000000002
3.253
3.254
3.255
3.2560000000000002
3.257
3.258
3.259
3.2600000000000002
3.261
3.262
3.263
3.2640000000000002
3.265
3.266
3.267
3.2680000000000002
3.269
3.27
3.271
3.2720000000000002
3.273
3.274
3.275
3.2760000000000002
3.277
3.278
3.279
3.2800000000000002
3.281
3.282
3.283
3.2840000000000003
3.285
3.286
3.287
3.2880000000000003
3.289
3.29
3.291
3.2920000000000003
3.293
3.294
3.295
3.2960000000000003
3.297
3.298
3.299
3.3000000000000003
3.301
3.302
3.303
3.3040000000000003
3.305
3.306
3.307
3.3080000000000003
3.309
3.31
3.311
3.3120000000000003
3.313
3.314
3.315
3.3160000000000003
3.317
3.318
3.319
3.3200000000000003
3.321
3.322
3.323
3.3240000000000003
3.325
3.326
3.327
3.3280000000000003
3.329
3.33
3.331
3.332
3.333
3.334
3.335
3.336
3.337
3.338
3.339
3.34
3.341
3.342
3.343
3.344
3.345
3.346
3.347
3.348
3.349
3.35
3.351
3.352
3.353
3.354
3.355
3.356
3.357
3.358
3.359
3.36
3.361
3.362
3.363
3.364
3.365
3.366
3.367
3.368
3.369
3.37
3.371
3.372
3.373
3.374
3.375
3.376
3.3770000000000002
3.378
3.379
3.38
3.3810000000000002
3.382
3.383
3.384
3.3850000000000002
3.386
3.387
3.388
3.3890000000000002
3.39
3.391
3.392
3.3930000000000002
3.394
3.395
3.396
3.3970000000000002
3.398
3.399
3.4
3.4010000000000002
3.402
3.403
3.404
3.4050000000000002
3.406
3.407
3.408
3.4090000000000003
3.41
3.411
3.412
3.4130000000000003
3.414
3.415
3.416
3.4170000000000003
3.418
3.419
3.42
3.4210000000000003
3.422
3.423
3.424
3.4250000000000003
3.426
3.427
3.428
3.4290000000000003
3.43
3.431
3.432
3.4330000000000003
3.434
3.435
3.436
3.4370000000000003
3.438
3.439
3.44
3.4410000000000003
3.442
3.443
3.444
3.4450000000000003
3.446
3.447
3.448
3.4490000000000003
3.45
3.451
3.452
3.4530000000000003
3.454
3.455
3.456
3.457
3.458
3.459
3.46
3.461
3.462
3.463
3.464
3.465
3.466
3.467
3.468
3.469
3.47
3.471
3.472
3.473
3.474
3.475
3.476
3.477
3.478
3.479
3.48
3.481
3.482
3.483
3.484
3.485
3.486
3.487
3.488
3.489
3.49
3.491
3.492
3.493
3.494
3.495
3.496
3.497
3.498
3.499
3.5
3.501
3.5020000000000002
3.503
3.504
3.505
3.5060000000000002
3.507
3.508
3.509
3.5100000000000002
3.511
3.512
3.513
3.5140000000000002
3.515
3.516
3.517
3.5180000000000002
3.519
3.52
3.521
3.5220000000000002
3.523
3.524
3.525
3.5260000000000002
3.527
3.528
3.529
3.5300000000000002
3.531
3.532
3.533
3.5340000000000003
3.535
3.536
3.537
3.5380000000000003
3.539
3.54
3.541
3.5420000000000003
3.543
3.544
3.545
3.5460000000000003
3.547
3.548
3.549
3.5500000000000003
3.551
3.552
3.553
3.5540000000000003
3.555
3.556
3.557
3.5580000000000003
3.559
3.56
3.561
3.5620000000000003
3.563
3.564
3.565
3.5660000000000003
3.567
3.568
3.569
3.5700000000000003
3.571
3.572
3.573
3.5740000000000003
3.575
3.576
3.577
3.5780000000000003
3.579
3.58
3.581
3.5820000000000003
3.583
3.584
3.585
3.586
3.587
3.588
3.589
3.59
3.591
3.592
3.593
3.594
3.595
3.596
3.597
3.598
3.599
3.6
3.601
3.602
3.603
3.604
3.605
3.606
3.607
3.608
3.609
3.61
3.611
3.612
3.613
3.614
3.615
3.616
3.617
3.618
3.619
3.62
3.621
3.622
3.623
3.624
3.625
3.626
3.6270000000000002
3.628
3.629
3.63
3.6310000000000002
3.632
3.633
3.634
3.6350000000000002
3.636
3.637
3.638
3.6390000000000002
3.64
3.641
3.642
3.6430000000000002
3.644
3.645
3.646
3.6470000000000002
3.648
3.649
3.65
3.6510000000000002
3.652
3.653
3.654
3.6550000000000002
3.656
3.657
3.658
3.6590000000000003
3.66
3.661
3.662
3.6630000000000003
3.664
3.665
3.666
3.6670000000000003
3.668
3.669
3.67
3.6710000000000003
3.672
3.673
3.674
3.6750000000000003
3.676
3.677
3.678
3.6790000000000003
3.68
3.681
3.682
3.6830000000000003
3.684
3.685
3.686
3.6870000000000003
3.688
3.689
3.69
3.6910000000000003
3.692
3.693
3.694
3.6950000000000003
3.696
3.697
3.698
3.6990000000000003
3.7
3.701
3.702
3.7030000000000003
3.704
3.705
3.706
3.7070000000000003
3.708
3.709
3.71
3.7110000000000003
3.712
3.713
3.714
3.715
3.716
3.717
3.718
3.719
3.72
3.721
3.722
3.723
3.724
3.725
3.726
3.727
3.728
3.729
3.73
3.731
3.732
3.733
3.734
3.735
3.736
3.737
3.738
3.739
3.74
3.741
3.742
3.743
3.744
3.745
3.746
3.747
3.748
3.749
3.75
3.751
3.7520000000000002
3.753
3.754
3.755
3.7560000000000002
3.757
3.758
3.759
3.7600000000000002
3.761
3.762
3.763
3.7640000000000002
3.765
3.766
3.767
3.7680000000000002
3.769
3.77
3.771
3.7720000000000002
3.773
3.774
3.775
3.7760000000000002
3.777
3.778
3.779
3.7800000000000002
3.781
3.782
3.783
3.7840000000000003
3.785
3.786
3.787
3.7880000000000003
3.789
3.79
3.791
3.7920000000000003
3.793
3.794
3.795
3.7960000000000003
3.797
3.798
3.799
3.8000000000000003
3.801
3.802
3.803
3.8040000000000003
3.805
3.806
3.807
3.8080000000000003
3.809
3.81
3.811
3.8120000000000003
3.813
3.814
3.815
3.8160000000000003
3.817
3.818
3.819
3.8200000000000003
3.821
3.822
3.823
3.8240000000000003
3.825
3.826
3.827
3.8280000000000003
3.829
3.83
3.831
3.8320000000000003
3.833
3.834
3.835
3.8360000000000003
3.837
3.838
3.839
3.84
3.841
3.842
3.843
3.844
3.845
3.846
3.847
3.848
3.849
3.85
3.851
3.852
3.853
3.854
3.855
3.856
3.857
3.858
3.859
3.86
3.861
3.862
3.863
3.864
3.865
3.866
3.867
3.868
3.869
3.87
3.871
3.872
3.873
3.874
3.875
3.876
3.8770000000000002
3.878
3.879
3.88
3.8810000000000002
3.882
3.883
3.884
3.8850000000000002
3.886
3.887
3.888
3.8890000000000002
3.89
3.891
3.892
3.8930000000000002
3.894
3.895
3.896
3.8970000000000002
3.898
3.899
3.9
3.9010000000000002
3.902
3.903
3.904
3.9050000000000002
3.906
3.907
3.908
3.9090000000000003
3.91
3.911
3.912
3.9130000000000003
3.914
3.915
3.916
3.9170000000000003
3.918
3.919
3.92
3.9210000000000003
3.922
3.923
3.924
3.9250000000000003
3.926
3.927
3.928
3.9290000000000003
3.93
3.931
3.932
3.9330000000000003
3.934
3.935
3.936
3.9370000000000003
3.938
3.939
3.94
3.9410000000000003
3.942
3.943
3.944
3.9450000000000003
3.946
3.947
3.948
3.9490000000000003
3.95
3.951
3.952
3.9530000000000003
3.954
3.955
3.956
3.9570000000000003
3.958
3.959
3.96
3.9610000000000003
3.962
3.963
3.964
3.9650000000000003
3.966
3.967
3.968
3.969
3.97
3.971
3.972
3.973
3.974
3.975
3.976
3.977
3.978
3.979
3.98
3.981
3.982
3.983
3.984
3.985
3.986
3.987
3.988
3.989
3.99
3.991
3.992
3.993
3.994
3.995
3.996
3.997
3.998
3.999
4.0
4.001
4.002
4.003
4.0040000000000004
4.005
4.006
4.007
4.008
4.009
4.01
4.011
4.0120000000000005
4.013
4.014
4.015
4.016
4.017
4.018
4.019
4.0200000000000005
4.021
4.022
4.023
4.024
4.025
4.026
4.027
4.0280000000000005
4.029
4.03
4.031
4.032
4.033
4.034
4.035
4.0360000000000005
4.037
4.038
4.039
4.04
4.041
4.042
4.043
4.0440000000000005
4.045
4.046
4.047
4.048
4.049
4.05
4.051
4.0520000000000005
4.053
4.054
4.055
4.056
4.057
4.058
4.059
4.0600000000000005
4.061
4.062
4.063
4.064
4.065
4.066
4.067
4.0680000000000005
4.069
4.07
4.071
4.072
4.073
4.074
4.075
4.0760000000000005
4.077
4.078
4.079
4.08
4.081
4.082
4.083
4.0840000000000005
4.085
4.086
4.087
4.088
4.089
4.09
4.091
4.0920000000000005
4.093
4.094
4.095
4.096
4.097
4.098
4.099
4.1
4.101
4.102
4.103
4.104
4.105
4.106
4.107
4.108
4.109
4.11
4.111
4.112
4.113
4.114
4.115
4.116
4.117
4.118
4.119
4.12
4.121
4.122
4.123
4.124
4.125
4.126
4.127
4.128
4.1290000000000004
4.13
4.131
4.132
4.133
4.134
4.135
4.136
4.1370000000000005
4.138
4.139
4.14
4.141
4.142
4.143
4.144
4.1450000000000005
4.146
4.147
4.148
4.149
4.15
4.151
4.152
4.1530000000000005
4.154
4.155
4.156
4.157
4.158
4.159
4.16
4.1610000000000005
4.162
4.163
4.164
4.165
4.166
4.167
4.168
4.1690000000000005
4.17
4.171
4.172
4.173
4.174
4.175
4.176
4.1770000000000005
4.178
4.179
4.18
4.181
4.182
4.183
4.184
4.1850000000000005
4.186
4.187
4.188
4.189
4.19
4.191
4.192
4.1930000000000005
4.194
4.195
4.196
4.197
4.198
4.199
4.2
4.2010000000000005
4.202
4.203
4.204
4.205
4.206
4.207
4.208
4.2090000000000005
4.21
4.211
4.212
4.213
4.214
4.215
4.216
4.2170000000000005
4.218
4.219
4.22
4.221
4.222
4.223
4.224
4.225
4.226
4.227
4.228
4.229
4.23
4.231
4.232
4.233
4.234
4.235
4.236
4.237
4.238
4.239
4.24
4.241
4.242
4.243
4.244
4.245
4.246
4.247
4.248
4.249
4.25
4.251
4.252
4.253
4.2540000000000004
4.255
4.256
4.257
4.258
4.259
4.26
4.261
4.2620000000000005
4.263
4.264
4.265
4.266
4.267
4.268
4.269
4.2700000000000005
4.271
4.272
4.273
4.274
4.275
4.276
4.277
4.2780000000000005
4.279
4.28
4.281
4.282
4.283
4.284
4.285
4.2860000000000005
4.287
4.288
4.289
4.29
4.291
4.292
4.293
4.2940000000000005
4.295
4.296
4.297
4.298
4.299
4.3
4.301
4.3020000000000005
4.303
4.304
4.305
4.306
4.307
4.308
4.309
4.3100000000000005
4.311
4.312
4.313
4.314
4.315
4.316
4.317
4.3180000000000005
4.319
4.32
4.321
4.322
4.323
4.324
4.325
4.3260000000000005
4.327
4.328
4.329
4.33
4.331
4.332
4.333
4.3340000000000005
4.335
4.336
4.337
4.338
4.339
4.34
4.341
4.3420000000000005
4.343
4.344
4.345
4.346
4.347
4.348
4.349
4.3500000000000005
4.351
4.352
4.353
4.354
4.355
4.356
4.357
4.358
4.359
4.36
4.361
4.362
4.363
4.364
4.365
4.366
4.367
4.368
4.369
4.37
4.371
4.372
4.373
4.374
4.375
4.376
4.377
4.378
4.3790000000000004
4.38
4.381
4.382
4.383
4.384
4.385
4.386
4.3870000000000005
4.388
4.389
4.39
4.391
4.392
4.393
4.394
4.3950000000000005
4.396
4.397
4.398
4.399
4.4
4.401
4.402
4.4030000000000005
4.404
4.405
4.406
4.407
4.408
4.409
4.41
4.4110000000000005
4.412
4.413
4.414
4.415
4.416
4.417
4.418
4.4190000000000005
4.42
4.421
4.422
4.423
4.424
4.425
4.426
4.4270000000000005
4.428
4.429
4.43
4.431
4.432
4.433
4.434
4.4350000000000005
4.436
4.437
4.438
4.439
4.44
4.441
4.442
4.4430000000000005
4.444
4.445
4.446
4.447
4.448
4.449
4.45
4.4510000000000005
4.452
4.453
4.454
4.455
4.456
4.457
4.458
4.4590000000000005
4.46
4.461
4.462
4.463
4.464
4.465
4.466
4.4670000000000005
4.468
4.469
4.47
4.471
4.472
4.473
4.474
4.4750000000000005
4.476
4.477
4.478
4.479
4.48
4.481
4.482
4.483
4.484
4.485
4.486
4.487
4.488
4.489
4.49
4.491
4.492
4.493
4.494
4.495
4.496
4.497
4.498
4.499
4.5
4.501
4.502
4.503
4.5040000000000004
4.505
4.506
4.507
4.508
4.509
4.51
4.511
4.5120000000000005
4.513
4.514
4.515
4.516
4.517
4.518
4.519
4.5200000000000005
4.521
4.522
4.523
4.524
4.525
4.526
4.527
4.5280000000000005
4.529
4.53
4.531
4.532
4.533
4.534
4.535
4.5360000000000005
4.537
4.538
4.539
4.54
4.541
4.542
4.543
4.5440000000000005
4.545
4.546
4.547
4.548
4.549
4.55
4.551
4.5520000000000005
4.553
4.554
4.555
4.556
4.557
4.558
4.559
4.5600000000000005
4.561
4.562
4.563
4.564
4.565
4.566
4.567
4.5680000000000005
4.569
4.57
4.571
4.572
4.573
4.574
4.575
4.5760000000000005
4.577
4.578
4.579
4.58
4.581
4.582
4.583
4.5840000000000005
4.585
4.586
4.587
4.588
4.589
4.59
4.591
4.5920000000000005
4.593
4.594
4.595
4.596
4.597
4.598
4.599
4.6000000000000005
4.601
4.602
4.603
4.604
4.605
4.606
4.607
4.6080000000000005
4.609
4.61
4.611
4.612
4.613
4.614
4.615
4.616
4.617
4.618
4.619
4.62
4.621
4.622
4.623
4.624
4.625
4.626
4.627
4.628
4.6290000000000004
4.63
4.631
4.632
4.633
4.634
4.635
4.636
4.6370000000000005
4.638
4.639
4.64
4.641
4.642
4.643
4.644
4.6450000000000005
4.646
4.647
4.648
4.649
4.65
4.651
4.652
4.6530000000000005
4.654
4.655
4.656
4.657
4.658
4.659
4.66
4.6610000000000005
4.662
4.663
4.664
4.665
4.666
4.667
4.668
4.6690000000000005
4.67
4.671
4.672
4.673
4.674
4.675
4.676
4.6770000000000005
4.678
4.679
4.68
4.681
4.682
4.683
4.684
4.6850000000000005
4.686
4.687
4.688
4.689
4.69
4.691
4.692
4.6930000000000005
4.694
4.695
4.696
4.697
4.698
4.699
4.7
4.7010000000000005
4.702
4.703
4.704
4.705
4.706
4.707
4.708
4.7090000000000005
4.71
4.711
4.712
4.713
4.714
4.715
4.716
4.7170000000000005
4.718
4.719
4.72
4.721
4.722
4.723
4.724
4.7250000000000005
4.726
4.727
4.728
4.729
4.73
4.731
4.732
4.7330000000000005
4.734
4.735
4.736
4.737
4.738
4.739
4.74
4.741
4.742
4.743
4.744
4.745
4.746
4.747
4.748
4.749
4.75
4.751
4.752
4.753
4.7540000000000004
4.755
4.756
4.757
4.758
4.759
4.76
4.761
4.7620000000000005
4.763
4.764
4.765
4.766
4.767
4.768
4.769
4.7700000000000005
4.771
4.772
4.773
4.774
4.775
4.776
4.777
4.7780000000000005
4.779
4.78
4.781
4.782
4.783
4.784
4.785
4.7860000000000005
4.787
4.788
4.789
4.79
4.791
4.792
4.793
4.7940000000000005
4.795
4.796
4.797
4.798
4.799
4.8
4.801
4.8020000000000005
4.803
4.804
4.805
4.806
4.807
4.808
4.809
4.8100000000000005
4.811
4.812
4.813
4.814
4.815
4.816
4.817
4.8180000000000005
4.819
4.82
4.821
4.822
4.823
4.824
4.825
4.8260000000000005
4.827
4.828
4.829
4.83
4.831
4.832
4.833
4.8340000000000005
4.835
4.836
4.837
4.838
4.839
4.84
4.841
4.8420000000000005
4.843
4.844
4.845
4.846
4.847
4.848
4.849
4.8500000000000005
4.851
4.852
4.853
4.854
4.855
4.856
4.857
4.8580000000000005
4.859
4.86
4.861
4.862
4.863
4.864
4.865
4.866
4.867
4.868
4.869
4.87
4.871
4.872
4.873
4.874
4.875
4.876
4.877
4.878
4.8790000000000004
4.88
4.881
4.882
4.883
4.884
4.885
4.886
4.8870000000000005
4.888
4.889
4.89
4.891
4.892
4.893
4.894
4.8950000000000005
4.896
4.897
4.898
4.899
4.9
4.901
4.902
4.9030000000000005
4.904
4.905
4.906
4.907
4.908
4.909
4.91
4.9110000000000005
4.912
4.913
4.914
4.915
4.916
4.917
4.918
4.9190000000000005
4.92
4.921
4.922
4.923
4.924
4.925
4.926
4.9270000000000005
4.928
4.929
4.93
4.931
4.932
4.933
4.934
4.9350000000000005
4.936
4.937
4.938
4.939
4.94
4.941
4.942
4.9430000000000005
4.944
4.945
4.946
4.947
4.948
4.949
4.95
4.9510000000000005
4.952
4.953
4.954
4.955
4.956
4.957
4.958
4.9590000000000005
4.96
4.961
4.962
4.963
4.964
4.965
4.966
4.9670000000000005
4.968
4.969
4.97
4.971
4.972
4.973
4.974
4.9750000000000005
4.976
4.977
4.978
4.979
4.98
4.981
4.982
4.9830000000000005
4.984
4.985
4.986
4.987
4.988
4.989
4.99
4.9910000000000005
4.992
4.993
4.994
4.995
4.996
4.997
4.998
4.999
CPU times: user 1.85 s, sys: 19.7 ms, total: 1.87 s
Wall time: 1.85 s
3.4.4. Time dependent boundary conditions#
\(u|_{\partial \Omega} = u_D(t)\), \(f=0\)
implicit Euler time stepping method, non-incremental form:
\[ M^\ast u^{n+1} = (M + \Delta t A) u^{n+1} = M u^n \]Homogenize w.r.t. to boundary conditions, i.e. we split
\[ u^{n+1} = u^{n+1}_0 + u^{n+1}_D \]where \(u^{n+1}_D\) is a (discrete) function with correct boundary condition:
uD = CoefficientFunction( (cos(5*(x+t))*y ))
time = 0.0
t.Set(0.0)
gfu.Set(uD,BND)
Draw(gfu,mesh,"uD");
def TimeStepping_app3(invmstar, initial_cond = None, t0 = 0, tend = 2,
nsamples = 10):
if initial_cond:
gfu.Set(initial_cond)
cnt = 0; time = t0
sample_int = int(floor(tend / dt / nsamples)+1)
gfuD = GridFunction(gfu.space)
gfut = GridFunction(gfu.space,multidim=0)
gfut.AddMultiDimComponent(gfu.vec)
while time < tend - 0.5 * dt:
t.Set(time)
gfuD.Set(uD,BND)
res = m.mat * gfu.vec - mstar *gfuD.vec
gfu.vec.data = gfuD.vec + invmstar * res
print("\r",time,end="")
if cnt % sample_int == 0:
gfut.AddMultiDimComponent(gfu.vec)
cnt += 1; time = cnt * dt
return gfut
%%time
gfut_a3 = TimeStepping_app3(invmstar, initial_cond=CF(gaussp),tend=2)
0
0.001
0.002
0.003
0.004
0.005
0.006
0.007
0.008
0.009000000000000001
0.01
0.011
0.012
0.013000000000000001
0.014
0.015
0.016
0.017
0.018000000000000002
0.019
0.02
0.021
0.022
0.023
0.024
0.025
0.026000000000000002
0.027
0.028
0.029
0.03
0.031
0.032
0.033
0.034
0.035
0.036000000000000004
0.037
0.038
0.039
0.04
0.041
0.042
0.043000000000000003
0.044
0.045
0.046
0.047
0.048
0.049
0.05
0.051000000000000004
0.052000000000000005
0.053
0.054
0.055
0.056
0.057
0.058
0.059000000000000004
0.06
0.061
0.062
0.063
0.064
0.065
0.066
0.067
0.068
0.069
0.07
0.07100000000000001
0.07200000000000001
0.073
0.074
0.075
0.076
0.077
0.078
0.079
0.08
0.081
0.082
0.083
0.084
0.085
0.08600000000000001
0.08700000000000001
0.088
0.089
0.09
0.091
0.092
0.093
0.094
0.095
0.096
0.097
0.098
0.099
0.1
0.101
0.10200000000000001
0.10300000000000001
0.10400000000000001
0.105
0.106
0.107
0.108
0.109
0.11
0.111
0.112
0.113
0.114
0.115
0.116
0.117
0.11800000000000001
0.11900000000000001
0.12
0.121
0.122
0.123
0.124
0.125
0.126
0.127
0.128
0.129
0.13
0.131
0.132
0.133
0.134
0.135
0.136
0.137
0.138
0.139
0.14
0.14100000000000001
0.14200000000000002
0.14300000000000002
0.14400000000000002
0.145
0.146
0.147
0.148
0.149
0.15
0.151
0.152
0.153
0.154
0.155
0.156
0.157
0.158
0.159
0.16
0.161
0.162
0.163
0.164
0.165
0.166
0.167
0.168
0.169
0.17
0.171
0.17200000000000001
0.17300000000000001
0.17400000000000002
0.17500000000000002
0.176
0.177
0.178
0.179
0.18
0.181
0.182
0.183
0.184
0.185
0.186
0.187
0.188
0.189
0.19
0.191
0.192
0.193
0.194
0.195
0.196
0.197
0.198
0.199
0.2
0.201
0.202
0.203
0.20400000000000001
0.20500000000000002
0.20600000000000002
0.20700000000000002
0.20800000000000002
0.209
0.21
0.211
0.212
0.213
0.214
0.215
0.216
0.217
0.218
0.219
0.22
0.221
0.222
0.223
0.224
0.225
0.226
0.227
0.228
0.229
0.23
0.231
0.232
0.233
0.234
0.23500000000000001
0.23600000000000002
0.23700000000000002
0.23800000000000002
0.23900000000000002
0.24
0.241
0.242
0.243
0.244
0.245
0.246
0.247
0.248
0.249
0.25
0.251
0.252
0.253
0.254
0.255
0.256
0.257
0.258
0.259
0.26
0.261
0.262
0.263
0.264
0.265
0.266
0.267
0.268
0.269
0.27
0.271
0.272
0.273
0.274
0.275
0.276
0.277
0.278
0.279
0.28
0.281
0.28200000000000003
0.28300000000000003
0.28400000000000003
0.28500000000000003
0.28600000000000003
0.28700000000000003
0.28800000000000003
0.289
0.29
0.291
0.292
0.293
0.294
0.295
0.296
0.297
0.298
0.299
0.3
0.301
0.302
0.303
0.304
0.305
0.306
0.307
0.308
0.309
0.31
0.311
0.312
0.313
0.314
0.315
0.316
0.317
0.318
0.319
0.32
0.321
0.322
0.323
0.324
0.325
0.326
0.327
0.328
0.329
0.33
0.331
0.332
0.333
0.334
0.335
0.336
0.337
0.338
0.339
0.34
0.341
0.342
0.343
0.34400000000000003
0.34500000000000003
0.34600000000000003
0.34700000000000003
0.34800000000000003
0.34900000000000003
0.35000000000000003
0.35100000000000003
0.352
0.353
0.354
0.355
0.356
0.357
0.358
0.359
0.36
0.361
0.362
0.363
0.364
0.365
0.366
0.367
0.368
0.369
0.37
0.371
0.372
0.373
0.374
0.375
0.376
0.377
0.378
0.379
0.38
0.381
0.382
0.383
0.384
0.385
0.386
0.387
0.388
0.389
0.39
0.391
0.392
0.393
0.394
0.395
0.396
0.397
0.398
0.399
0.4
0.401
0.402
0.403
0.404
0.405
0.406
0.40700000000000003
0.40800000000000003
0.40900000000000003
0.41000000000000003
0.41100000000000003
0.41200000000000003
0.41300000000000003
0.41400000000000003
0.41500000000000004
0.41600000000000004
0.417
0.418
0.419
0.42
0.421
0.422
0.423
0.424
0.425
0.426
0.427
0.428
0.429
0.43
0.431
0.432
0.433
0.434
0.435
0.436
0.437
0.438
0.439
0.44
0.441
0.442
0.443
0.444
0.445
0.446
0.447
0.448
0.449
0.45
0.451
0.452
0.453
0.454
0.455
0.456
0.457
0.458
0.459
0.46
0.461
0.462
0.463
0.464
0.465
0.466
0.467
0.468
0.46900000000000003
0.47000000000000003
0.47100000000000003
0.47200000000000003
0.47300000000000003
0.47400000000000003
0.47500000000000003
0.47600000000000003
0.47700000000000004
0.47800000000000004
0.47900000000000004
0.48
0.481
0.482
0.483
0.484
0.485
0.486
0.487
0.488
0.489
0.49
0.491
0.492
0.493
0.494
0.495
0.496
0.497
0.498
0.499
0.5
0.501
0.502
0.503
0.504
0.505
0.506
0.507
0.508
0.509
0.51
0.511
0.512
0.513
0.514
0.515
0.516
0.517
0.518
0.519
0.52
0.521
0.522
0.523
0.524
0.525
0.526
0.527
0.528
0.529
0.53
0.531
0.532
0.533
0.534
0.535
0.536
0.537
0.538
0.539
0.54
0.541
0.542
0.543
0.544
0.545
0.546
0.547
0.548
0.549
0.55
0.551
0.552
0.553
0.554
0.555
0.556
0.557
0.558
0.559
0.56
0.561
0.562
0.5630000000000001
0.5640000000000001
0.5650000000000001
0.5660000000000001
0.5670000000000001
0.5680000000000001
0.5690000000000001
0.5700000000000001
0.5710000000000001
0.5720000000000001
0.5730000000000001
0.5740000000000001
0.5750000000000001
0.5760000000000001
0.577
0.578
0.579
0.58
0.581
0.582
0.583
0.584
0.585
0.586
0.587
0.588
0.589
0.59
0.591
0.592
0.593
0.594
0.595
0.596
0.597
0.598
0.599
0.6
0.601
0.602
0.603
0.604
0.605
0.606
0.607
0.608
0.609
0.61
0.611
0.612
0.613
0.614
0.615
0.616
0.617
0.618
0.619
0.62
0.621
0.622
0.623
0.624
0.625
0.626
0.627
0.628
0.629
0.63
0.631
0.632
0.633
0.634
0.635
0.636
0.637
0.638
0.639
0.64
0.641
0.642
0.643
0.644
0.645
0.646
0.647
0.648
0.649
0.65
0.651
0.652
0.653
0.654
0.655
0.656
0.657
0.658
0.659
0.66
0.661
0.662
0.663
0.664
0.665
0.666
0.667
0.668
0.669
0.67
0.671
0.672
0.673
0.674
0.675
0.676
0.677
0.678
0.679
0.68
0.681
0.682
0.683
0.684
0.685
0.686
0.687
0.6880000000000001
0.6890000000000001
0.6900000000000001
0.6910000000000001
0.6920000000000001
0.6930000000000001
0.6940000000000001
0.6950000000000001
0.6960000000000001
0.6970000000000001
0.6980000000000001
0.6990000000000001
0.7000000000000001
0.7010000000000001
0.7020000000000001
0.7030000000000001
0.704
0.705
0.706
0.707
0.708
0.709
0.71
0.711
0.712
0.713
0.714
0.715
0.716
0.717
0.718
0.719
0.72
0.721
0.722
0.723
0.724
0.725
0.726
0.727
0.728
0.729
0.73
0.731
0.732
0.733
0.734
0.735
0.736
0.737
0.738
0.739
0.74
0.741
0.742
0.743
0.744
0.745
0.746
0.747
0.748
0.749
0.75
0.751
0.752
0.753
0.754
0.755
0.756
0.757
0.758
0.759
0.76
0.761
0.762
0.763
0.764
0.765
0.766
0.767
0.768
0.769
0.77
0.771
0.772
0.773
0.774
0.775
0.776
0.777
0.778
0.779
0.78
0.781
0.782
0.783
0.784
0.785
0.786
0.787
0.788
0.789
0.79
0.791
0.792
0.793
0.794
0.795
0.796
0.797
0.798
0.799
0.8
0.801
0.802
0.803
0.804
0.805
0.806
0.807
0.808
0.809
0.81
0.811
0.812
0.8130000000000001
0.8140000000000001
0.8150000000000001
0.8160000000000001
0.8170000000000001
0.8180000000000001
0.8190000000000001
0.8200000000000001
0.8210000000000001
0.8220000000000001
0.8230000000000001
0.8240000000000001
0.8250000000000001
0.8260000000000001
0.8270000000000001
0.8280000000000001
0.8290000000000001
0.8300000000000001
0.8310000000000001
0.8320000000000001
0.833
0.834
0.835
0.836
0.837
0.838
0.839
0.84
0.841
0.842
0.843
0.844
0.845
0.846
0.847
0.848
0.849
0.85
0.851
0.852
0.853
0.854
0.855
0.856
0.857
0.858
0.859
0.86
0.861
0.862
0.863
0.864
0.865
0.866
0.867
0.868
0.869
0.87
0.871
0.872
0.873
0.874
0.875
0.876
0.877
0.878
0.879
0.88
0.881
0.882
0.883
0.884
0.885
0.886
0.887
0.888
0.889
0.89
0.891
0.892
0.893
0.894
0.895
0.896
0.897
0.898
0.899
0.9
0.901
0.902
0.903
0.904
0.905
0.906
0.907
0.908
0.909
0.91
0.911
0.912
0.913
0.914
0.915
0.916
0.917
0.918
0.919
0.92
0.921
0.922
0.923
0.924
0.925
0.926
0.927
0.928
0.929
0.93
0.931
0.932
0.933
0.934
0.935
0.936
0.937
0.9380000000000001
0.9390000000000001
0.9400000000000001
0.9410000000000001
0.9420000000000001
0.9430000000000001
0.9440000000000001
0.9450000000000001
0.9460000000000001
0.9470000000000001
0.9480000000000001
0.9490000000000001
0.9500000000000001
0.9510000000000001
0.9520000000000001
0.9530000000000001
0.9540000000000001
0.9550000000000001
0.9560000000000001
0.9570000000000001
0.9580000000000001
0.9590000000000001
0.96
0.961
0.962
0.963
0.964
0.965
0.966
0.967
0.968
0.969
0.97
0.971
0.972
0.973
0.974
0.975
0.976
0.977
0.978
0.979
0.98
0.981
0.982
0.983
0.984
0.985
0.986
0.987
0.988
0.989
0.99
0.991
0.992
0.993
0.994
0.995
0.996
0.997
0.998
0.999
1.0
1.0010000000000001
1.002
1.0030000000000001
1.004
1.0050000000000001
1.006
1.0070000000000001
1.008
1.0090000000000001
1.01
1.0110000000000001
1.012
1.0130000000000001
1.014
1.0150000000000001
1.016
1.0170000000000001
1.018
1.0190000000000001
1.02
1.0210000000000001
1.022
1.0230000000000001
1.024
1.025
1.026
1.027
1.028
1.029
1.03
1.031
1.032
1.033
1.034
1.035
1.036
1.037
1.038
1.039
1.04
1.041
1.042
1.043
1.044
1.045
1.046
1.047
1.048
1.049
1.05
1.051
1.052
1.053
1.054
1.055
1.056
1.057
1.058
1.059
1.06
1.061
1.062
1.063
1.064
1.065
1.066
1.067
1.068
1.069
1.07
1.071
1.072
1.073
1.074
1.075
1.076
1.077
1.078
1.079
1.08
1.081
1.082
1.083
1.084
1.085
1.086
1.087
1.088
1.089
1.09
1.091
1.092
1.093
1.094
1.095
1.096
1.097
1.098
1.099
1.1
1.101
1.102
1.103
1.104
1.105
1.106
1.107
1.108
1.109
1.11
1.111
1.112
1.113
1.114
1.115
1.116
1.117
1.118
1.119
1.12
1.121
1.122
1.123
1.124
1.125
1.1260000000000001
1.127
1.1280000000000001
1.129
1.1300000000000001
1.131
1.1320000000000001
1.133
1.1340000000000001
1.135
1.1360000000000001
1.137
1.1380000000000001
1.139
1.1400000000000001
1.141
1.1420000000000001
1.143
1.1440000000000001
1.145
1.1460000000000001
1.147
1.1480000000000001
1.149
1.1500000000000001
1.151
1.1520000000000001
1.153
1.154
1.155
1.156
1.157
1.158
1.159
1.16
1.161
1.162
1.163
1.164
1.165
1.166
1.167
1.168
1.169
1.17
1.171
1.172
1.173
1.174
1.175
1.176
1.177
1.178
1.179
1.18
1.181
1.182
1.183
1.184
1.185
1.186
1.187
1.188
1.189
1.19
1.191
1.192
1.193
1.194
1.195
1.196
1.197
1.198
1.199
1.2
1.201
1.202
1.203
1.204
1.205
1.206
1.207
1.208
1.209
1.21
1.211
1.212
1.213
1.214
1.215
1.216
1.217
1.218
1.219
1.22
1.221
1.222
1.223
1.224
1.225
1.226
1.227
1.228
1.229
1.23
1.231
1.232
1.233
1.234
1.235
1.236
1.237
1.238
1.239
1.24
1.241
1.242
1.243
1.244
1.245
1.246
1.247
1.248
1.249
1.25
1.2510000000000001
1.252
1.2530000000000001
1.254
1.2550000000000001
1.256
1.2570000000000001
1.258
1.2590000000000001
1.26
1.2610000000000001
1.262
1.2630000000000001
1.264
1.2650000000000001
1.266
1.2670000000000001
1.268
1.2690000000000001
1.27
1.2710000000000001
1.272
1.2730000000000001
1.274
1.2750000000000001
1.276
1.2770000000000001
1.278
1.2790000000000001
1.28
1.281
1.282
1.283
1.284
1.285
1.286
1.287
1.288
1.289
1.29
1.291
1.292
1.293
1.294
1.295
1.296
1.297
1.298
1.299
1.3
1.301
1.302
1.303
1.304
1.305
1.306
1.307
1.308
1.309
1.31
1.311
1.312
1.313
1.314
1.315
1.316
1.317
1.318
1.319
1.32
1.321
1.322
1.323
1.324
1.325
1.326
1.327
1.328
1.329
1.33
1.331
1.332
1.333
1.334
1.335
1.336
1.337
1.338
1.339
1.34
1.341
1.342
1.343
1.344
1.345
1.346
1.347
1.348
1.349
1.35
1.351
1.352
1.353
1.354
1.355
1.356
1.357
1.358
1.359
1.36
1.361
1.362
1.363
1.364
1.365
1.366
1.367
1.368
1.369
1.37
1.371
1.372
1.373
1.374
1.375
1.3760000000000001
1.377
1.3780000000000001
1.379
1.3800000000000001
1.381
1.3820000000000001
1.383
1.3840000000000001
1.385
1.3860000000000001
1.387
1.3880000000000001
1.389
1.3900000000000001
1.391
1.3920000000000001
1.393
1.3940000000000001
1.395
1.3960000000000001
1.397
1.3980000000000001
1.399
1.4000000000000001
1.401
1.4020000000000001
1.403
1.4040000000000001
1.405
1.4060000000000001
1.407
1.408
1.409
1.41
1.411
1.412
1.413
1.414
1.415
1.416
1.417
1.418
1.419
1.42
1.421
1.422
1.423
1.424
1.425
1.426
1.427
1.428
1.429
1.43
1.431
1.432
1.433
1.434
1.435
1.436
1.437
1.438
1.439
1.44
1.441
1.442
1.443
1.444
1.445
1.446
1.447
1.448
1.449
1.45
1.451
1.452
1.453
1.454
1.455
1.456
1.457
1.458
1.459
1.46
1.461
1.462
1.463
1.464
1.465
1.466
1.467
1.468
1.469
1.47
1.471
1.472
1.473
1.474
1.475
1.476
1.477
1.478
1.479
1.48
1.481
1.482
1.483
1.484
1.485
1.486
1.487
1.488
1.489
1.49
1.491
1.492
1.493
1.494
1.495
1.496
1.497
1.498
1.499
1.5
1.5010000000000001
1.502
1.5030000000000001
1.504
1.5050000000000001
1.506
1.5070000000000001
1.508
1.5090000000000001
1.51
1.5110000000000001
1.512
1.5130000000000001
1.514
1.5150000000000001
1.516
1.5170000000000001
1.518
1.5190000000000001
1.52
1.5210000000000001
1.522
1.5230000000000001
1.524
1.5250000000000001
1.526
1.5270000000000001
1.528
1.5290000000000001
1.53
1.5310000000000001
1.532
1.5330000000000001
1.534
1.5350000000000001
1.536
1.537
1.538
1.539
1.54
1.541
1.542
1.543
1.544
1.545
1.546
1.547
1.548
1.549
1.55
1.551
1.552
1.553
1.554
1.555
1.556
1.557
1.558
1.559
1.56
1.561
1.562
1.563
1.564
1.565
1.566
1.567
1.568
1.569
1.57
1.571
1.572
1.573
1.574
1.575
1.576
1.577
1.578
1.579
1.58
1.581
1.582
1.583
1.584
1.585
1.586
1.587
1.588
1.589
1.59
1.591
1.592
1.593
1.594
1.595
1.596
1.597
1.598
1.599
1.6
1.601
1.602
1.603
1.604
1.605
1.606
1.607
1.608
1.609
1.61
1.611
1.612
1.613
1.614
1.615
1.616
1.617
1.618
1.619
1.62
1.621
1.622
1.623
1.624
1.625
1.6260000000000001
1.627
1.6280000000000001
1.629
1.6300000000000001
1.631
1.6320000000000001
1.633
1.6340000000000001
1.635
1.6360000000000001
1.637
1.6380000000000001
1.639
1.6400000000000001
1.641
1.6420000000000001
1.643
1.6440000000000001
1.645
1.6460000000000001
1.647
1.6480000000000001
1.649
1.6500000000000001
1.651
1.6520000000000001
1.653
1.6540000000000001
1.655
1.6560000000000001
1.657
1.6580000000000001
1.659
1.6600000000000001
1.661
1.6620000000000001
1.663
1.6640000000000001
1.665
1.666
1.667
1.668
1.669
1.67
1.671
1.672
1.673
1.674
1.675
1.676
1.677
1.678
1.679
1.68
1.681
1.682
1.683
1.684
1.685
1.686
1.687
1.688
1.689
1.69
1.691
1.692
1.693
1.694
1.695
1.696
1.697
1.698
1.699
1.7
1.701
1.702
1.703
1.704
1.705
1.706
1.707
1.708
1.709
1.71
1.711
1.712
1.713
1.714
1.715
1.716
1.717
1.718
1.719
1.72
1.721
1.722
1.723
1.724
1.725
1.726
1.727
1.728
1.729
1.73
1.731
1.732
1.733
1.734
1.735
1.736
1.737
1.738
1.739
1.74
1.741
1.742
1.743
1.744
1.745
1.746
1.747
1.748
1.749
1.75
1.7510000000000001
1.752
1.7530000000000001
1.754
1.7550000000000001
1.756
1.7570000000000001
1.758
1.7590000000000001
1.76
1.7610000000000001
1.762
1.7630000000000001
1.764
1.7650000000000001
1.766
1.7670000000000001
1.768
1.7690000000000001
1.77
1.7710000000000001
1.772
1.7730000000000001
1.774
1.7750000000000001
1.776
1.7770000000000001
1.778
1.7790000000000001
1.78
1.7810000000000001
1.782
1.7830000000000001
1.784
1.7850000000000001
1.786
1.7870000000000001
1.788
1.7890000000000001
1.79
1.7910000000000001
1.792
1.793
1.794
1.795
1.796
1.797
1.798
1.799
1.8
1.801
1.802
1.803
1.804
1.805
1.806
1.807
1.808
1.809
1.81
1.811
1.812
1.813
1.814
1.815
1.816
1.817
1.818
1.819
1.82
1.821
1.822
1.823
1.824
1.825
1.826
1.827
1.828
1.829
1.83
1.831
1.832
1.833
1.834
1.835
1.836
1.837
1.838
1.839
1.84
1.841
1.842
1.843
1.844
1.845
1.846
1.847
1.848
1.849
1.85
1.851
1.852
1.853
1.854
1.855
1.856
1.857
1.858
1.859
1.86
1.861
1.862
1.863
1.864
1.865
1.866
1.867
1.868
1.869
1.87
1.871
1.872
1.873
1.874
1.875
1.8760000000000001
1.877
1.8780000000000001
1.879
1.8800000000000001
1.881
1.8820000000000001
1.883
1.8840000000000001
1.885
1.8860000000000001
1.887
1.8880000000000001
1.889
1.8900000000000001
1.891
1.8920000000000001
1.893
1.8940000000000001
1.895
1.8960000000000001
1.897
1.8980000000000001
1.899
1.9000000000000001
1.901
1.9020000000000001
1.903
1.9040000000000001
1.905
1.9060000000000001
1.907
1.9080000000000001
1.909
1.9100000000000001
1.911
1.9120000000000001
1.913
1.9140000000000001
1.915
1.9160000000000001
1.917
1.9180000000000001
1.919
1.92
1.921
1.922
1.923
1.924
1.925
1.926
1.927
1.928
1.929
1.93
1.931
1.932
1.933
1.934
1.935
1.936
1.937
1.938
1.939
1.94
1.941
1.942
1.943
1.944
1.945
1.946
1.947
1.948
1.949
1.95
1.951
1.952
1.953
1.954
1.955
1.956
1.957
1.958
1.959
1.96
1.961
1.962
1.963
1.964
1.965
1.966
1.967
1.968
1.969
1.97
1.971
1.972
1.973
1.974
1.975
1.976
1.977
1.978
1.979
1.98
1.981
1.982
1.983
1.984
1.985
1.986
1.987
1.988
1.989
1.99
1.991
1.992
1.993
1.994
1.995
1.996
1.997
1.998
1.999CPU times: user 533 ms, sys: 0 ns, total: 533 ms
Wall time: 531 ms
Draw(gfut_a3, mesh, interpolate_multidim=True, animate=True,
#settings = {"subdivision" : 10},
deformation = False, min = 0, max = 1, autoscale = True);