/[escript]/trunk/paso/src/SparseMatrix_getSubmatrix.cpp
ViewVC logotype

Diff of /trunk/paso/src/SparseMatrix_getSubmatrix.cpp

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

revision 2665 by artak, Thu Sep 10 03:54:50 2009 UTC revision 2666 by artak, Thu Sep 17 00:10:00 2009 UTC
# Line 87  Paso_SparseMatrix* Paso_SparseMatrix_get Line 87  Paso_SparseMatrix* Paso_SparseMatrix_get
87                
88        if (blocksize==1) {        if (blocksize==1) {
89              if (blockid==1) {              if (blockid==1) {
90                      #pragma omp parallel for private(i,iptr) schedule(static)
91                    for(i=0;i<n;++i) {                    for(i=0;i<n;++i) {
92                        for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                        for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
93                                out->val[iptr]=A->val[iptr];                                out->val[iptr]=A->val[iptr];
# Line 99  Paso_SparseMatrix* Paso_SparseMatrix_get Line 100  Paso_SparseMatrix* Paso_SparseMatrix_get
100        }        }
101        else if (blocksize==2) {        else if (blocksize==2) {
102              if (blockid==1) {              if (blockid==1) {
103                      #pragma omp parallel for private(i,iptr) schedule(static)
104                    for(i=0;i<n;i++) {                    for(i=0;i<n;i++) {
105                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
106                                out->val[iptr]=A->val[4*iptr];                                out->val[iptr]=A->val[4*iptr];
# Line 106  Paso_SparseMatrix* Paso_SparseMatrix_get Line 108  Paso_SparseMatrix* Paso_SparseMatrix_get
108                    }                    }
109              }              }
110              else if (blockid==2) {              else if (blockid==2) {
111                      #pragma omp parallel for private(i,iptr) schedule(static)
112                    for(i=0;i<n;i++) {                    for(i=0;i<n;i++) {
113                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
114                                out->val[iptr]=A->val[4*iptr+3];                                out->val[iptr]=A->val[4*iptr+3];
# Line 118  Paso_SparseMatrix* Paso_SparseMatrix_get Line 121  Paso_SparseMatrix* Paso_SparseMatrix_get
121        }        }
122        else if (blocksize==3) {        else if (blocksize==3) {
123              if (blockid==1) {              if (blockid==1) {
124                      #pragma omp parallel for private(i,iptr) schedule(static)
125                    for(i=0;i<n;i++) {                    for(i=0;i<n;i++) {
126                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
127                                      out->val[iptr]=A->val[9*iptr];                                      out->val[iptr]=A->val[9*iptr];
# Line 125  Paso_SparseMatrix* Paso_SparseMatrix_get Line 129  Paso_SparseMatrix* Paso_SparseMatrix_get
129                    }                    }
130              }              }
131              else if (blockid==2) {              else if (blockid==2) {
132                      #pragma omp parallel for private(i,iptr) schedule(static)
133                    for(i=0;i<n;i++) {                    for(i=0;i<n;i++) {
134                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
135                                      out->val[iptr]=A->val[9*iptr+4];                                      out->val[iptr]=A->val[9*iptr+4];
# Line 132  Paso_SparseMatrix* Paso_SparseMatrix_get Line 137  Paso_SparseMatrix* Paso_SparseMatrix_get
137                    }                    }
138              }              }
139              else if (blockid==3) {              else if (blockid==3) {
140                      #pragma omp parallel for private(i,iptr) schedule(static)
141                    for(i=0;i<n;i++) {                    for(i=0;i<n;i++) {
142                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {                          for (iptr=A->pattern->ptr[i];iptr<A->pattern->ptr[i+1]; ++iptr) {
143                                      out->val[iptr]=A->val[9*iptr+8];                                      out->val[iptr]=A->val[9*iptr+8];

Legend:
Removed from v.2665  
changed lines
  Added in v.2666

  ViewVC Help
Powered by ViewVC 1.1.26