206 |
#pragma omp parallel for private(i) schedule(static) |
#pragma omp parallel for private(i) schedule(static) |
207 |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
208 |
b1[i]=b[2*i]; |
b1[i]=b[2*i]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock2->n;i++) { |
|
209 |
b2[i]=b[2*i+1]; |
b2[i]=b[2*i+1]; |
210 |
} |
} |
211 |
|
|
212 |
|
|
213 |
Paso_Solver_solveAMG(prec->amgSystem->amgblock1,x1,b1); |
Paso_Solver_solveAMG(prec->amgSystem->amgblock1,x1,b1); |
214 |
Paso_Solver_solveAMG(prec->amgSystem->amgblock2,x2,b2); |
Paso_Solver_solveAMG(prec->amgSystem->amgblock2,x2,b2); |
215 |
|
|
216 |
#pragma omp parallel for private(i) schedule(static) |
#pragma omp parallel for private(i) schedule(static) |
217 |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
218 |
x[2*i]=x1[i]; |
x[2*i]=x1[i]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock2->n;i++) { |
|
219 |
x[2*i+1]=x2[i]; |
x[2*i+1]=x2[i]; |
220 |
} |
} |
221 |
|
|
222 |
MEMFREE(x1); |
MEMFREE(x1); |
223 |
MEMFREE(x2); |
MEMFREE(x2); |
224 |
MEMFREE(b1); |
MEMFREE(b1); |
238 |
#pragma omp parallel for private(i) schedule(static) |
#pragma omp parallel for private(i) schedule(static) |
239 |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
240 |
b1[i]=b[3*i]; |
b1[i]=b[3*i]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock2->n;i++) { |
|
241 |
b2[i]=b[3*i+1]; |
b2[i]=b[3*i+1]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock3->n;i++) { |
|
242 |
b3[i]=b[3*i+2]; |
b3[i]=b[3*i+2]; |
243 |
} |
} |
|
|
|
244 |
|
|
245 |
Paso_Solver_solveAMG(prec->amgSystem->amgblock1,x1,b1); |
Paso_Solver_solveAMG(prec->amgSystem->amgblock1,x1,b1); |
246 |
Paso_Solver_solveAMG(prec->amgSystem->amgblock2,x2,b2); |
Paso_Solver_solveAMG(prec->amgSystem->amgblock2,x2,b2); |
249 |
#pragma omp parallel for private(i) schedule(static) |
#pragma omp parallel for private(i) schedule(static) |
250 |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
for (i=0;i<prec->amgSystem->amgblock1->n;i++) { |
251 |
x[3*i]=x1[i]; |
x[3*i]=x1[i]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock2->n;i++) { |
|
252 |
x[3*i+1]=x2[i]; |
x[3*i+1]=x2[i]; |
|
} |
|
|
|
|
|
#pragma omp parallel for private(i) schedule(static) |
|
|
for (i=0;i<prec->amgSystem->amgblock3->n;i++) { |
|
253 |
x[3*i+2]=x3[i]; |
x[3*i+2]=x3[i]; |
254 |
} |
} |
255 |
|
|