[petsc-users] Using a previous update to ameliorate jacobian near singularity
Subramanya Sadasiva
potaman at outlook.com
Sun Nov 17 13:42:43 CST 2013
Hi,
I am trying to solve a degenerate cahn hilliard inequality using petsc_DM and virs through libmesh. The problem is that the jacobian for this system has a nearly singular block owing to the \delta t term multiplying the K
[ K + M M ] [ \delta phi] = -R_phi
[ M K deltat] [\delta mu ] = -R_mu
This leads to the unfortunate situation that the time stepping actually fails for very small timesteps. a solution that seems possible is to add a constant mass matrix to the K delta t, making the system
[ K + M M ] [ \delta phi] = -R_phi
[ M K deltat +M] [\delta mu ] = -R_mu + M \delta mu
And using the \delta mu from the previous timestep. I was just wondering if there is any way to get the pre-line search value of the \delta mu? Is it okay to get the \alpha from the linesearch and divide the previous change by the \alpha?
I hope I am making sense here.
Thanks,
Subramanya
More information about the petsc-users
mailing list