|
[Sponsors] |
September 12, 2004, 20:02 |
Coefficient matrix
|
#1 |
Guest
Posts: n/a
|
Can someone explain why, when solving an advection equation for example, we sometime split the convection term into two parts in order to make the off diagonal terms in the coefficient matrix sum to one? This concept ( summing to one and splitting) does not make a lot of sense to me, so if someone can point out a website or book that may be of use, I would much appreciate it.
|
|
September 12, 2004, 22:19 |
Re: Coefficient matrix
|
#2 |
Guest
Posts: n/a
|
It is all to do with using iterative solvers: they set up a condition on the matrix that you mention above. If you choose to use a direct solver, the split does not make sense.
The whole story is something like this: - we are solving Navier-Stokes or similar non-linear equations and we choose the solution strategy consisting of linearisation and iterations over non-linear terms - intermediate solutions in the solution cycle will be used only to update the non-linear interaction and therefore don't need to be particularly accurate - in each step of the iterative procedure we need to obtain a solution and we've got a choice of solvers: computationally expensive (but exact) direct solvers which do not pose any requirement on the matrix structure; or iterative solvers, which perform a set of solution "improvement" steps and can be stopped whenever we choose, but add requirements on the matrix structure. It turns out that iterative solvers are much more efficient and thus we mess about with our system of equations to allow us to use them. In this process, the convection term is split into two, with the explicit bit (called the deferred correction) added into the source. What we did here is to introduce a bit more lagging than absolutely necessary, but in return we get to use more efficient solvers. You can take any number of side-tracks in this story, but this is the simplest explanation I can give. Hrv |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
OpenFOAM version 1.6 details | lakeat | OpenFOAM Running, Solving & CFD | 42 | August 26, 2009 22:47 |
Automotive test case | vinz | OpenFOAM Running, Solving & CFD | 98 | October 27, 2008 09:43 |
Reconstructing Coefficient Matrix from lduAddressing Object | cliffoi | OpenFOAM Running, Solving & CFD | 0 | December 7, 2007 08:16 |
couldn't allocate fine level coefficient matrix..? | Cyril | FLUENT | 3 | July 23, 2007 13:30 |
Err: can't allocate fine level coefficient matrix | Chris | FLUENT | 2 | March 7, 2003 04:16 |