[cig-commits] [commit] rajesh-petsc-schur: Changed the shape of E->parallel.NUM_NNO as part of caps_per_proc_removal (0f44c7a)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Wed Nov 5 19:12:43 PST 2014


Repository : https://github.com/geodynamics/citcoms

On branch  : rajesh-petsc-schur
Link       : https://github.com/geodynamics/citcoms/compare/464e1b32299b15819f93efd98d969cddb84dfe51...f97ae655a50bdbd6dac1923a3471ee4dae178fbd

>---------------------------------------------------------------

commit 0f44c7a4f28c2c9244979dcd3d5aa40a2d5e39d8
Author: Rajesh Kommu <rajesh.kommu at gmail.com>
Date:   Wed Sep 24 10:48:04 2014 -0700

    Changed the shape of E->parallel.NUM_NNO as part of caps_per_proc_removal


>---------------------------------------------------------------

0f44c7a4f28c2c9244979dcd3d5aa40a2d5e39d8
 lib/Construct_arrays.c          |  4 ++--
 lib/Full_parallel_related.c     | 26 +++++++++++++-------------
 lib/Regional_parallel_related.c | 30 +++++++++++++++---------------
 lib/global_defs.h               |  2 +-
 4 files changed, 31 insertions(+), 31 deletions(-)

diff --git a/lib/Construct_arrays.c b/lib/Construct_arrays.c
index a9995a6..cbbdb99 100644
--- a/lib/Construct_arrays.c
+++ b/lib/Construct_arrays.c
@@ -524,12 +524,12 @@ void construct_masks(E)		/* Add lid/edge masks/nodal weightings */
       nno = E->lmesh.NNO[lev];
 
         if (E->parallel.me_loc[3]==0 )
-          for (i=1;i<=E->parallel.NUM_NNO[lev][CPPR].bound[5];i++)   {
+          for (i=1;i<=E->parallel.NUM_NNO[lev].bound[5];i++)   {
             node = E->parallel.NODE[lev][CPPR][i].bound[5];
  	    E->NODE[lev][node] = E->NODE[lev][node] | TZEDGE;
 	    }
         if ( E->parallel.me_loc[3]==E->parallel.nprocz-1 )
-          for (i=1;i<=E->parallel.NUM_NNO[lev][CPPR].bound[6];i++)   {
+          for (i=1;i<=E->parallel.NUM_NNO[lev].bound[6];i++)   {
   	    node = E->parallel.NODE[lev][CPPR][i].bound[6];
 	    E->NODE[lev][node] = E->NODE[lev][node] | TZEDGE;
 	    }
diff --git a/lib/Full_parallel_related.c b/lib/Full_parallel_related.c
index ca2445d..580d346 100644
--- a/lib/Full_parallel_related.c
+++ b/lib/Full_parallel_related.c
@@ -353,7 +353,7 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
       lnode = 0;
@@ -365,7 +365,7 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
 /* do XOY boundary elements */
@@ -378,7 +378,7 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
       ii=6;                           /* top  */
       lnode=0;
@@ -389,7 +389,7 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
 /* do XOZ boundary elements for 3D */
@@ -402,7 +402,7 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
       ii=4;                           /* rear */
       lnode=0;
@@ -413,19 +413,19 @@ void full_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
       /* determine the overlapped nodes between caps or between proc */
 
       /* horizontal direction:
          all nodes at right (ix==nox) and front (iy==1) faces
          are skipped */
-      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[2];lnode++) {
+      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[2];lnode++) {
           node = E->parallel.NODE[lev][CPPR][lnode].bound[2];
           E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
       }
 
-      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[3];lnode++) {
+      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[3];lnode++) {
           node = E->parallel.NODE[lev][CPPR][lnode].bound[3];
           E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
       }
@@ -454,7 +454,7 @@ void full_parallel_domain_boundary_nodes(E)
       /* radial direction is easy:
          all top nodes except those at top processors are skipped */
       if (E->parallel.me_loc[3]!=E->parallel.nprocz-1 )
-          for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[6];lnode++) {
+          for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[6];lnode++) {
               node = E->parallel.NODE[lev][CPPR][lnode].bound[6];
               E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
           }
@@ -467,7 +467,7 @@ if (E->control.verbose) {
  for(lev=E->mesh.gridmax;lev>=E->mesh.gridmin;lev--)
     fprintf(E->fp_out,"lev=%d  me=%d capid=%d m=%d \n",lev,E->parallel.me,E->sphere.capid[CPPR],CPPR);
     for (ii=1;ii<=6;ii++)
-      for (i=1;i<=E->parallel.NUM_NNO[lev][CPPR].bound[ii];i++)
+      for (i=1;i<=E->parallel.NUM_NNO[lev].bound[ii];i++)
         fprintf(E->fp_out,"ii=%d   %d %d \n",ii,i,E->parallel.NODE[lev][CPPR][i].bound[ii]);
 
     lnode=0;
@@ -680,7 +680,7 @@ void full_parallel_communication_routs_v(E)
 	    E->parallel.loc2proc_map[cap][lx][ly][lz+((ii==5)?-1:1)];
 
 	  jj=0;  kk=0;
-	  for (k=1;k<=E->parallel.NUM_NNO[lev][CPPR].bound[ii];k++)   {
+	  for (k=1;k<=E->parallel.NUM_NNO[lev].bound[ii];k++)   {
 	    node = E->parallel.NODE[lev][CPPR][k].bound[ii];
 	    E->parallel.EXCHANGE_NODE[lev][CPPR][++kk].pass[kkkp] = node;
 	    for(doff=1;doff<=dims;doff++)
@@ -763,7 +763,7 @@ void full_parallel_communication_routs_s(E)
         if (kkk<=4) {  /* first 4 communications are for XZ and YZ planes */
           ii = kkk;
           E->parallel.NUM_sNODE[lev][CPPR].pass[kkk] =
-                           E->parallel.NUM_NNO[lev][CPPR].bound[ii]/noz;
+                           E->parallel.NUM_NNO[lev].bound[ii]/noz;
 
           for (k=1;k<=E->parallel.NUM_sNODE[lev][CPPR].pass[kkk];k++)   {
             lnode = k;
@@ -815,7 +815,7 @@ static void face_eqn_node_to_pass(E,lev,npass,bd)
   int jj,kk,node,doff;
   const int dims=E->mesh.nsd;
 
-  E->parallel.NUM_NODE[lev][CPPR].pass[npass] = E->parallel.NUM_NNO[lev][CPPR].bound[bd];
+  E->parallel.NUM_NODE[lev][CPPR].pass[npass] = E->parallel.NUM_NNO[lev].bound[bd];
 
   jj = 0;
   for (kk=1;kk<=E->parallel.NUM_NODE[lev][CPPR].pass[npass];kk++)   {
diff --git a/lib/Regional_parallel_related.c b/lib/Regional_parallel_related.c
index 82a87d1..ee83982 100644
--- a/lib/Regional_parallel_related.c
+++ b/lib/Regional_parallel_related.c
@@ -318,7 +318,7 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
       lnode = 0;
@@ -330,7 +330,7 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
 /* do XOY boundary elements */
@@ -343,7 +343,7 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
       ii=6;                           /* top  */
       lnode=0;
@@ -354,7 +354,7 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
 
 /* do XOZ boundary elements for 3D */
@@ -367,7 +367,7 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
       ii=4;                           /* rear */
       lnode=0;
@@ -378,24 +378,24 @@ void regional_parallel_domain_boundary_nodes(E)
         E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
         }
 
-      E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
+      E->parallel.NUM_NNO[lev].bound[ii] = lnode;
 
          /* determine the overlapped nodes between caps or between proc */
 
     if (E->parallel.me_loc[1]!=E->parallel.nprocx-1)
-      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[2];lnode++) {
+      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[2];lnode++) {
         node = E->parallel.NODE[lev][CPPR][lnode].bound[2];
         E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
         }
 
     if (E->parallel.me_loc[2]!=E->parallel.nprocy-1)
-      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[4];lnode++) {
+      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[4];lnode++) {
         node = E->parallel.NODE[lev][CPPR][lnode].bound[4];
         E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
         }
 
     if (E->parallel.me_loc[3]!=E->parallel.nprocz-1)
-      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[6];lnode++) {
+      for (lnode=1;lnode<=E->parallel.NUM_NNO[lev].bound[6];lnode++) {
         node = E->parallel.NODE[lev][CPPR][lnode].bound[6];
         E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
         }
@@ -408,7 +408,7 @@ if (E->control.verbose) {
  for(lev=E->mesh.gridmax;lev>=E->mesh.gridmin;lev--)
     fprintf(E->fp_out,"lev=%d  me=%d capid=%d m=%d \n",lev,E->parallel.me,E->sphere.capid[CPPR],CPPR);
     for (ii=1;ii<=6;ii++)
-      for (i=1;i<=E->parallel.NUM_NNO[lev][CPPR].bound[ii];i++)
+      for (i=1;i<=E->parallel.NUM_NNO[lev].bound[ii];i++)
         fprintf(E->fp_out,"ii=%d   %d %d \n",ii,i,E->parallel.NODE[lev][CPPR][i].bound[ii]);
 
     lnode=0;
@@ -478,7 +478,7 @@ void regional_parallel_communication_routs_v(E)
 	  dir = ( (i==1)? 1 : -1);
           E->parallel.PROCESSOR[lev][CPPR].pass[kkk]=E->parallel.loc2proc_map[cap][lx-dir][ly][lz];
 
-              E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev][CPPR].bound[ii];
+              E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev].bound[ii];
           jj = 0;
           for (k=1;k<=E->parallel.NUM_NODE[lev][CPPR].pass[kkk];k++)   {
             lnode = k;
@@ -513,7 +513,7 @@ void regional_parallel_communication_routs_v(E)
 	  dir = ( (k==1)? 1 : -1);
           E->parallel.PROCESSOR[lev][CPPR].pass[kkk]=E->parallel.loc2proc_map[cap][lx][ly-dir][lz];
 
-          E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev][CPPR].bound[ii];
+          E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev].bound[ii];
 
           jj = 0; kf = 0;
           for (kk=1;kk<=E->parallel.NUM_NODE[lev][CPPR].pass[kkk];kk++)   {
@@ -548,7 +548,7 @@ void regional_parallel_communication_routs_v(E)
 	  dir = ( (j==1)? 1 : -1);
           E->parallel.PROCESSOR[lev][CPPR].pass[kkk]=E->parallel.loc2proc_map[cap][lx][ly][lz-dir];
 
-          E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev][CPPR].bound[ii];
+          E->parallel.NUM_NODE[lev][CPPR].pass[kkk] = E->parallel.NUM_NNO[lev].bound[ii];
 
           jj = 0; kf = 0;
           for (kk=1;kk<=E->parallel.NUM_NODE[lev][CPPR].pass[kkk];kk++)   {
@@ -645,7 +645,7 @@ void regional_parallel_communication_routs_s(E)
           E->parallel.sPROCESSOR[lev][CPPR].pass[kkk]=me-((i==1)?1:-1)*nproczl;
 
               E->parallel.NUM_sNODE[lev][CPPR].pass[kkk] =
-                          E->parallel.NUM_NNO[lev][CPPR].bound[ii]/noz;
+                          E->parallel.NUM_NNO[lev].bound[ii]/noz;
           for (k=1;k<=E->parallel.NUM_sNODE[lev][CPPR].pass[kkk];k++)   {
             lnode = k;             /* due to lnode increases in horizontal di first */
             node = (E->parallel.NODE[lev][CPPR][lnode].bound[ii]-1)/noz+1;
@@ -673,7 +673,7 @@ void regional_parallel_communication_routs_s(E)
           E->parallel.sPROCESSOR[lev][CPPR].pass[kkk]=me-((k==1)?1:-1)*nprocxl*nproczl;
 
               E->parallel.NUM_sNODE[lev][CPPR].pass[kkk] =
-                          E->parallel.NUM_NNO[lev][CPPR].bound[ii]/noz;
+                          E->parallel.NUM_NNO[lev].bound[ii]/noz;
 
           for (kk=1;kk<=E->parallel.NUM_sNODE[lev][CPPR].pass[kkk];kk++)   {
             lnode = kk;             /* due to lnode increases in horizontal di first */
diff --git a/lib/global_defs.h b/lib/global_defs.h
index 8beeea8..367238a 100644
--- a/lib/global_defs.h
+++ b/lib/global_defs.h
@@ -237,7 +237,7 @@ struct Parallel {
 
     int TNUM_PASS[MAX_LEVELS];
     struct BOUND *NODE[MAX_LEVELS][NCS];
-    struct BOUND NUM_NNO[MAX_LEVELS][NCS];
+    struct BOUND NUM_NNO[MAX_LEVELS];
     struct BOUND NUM_PASS[MAX_LEVELS][NCS];
     struct PASS NUM_NEQ[MAX_LEVELS][NCS];
     struct PASS NUM_NODE[MAX_LEVELS][NCS];



More information about the CIG-COMMITS mailing list