I appreciate your answer. And can I ask you another question?
The boundary condition of Maxwell equation is u x n = 0, i.e., curl u = 0. Then how to implement the boundary condition. In others example, like finite element function space V = H(curl, 0), somebody implements boundary condition by bc = DirichletBC(V, Constant(0,0,0), boundary).
But I think it's not right.
If u = 0 on boundary, bc = DirichletBC(V, Constant(0,0,0), boundary) is OK.
But here is curl u = 0, not u = 0 on boundary, bc = DirichletBC(V, Constant(0,0,0), boundary) is right???