CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   approximate factorisation (https://www.cfd-online.com/Forums/main/10196-approximate-factorisation.html)

dist November 2, 2005 19:04

approximate factorisation
 
can someone please tell me what approximate factorisation technique is?

thankyou.


Tom November 3, 2005 04:52

Re: approximate factorisation
 
It's a way of splitting the matrix. For example for a full Lower/Upper factorization the matrix A is exactly factorized as A = LU while for an approximate factorization such as ILU you would have A = LU + N. Here N is the remainder and the basic idea behind approximate factorization is to make N as small as possible.

dist November 3, 2005 16:08

Re: approximate factorisation
 
ok, i suppose that makes sence.

but why do we use it? and how to we do about ensuring the n matrix is small?

thank you for your answer by the way.


ag November 3, 2005 16:48

Re: approximate factorisation
 
Consider a 2D system where the implicit difference equation is of the form

(I + A + B)*Q = RHS

The matrix I + A + B will in general be pentadiagonal and is more difficult to solve than the classic tridiagonal matrix. Approximate factorization makes the following substitution:

Let (I + A)*Q1 = RHS and solve for Q1, then

(I + B)*Q = Q1 to solve for the Q unknowns in the original equation. This factorization yields two systems which are each tridiagonal. The problem is the splitting error, which is found by multiplying out the two pieces:

(I + A)*Q1 = (I + A)*(I + B)*Q = RHS or

(I + A + B + AB)*Q = RHS

The quantity AB*Q is the splitting error, and will in general be a function of time step and cell size and the gradients of the flowfield. In two dimensions AF works reasonably well, but in 3D the splitting error will be O(dt**3) and can render an implicit scheme pointless unless measures are taken to deal with the splitting error. One such approach is to use the AF scheme within a global Newton iteration, such the the residual is driven to zero by the Newton and the AF is just used to get the approximate solution needed for the inner iteration.

ag November 3, 2005 17:12

Re: approximate factorisation
 
Sorry, that should be O(1/dt**3). It's been a long afternoon.

Tom November 4, 2005 06:00

Re: approximate factorisation
 
You use it when you can't perform the full inversion efficiently; i.e. the full LU factorization of a sparse matrix A is usually quite dense and so for a large matrix would take a vast amount of memory to store. With my example of ILU you assume that L and U only have non zero entries in the same locations as the original matrix A. Multiplying out LU you then equate the terms to those of A (the remaining terms are N).

The main reason for the use of approximate factorizations is that they can be used as postconditioners in other iterative solvers to help speed up convergence (LU is approximately equal to A but is relatively simple to invert).


All times are GMT -4. The time now is 20:11.