I’m not a TAO expert, you’ll have to try different methods. Also, I still don’t know what you are trying to solve exactly, so it’s difficult for me to give you precise pointers. SNESSolve either solves F(x) = 0, or F(x) = b. You are free to put what you want in the output vector, but this acts as an initial guess for nonlinear solves, so it’s best to use something not too far from the solution otherwise your Newton may never converge.