Hi,
This is a beginner question. I am solving an EM problem using N1curl elements. The weak form has imaginary term and so I split the equation into real and imaginary parts, and used mixed space formulation to solve coupled system. Broadly, the results looked right but it was slightly non-symmetrical. So I would like to try assemble_system(A,b,bcs) to make the coefficient matrix symmetric instead of using "solve(a == L, U, bcs)". I am having problem in passing parameters to solve() after assembling and split the final solution. Specifically, I am not sure how to pass the second parameter to solve() to store the solutions for a mixed function space. Any help ?
Here is the part of the code:
V = FunctionSpace(mesh, "Nedelec 1st kind H(curl)", 2)
Q = FunctionSpace(mesh, "Nedelec 1st kind H(curl)", 2)
combined_space = V * Q
....
#solve(a == L, Afield, bcs) # **this works but results were not symmetric**
A, b = assemble_system(a, L, bcs)
u = Function(combined_space)
U=u.vector() # **how do I write this for combined space**
solve(A,U,b)
Ur, Ui = U.split(deepcopy=True)