I am trying to solve Poisson-Nernst-Planck system of equations for ions diffusion problem using finite volume method. Nernst-Planck equation for mass transport and Poisson equation for electrostatic charge distribution.My jacobian is sparse and ill-conditioned (condition number ~ 1E+14). For a system of 4 ions and three control volumes an schematic Jacobian looks like this:  I use Newton-Raphson method to solve it. The timesteps don't go larger than 1E-7 seconds and eventually it doesn't converge and crashes. In the mean time when I pause the run and check the results they are not correct.One solution that I found was to assume $\epsilon/F = 0$ as $\epsilon/F \sim 1E-14$). In this case condition number becomes ~1E+12 although after ~ 2000 timesteps condition number jumps to 1E+30. But the code goes to larger timesteps (up to 1E-3 second) and the result seems right but not very precise. I need to speed up the code as this timestep is not practical. Do you think using direct solver is an option?Do you think higher quality initial guess for electric potential will help?Is using solvers with quad precision helpful? Is it possible that jacobian assembly is not right?many thanks
Poisson-Nernst-Planck equations with ill-conditioned sparse matrix
sparse;poisson;newton method;jacobian