### help with Wentzell eigenvalue problem.

122

views

0

I am working with the Wentzell eigenvalue problem in a 3-D domain. I am still learning FeniCs and I want to know how to use FeniCs to compute some of the first eigenvalues for the Wentzell problem.

the Wentzell eigenvalue problem is the following.

-Δu = 0 in Ω

-βΔ

Where Δ

The week formulation is

\[ \int_{\Omega}\nabla u \cdot \nabla \phi + \beta\int_{\partial\Omega}\nabla_{\tau}u\cdot\nabla_{\tau}\phi = \int_{\partial\Omega}\lambda u \phi \]

where \[\nabla_{\tau}u = \nabla u - (\nabla u \cdot \textbf{n})\textbf{n}\] and \[\textbf{n}\] is the normal to \[\partial\Omega\]

This is my attempt to deal with the weak formulation. I don´t know how to handle the boundary integral and the eigenvalue.

from fenics import *

from mshr import *

import matplotlib.pyplot as plt

beta=0

#Define 3D geometry

sphere1 = Sphere(Point(0, 0, 0), 1.0)

sphere2 = Sphere(Point(0, 0, 0), 0.5)

g3d = sphere1 - sphere2

#Define mesh and function space

mesh = generate_mesh(g3d, 32)

plot(mesh)

plt.show()

V = FunctionSpace(mesh,"Lagrange", 1)

n = FacetNormal(mesh)

# Define basis and bilinear form

u = TrialFunction(V)

v = TestFunction(V)

a = dot(grad(u), grad(v))*dx

m = beta*dot(grad(u)-dot(grad(u),n)*n, grad(v)-dot(grad(v),n)*n)*ds

L = u*v*ds

I really don´t know what would be the next step I tried reading some examples but I don´t understand quite well the use of some commands as PETScMatrix(),PETScMatrix(). Any suggestion or guidance would be greatly appreciated.

Thank you very much.

the Wentzell eigenvalue problem is the following.

-Δu = 0 in Ω

-βΔ

_{τ}u + ∂_{n}u = λu on ∂ΩWhere Δ

_{τ }is the Laplace-Beltrami operator and ∂_{n }is the normal derivative.The week formulation is

\[ \int_{\Omega}\nabla u \cdot \nabla \phi + \beta\int_{\partial\Omega}\nabla_{\tau}u\cdot\nabla_{\tau}\phi = \int_{\partial\Omega}\lambda u \phi \]

where \[\nabla_{\tau}u = \nabla u - (\nabla u \cdot \textbf{n})\textbf{n}\] and \[\textbf{n}\] is the normal to \[\partial\Omega\]

This is my attempt to deal with the weak formulation. I don´t know how to handle the boundary integral and the eigenvalue.

from fenics import *

from mshr import *

import matplotlib.pyplot as plt

beta=0

#Define 3D geometry

sphere1 = Sphere(Point(0, 0, 0), 1.0)

sphere2 = Sphere(Point(0, 0, 0), 0.5)

g3d = sphere1 - sphere2

#Define mesh and function space

mesh = generate_mesh(g3d, 32)

plot(mesh)

plt.show()

V = FunctionSpace(mesh,"Lagrange", 1)

n = FacetNormal(mesh)

# Define basis and bilinear form

u = TrialFunction(V)

v = TestFunction(V)

a = dot(grad(u), grad(v))*dx

m = beta*dot(grad(u)-dot(grad(u),n)*n, grad(v)-dot(grad(v),n)*n)*ds

L = u*v*ds

I really don´t know what would be the next step I tried reading some examples but I don´t understand quite well the use of some commands as PETScMatrix(),PETScMatrix(). Any suggestion or guidance would be greatly appreciated.

Thank you very much.

Community: FEniCS Project

### 1 Answer

2

Please login to add an answer/comment or follow this question.

https://www.allanswered.com/post/gjvx/eigensolver-vs-other-solvers/