Hi, everyone,
I am a newer to fenics. So anyone's answer is helpful to me. Thanks!
When I run the below code, it stops at Calling FFC just-in-time(JIT) compiler, this may take some time and there is no error occuring.
from fenics import *
mesh = UnitCubeMesh(10, 10, 10)
cell = "tetrahedron"
P0 = FiniteElement('DG',cell,0)
P1 = FiniteElement('P',cell,1)
P3_vec = VectorElement('P',cell,3)
Nedelec_1st = FiniteElement('N1curl',cell,1)
element=MixedElement([P0,P1,P1,P3_vec,Nedelec_1st,P1])
V=FunctionSpace(mesh,element)
z,v,q,eta,deta,s=TestFunctions(V)
y,u,p,zeta,gamma,r=TrialFunctions(V)
define the 2 bilinear forms
alpha=Constant(1.3)
beta=Constant(1.5)
a = yzdx-inner(grad(r),grad(v))dx+inner(gamma,grad(q))dx+\
alphadiv(zeta)div(eta)dx+inner(curl(zeta),curl(eta))dx+inner(curl(gamma),curl(eta))dx+\
inner(grad(r),eta)dx+inner(grad(p),deta)dx+\
inner(curl(zeta),curl(deta))dx-inner(grad(u),grad(s))dx+\
inner(zeta,grad(s))dx
b=betauzdx-alpha(y+div(zeta))vdx+inner(grad(alphabetau),eta)*dx
forming the eigenvalue problem
A=PETScMatrix()
B=PETScMatrix()
assemble(a, tensor=A)
assemble(b, tensor=B)
define a solver of general eigenvalue problem
solver = SLEPcEigenSolver(A)
print("begin.......")
solver.solve(10)
print('the number of converged eigenvalues is :', solver.get_number_converged())
for i in range(10):
r,c = solver.get_eigenvalue(i)
print r,c
print("end.........")
But when I change the line 8 to P3_vec = VectorElement('P',cell,1),the code is right.
I don't know why? I will appreciate your any help.