Can we linearize $T^2$ When solving $T''_x+T''_y+aT^2=0$ by finite difference?

I solved $T''_x+T''_y=0$ in Matlab using a finite difference explicit scheme. But when there is a source term, I come up with a system of nonlinear algebraic equations and I can't solve it anymore.

Is there a better method for solving nonlinear equations without linearizing them?

  • 1
    $\begingroup$ The one way I know of is to use iterative linear solvers, then the square term is made up of a component of the unknown solution you are searching for and a known component. So the equation becomes something like T''(x,n+1) + T''(y,n+1) + a T(n + 1) T(n) = 0, where n represents an iteration number. $\endgroup$ – user3209427 Dec 24 '17 at 13:34
  • 1
    $\begingroup$ If you dont want to solve it exactly but approximately, you can make the following substitution: $T=T_0+/delta T$ With $/delta T$ small. Quadratic terms are then ommitted, and you can solve a linear equation. This only works if $/delta T/T_0$ is small enough. Check it after your calculation. $\endgroup$ – HBR Dec 24 '17 at 15:54

The only systems of equations we know how to solve are linear. Everything else is solved using iterations of linear equations that we hope converge to the solution oft the linear systems. There are a number of ways to do this for nonlinear PDEs, and I've attempted to discuss them in lectures 31.5 to 31.7 here: http://www.math.colostate.edu/~bangerth/videos.html

| cite | improve this answer | |
  • $\begingroup$ Thank you very much sir. I've written the Matlab code of House-Holder Broyden method for solving a system of nonlinear equations. I can implement few equations with this program. My problem is that when I discretize the system I have a lot of equations and I cannot introduce them to my HHB function. $\endgroup$ – Ghartal Dec 25 '17 at 8:45
  • $\begingroup$ I don't know what the Householder-Broyden method is, but in particular I don't know what you mean by "I cannot introduce them to my HHB function". In general, when you ask questions, you need to be more specific than "it doesn't work". $\endgroup$ – Wolfgang Bangerth Dec 26 '17 at 15:42

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.