/[escript]/trunk/paso/src/ILU.c
ViewVC logotype

Diff of /trunk/paso/src/ILU.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3094 by gross, Fri Aug 13 08:38:06 2010 UTC revision 3100 by gross, Mon Aug 23 09:31:09 2010 UTC
# Line 51  Paso_Solver_ILU* Paso_Solver_getILU(Paso Line 51  Paso_Solver_ILU* Paso_Solver_getILU(Paso
51    const index_t *ptr_main = Paso_SparseMatrix_borrowMainDiagonalPointer(A);    const index_t *ptr_main = Paso_SparseMatrix_borrowMainDiagonalPointer(A);
52    register double A11,A12,A13,A21,A22,A23,A31,A32,A33,D;    register double A11,A12,A13,A21,A22,A23,A31,A32,A33,D;
53    register double S11,S12,S13,S21,S22,S23,S31,S32,S33;    register double S11,S12,S13,S21,S22,S23,S31,S32,S33;
54    register index_t i,iptr_main,iptr_ik,k,iptr_kj,j,iptr_ij,color,color2;    register index_t i,iptr_main,iptr_ik,k,iptr_kj,j,iptr_ij,color,color2, iptr;
55    double time0=0,time_fac=0;    double time0=0,time_fac=0;
56    /* allocations: */      /* allocations: */  
57    Paso_Solver_ILU* out=MEMALLOC(1,Paso_Solver_ILU);    Paso_Solver_ILU* out=MEMALLOC(1,Paso_Solver_ILU);
# Line 61  Paso_Solver_ILU* Paso_Solver_getILU(Paso Line 61  Paso_Solver_ILU* Paso_Solver_getILU(Paso
61    if ( ! Paso_checkPtr(out->factors)  ) {    if ( ! Paso_checkPtr(out->factors)  ) {
62    
63         time0=Paso_timer();         time0=Paso_timer();
64    
65           #pragma omp parallel for schedule(static) private(i,iptr,k)
66           for (i = 0; i < n; ++i) {
67                   for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; iptr++) {
68                         for (k=0;k<n_block*n_block;++k) out->factors[n_block*n_block*iptr+k]=A->val[n_block*n_block*iptr+k];
69                   }
70           }    
71         /* start factorization */         /* start factorization */
     
        #pragma omp barrier  
72         for (color=0;color<num_colors && Paso_noError();++color) {         for (color=0;color<num_colors && Paso_noError();++color) {
73                if (n_block==1) {                if (n_block==1) {
74                   #pragma omp parallel for schedule(static) private(i,color2,iptr_ik,k,iptr_kj,S11,j,iptr_ij,A11,iptr_main,D)                   #pragma omp parallel for schedule(static) private(i,color2,iptr_ik,k,iptr_kj,S11,j,iptr_ij,A11,iptr_main,D)

Legend:
Removed from v.3094  
changed lines
  Added in v.3100

  ViewVC Help
Powered by ViewVC 1.1.26