State equation

Contents

State equation#

from ngsolve import *
from netgen.occ import *
from ngsolve.webgui import Draw

Exercise 7.#

geo = OCCGeometry(Circle((0.5, 0.5), 0.5).Face(), dim=2)
mesh = Mesh(geo.GenerateMesh(maxh=0.1))
mesh.Curve(5)

Draw(mesh)
BaseWebGuiScene
f0 = exp(-7**2*((x-0.5)**2 + (y-0.5)**2))

fes = H1(mesh, order=3, dirichlet=".*")

print(fes.ndof)
print(mesh.ne)

u, v = fes.TnT()

a = BilinearForm(fes)
a+=grad(u)*grad(v)*dx
a+=u*v*dx
a.Assemble()

f = LinearForm(fes)
f+=f0*v*dx
f.Assemble()


gfu = GridFunction(fes)
gfu.vec.data = a.mat.Inverse(freedofs = fes.FreeDofs(), inverse="sparsecholesky") * f.vec

Draw(f0, mesh, "f0")
Draw(100*gfu, mesh)
754
157
BaseWebGuiScene