Hello,
I am using NGSolve to solve Maxwell’s equations in time-harmonic form.
The problem that I work on is B=curl(u) * curl(v)+betauv. I use the first order Nedelec space V for the approximate solution and use an auxiliary subspace W of the Nedelec space (W =span {second order face basis+third order volume basis) for computing the error function ‘’ e’’.
I print the condition numbers of the stiffness matrices on V and W. The code produce results for beta>0 and for small negative values of beta, e.g. {-10^(-4), -10^(-2) ,-10}, but with big negative values of beta like -10^(2) or -10^(4) the code gives the error
Eigensystem: Preconditioner negative
Traceback (most recent call last):
File “”, line 195, in
File “”, line 127, in SolveBVP
ValueError: max() arg is an empty sequence
I am not quite familiar with using Preconditioners, I tried using different types of them but still have the same error. I am not sure which type of them work fine with my problem.
I am grateful for any explanation or help.
Best,
Ahmed
Here is my python script.
Attachment: FEP_Example1_UniformRef.py