34 lduMatrix::preconditioner::
35 addasymMatrixConstructorToTable<DILUPreconditioner>
51 calcReciprocalD(rD_, sol.
matrix());
63 scalar* __restrict__ rDPtr = rD.
begin();
68 const scalar*
const __restrict__ upperPtr = matrix.
upper().
begin();
69 const scalar*
const __restrict__ lowerPtr = matrix.
lower().
begin();
71 register label nFaces = matrix.
upper().
size();
79 register label nCells = rD.
size();
95 scalar* __restrict__ wAPtr = wA.
begin();
96 const scalar* __restrict__ rAPtr = rA.
begin();
97 const scalar* __restrict__ rDPtr = rD_.begin();
99 const label*
const __restrict__ uPtr =
100 solver_.matrix().lduAddr().upperAddr().begin();
101 const label*
const __restrict__ lPtr =
102 solver_.matrix().lduAddr().lowerAddr().begin();
103 const label*
const __restrict__ losortPtr =
104 solver_.matrix().lduAddr().losortAddr().begin();
106 const scalar*
const __restrict__ upperPtr =
107 solver_.matrix().upper().begin();
108 const scalar*
const __restrict__ lowerPtr =
109 solver_.matrix().lower().begin();
111 register label nCells = wA.
size();
112 register label nFaces = solver_.matrix().upper().size();
113 register label nFacesM1 = nFaces - 1;
121 register label sface;
125 sface = losortPtr[
face];
126 wAPtr[uPtr[sface]] -=
127 rDPtr[uPtr[sface]]*lowerPtr[sface]*wAPtr[lPtr[sface]];
145 scalar* __restrict__ wTPtr = wT.
begin();
146 const scalar* __restrict__ rTPtr = rT.
begin();
147 const scalar* __restrict__ rDPtr = rD_.begin();
149 const label*
const __restrict__ uPtr =
150 solver_.matrix().lduAddr().upperAddr().begin();
151 const label*
const __restrict__ lPtr =
152 solver_.matrix().lduAddr().lowerAddr().begin();
153 const label*
const __restrict__ losortPtr =
154 solver_.matrix().lduAddr().losortAddr().begin();
156 const scalar*
const __restrict__ upperPtr =
157 solver_.matrix().upper().begin();
158 const scalar*
const __restrict__ lowerPtr =
159 solver_.matrix().lower().begin();
161 register label nCells = wT.
size();
162 register label nFaces = solver_.matrix().upper().size();
163 register label nFacesM1 = nFaces - 1;
177 register label sface;
181 sface = losortPtr[
face];
182 wTPtr[lPtr[sface]] -=
183 rDPtr[lPtr[sface]]*lowerPtr[sface]*wTPtr[uPtr[sface]];