Numerical Handling of Nonlinear Differential Eqns: Reynolds Eqn for Fluid Lubrication

ThomasD

New member
Joined
Aug 20, 2018
Messages
1
Hello, i recently had a numerical problem with A nonlinear differential equation and i found a solution to my problem that works but i dont know exactly why it works.
So heres the problem: The equation is the Reynolds Equation for Fluid Lubrication: https://en.wikipedia.org/wiki/Reynolds_equation which hs to be solved numerically for p using the Finite Difference or Finite Volume Method which results in a huge equation system of the Form A*p=RHS. The interesting part is the last term on the right hand side which for my case looks a bit different: d(h * rho)/dt or after applying the product rule: h*(d rho / dt) + rho (dh / dt). The problem is that in my case the density rho is a function of the pressure p, which makes the whole thing nonlinear. So to find a solution i have to calculate p, then adjust rho, calculate p again and so on until the pressure p does not change anymore between iterations. As you can see there is a time derivative in the above term, so during the time integration i have to approximate that derivative with d rho / dt = (rho_thisstep - rho_laststep) / timestep.
Since those rhos do contain a numerical error, especially the current one and the timestep can get rather small, this derivative produces huge numerical error which causes the whole thing to diverge.
The solution to this problem is to introduce a pressure related density rho# which is defined as rho/p.
-->(rho_thisstep - rho_laststep) / timestep =(rho# * p - rho_laststep) / timestep
Since i am solving for p, i can now move the left summand to the left side of my equation system into my system matrix. This procedure immediatly produces better results and converges. My question is: Why the **** does it do that? It is basically still the same System of equations, i just made some basic transformations that should still produce the same results? What am i missing?
 
Top