[cig-commits] [commit] rajesh-petsc-schur: Changed the shape of E->NODE as part of caps_per_proc removal (de72b16)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Nov 5 19:11:51 PST 2014
Repository : https://github.com/geodynamics/citcoms
On branch : rajesh-petsc-schur
Link : https://github.com/geodynamics/citcoms/compare/464e1b32299b15819f93efd98d969cddb84dfe51...f97ae655a50bdbd6dac1923a3471ee4dae178fbd
>---------------------------------------------------------------
commit de72b16d9861ac3cdb15de2810239649a2962931
Author: Rajesh Kommu <rajesh.kommu at gmail.com>
Date: Tue Sep 23 15:25:10 2014 -0700
Changed the shape of E->NODE as part of caps_per_proc removal
>---------------------------------------------------------------
de72b16d9861ac3cdb15de2810239649a2962931
lib/Advection_diffusion.c | 4 +--
lib/BC_util.c | 59 ++++++++++++++++++--------------------
lib/Construct_arrays.c | 26 ++++++++---------
lib/Full_boundary_conditions.c | 4 +--
lib/Full_parallel_related.c | 24 ++++++++--------
lib/General_matrix_functions.c | 8 +++---
lib/Global_operations.c | 4 +--
lib/Instructions.c | 12 ++++----
lib/Regional_boundary_conditions.c | 52 ++++++++++++++++-----------------
lib/Regional_parallel_related.c | 20 ++++++-------
lib/global_defs.h | 2 +-
lib/prototypes.h | 2 +-
12 files changed, 107 insertions(+), 110 deletions(-)
diff --git a/lib/Advection_diffusion.c b/lib/Advection_diffusion.c
index 2d9b062..70dce59 100644
--- a/lib/Advection_diffusion.c
+++ b/lib/Advection_diffusion.c
@@ -667,7 +667,7 @@ static void filter(struct All_variables *E)
/* compute sum(rho*cp*T) before filtering, skipping nodes
that's shared by another processor */
- if(!(E->NODE[lev][CPPR][i] & SKIP))
+ if(!(E->NODE[lev][i] & SKIP))
Tsum0 += E->T[i]*rhocp[nz];
/* remove overshoot */
@@ -692,7 +692,7 @@ static void filter(struct All_variables *E)
E->T[i]=Tmax0;
/* sum(rho*cp*T) after filtering */
- if (!(E->NODE[lev][CPPR][i] & SKIP)) {
+ if (!(E->NODE[lev][i] & SKIP)) {
Tsum1 += E->T[i]*rhocp[nz];
if(E->T[i]!=Tmin0 && E->T[i]!=Tmax0) {
sum_rhocp += rhocp[nz];
diff --git a/lib/BC_util.c b/lib/BC_util.c
index ce76327..b41ceab 100644
--- a/lib/BC_util.c
+++ b/lib/BC_util.c
@@ -28,7 +28,7 @@
#include "global_defs.h"
void horizontal_bc(struct All_variables *,float *[],int,int,float,unsigned int,char,int);
-void internal_horizontal_bc(struct All_variables *,float *[],int,int,float,unsigned int,char,int,int);
+void internal_horizontal_bc(struct All_variables *,float *[],int,int,float,unsigned int,char,int);
void myerror(struct All_variables *,char *);
int layers(struct All_variables *,int);
@@ -47,7 +47,7 @@ without consideration of being in top or bottom processor
*/
void internal_horizontal_bc(struct All_variables *E,float *BC[],int row,int dirn,
- float value,unsigned int mask,char onoff,int level,int m)
+ float value,unsigned int mask,char onoff,int level)
{
int i,j,node,noxnoz;
/* safety feature */
@@ -68,21 +68,18 @@ void internal_horizontal_bc(struct All_variables *E,float *BC[],int row,int dirn
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = row+(i-1)*E->lmesh.NOZ[level]+(j-1)*noxnoz;
- E->NODE[level][m][node] = E->NODE[level][m][node] & (~ mask);
+ E->NODE[level][node] = E->NODE[level][node] & (~ mask);
} /* end for loop i & j */
}else {
/* turn bc marker to one */
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = row+(i-1)*E->lmesh.NOZ[level]+(j-1)*noxnoz;
- E->NODE[level][m][node] = E->NODE[level][m][node] | (mask);
+ E->NODE[level][node] = E->NODE[level][node] | (mask);
if(level == E->mesh.levmax) /* NB */
BC[dirn][node] = value;
} /* end for loop i & j */
}
-
-
- return;
}
@@ -217,23 +214,23 @@ void assign_internal_bc(struct All_variables *E)
if((!ontop)&&(!onbottom)&&(lv==E->mesh.gridmax))
ncount++; /* not in top or bottom */
if(E->mesh.topvbc != 1) { /* free slip */
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0,VBX,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0,VBX,0,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0,VBY,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,SBX,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0,VBY,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,SBX,1,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,SBY,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,SBY,1,lv);
}else{ /* no slip */
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,VBX,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,VBX,1,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,VBY,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0, SBX,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,VBY,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0, SBX,0,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0, SBY,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0, SBY,0,lv);
}
}
}
@@ -262,23 +259,23 @@ void assign_internal_bc(struct All_variables *E)
if((!ontop)&&(!onbottom)&&(lv==E->mesh.gridmax))
ncount++; /* not in top or bottom */
if(E->mesh.topvbc != 1) { /* free slip */
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0,VBX,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0,VBX,0,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0,VBY,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,SBX,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0,VBY,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,SBX,1,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,SBY,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,SBY,1,lv);
}else{ /* no slip */
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,VBX,1,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,E->control.VBXtopval,VBX,1,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,VBY,1,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0, SBX,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,VBZ,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,E->control.VBYtopval,VBY,1,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,1,0.0, SBX,0,lv);
if(ontop || onbottom)
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv,CPPR);
- internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0, SBY,0,lv,CPPR);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,3,0.0,SBZ,0,lv);
+ internal_horizontal_bc(E,E->sphere.cap[CPPR].VB,k,2,0.0, SBY,0,lv);
}
/* read in velocities/stresses from grd file? */
#ifdef USE_GGRD
diff --git a/lib/Construct_arrays.c b/lib/Construct_arrays.c
index 005624f..e337720 100644
--- a/lib/Construct_arrays.c
+++ b/lib/Construct_arrays.c
@@ -154,7 +154,7 @@ void construct_id(E)
i = 0;
for(node=1;node<=E->lmesh.NNO[lev];node++) {
- if (E->NODE[lev][CPPR][node] & SKIP)
+ if (E->NODE[lev][node] & SKIP)
for(doff=1;doff<=dims;doff++) {
i++;
E->parallel.Skip_id[lev][CPPR][i] = E->ID[lev][CPPR][node].doff[doff];
@@ -196,15 +196,15 @@ void get_bcs_id_for_residual(E,level)
j = 0;
for(i=1;i<=nno;i++) {
- if ( (E->NODE[level][CPPR][i] & VBX) != 0 ) {
+ if ( (E->NODE[level][i] & VBX) != 0 ) {
j++;
E->zero_resid[level][j] = E->ID[level][CPPR][i].doff[1];
}
- if ( (E->NODE[level][CPPR][i] & VBY) != 0 ) {
+ if ( (E->NODE[level][i] & VBY) != 0 ) {
j++;
E->zero_resid[level][j] = E->ID[level][CPPR][i].doff[2];
}
- if ( (E->NODE[level][CPPR][i] & VBZ) != 0 ) {
+ if ( (E->NODE[level][i] & VBZ) != 0 ) {
j++;
E->zero_resid[level][j] = E->ID[level][CPPR][i].doff[3];
}
@@ -360,9 +360,9 @@ void construct_node_ks(E)
loc0=(node-1)*max_eqn;
- if(E->NODE[level][CPPR][node] & VBX) w1=0.0;
- if(E->NODE[level][CPPR][node] & VBZ) w3=0.0;
- if(E->NODE[level][CPPR][node] & VBY) w2=0.0;
+ if(E->NODE[level][node] & VBX) w1=0.0;
+ if(E->NODE[level][node] & VBZ) w3=0.0;
+ if(E->NODE[level][node] & VBY) w2=0.0;
for(j=1;j<=ends;j++) { /* j is the node we are receiving from */
node1=E->IEN[level][CPPR][element].node[j];
@@ -376,9 +376,9 @@ void construct_node_ks(E)
eqn2=E->ID[level][CPPR][node1].doff[2];
eqn3=E->ID[level][CPPR][node1].doff[3];
- if(E->NODE[level][CPPR][node1] & VBX) ww1=0.0;
- if(E->NODE[level][CPPR][node1] & VBZ) ww3=0.0;
- if(E->NODE[level][CPPR][node1] & VBY) ww2=0.0;
+ if(E->NODE[level][node1] & VBX) ww1=0.0;
+ if(E->NODE[level][node1] & VBZ) ww3=0.0;
+ if(E->NODE[level][node1] & VBY) ww2=0.0;
/* search for direction 1*/
@@ -491,7 +491,7 @@ void rebuild_BI_on_boundary(E)
E->temp[i] = E->temp[i] - 1.0/E->BI[level][i];
}
for(i=1;i<=E->lmesh.NNO[level];i++)
- if (E->NODE[level][CPPR][i] & OFFSIDE) {
+ if (E->NODE[level][i] & OFFSIDE) {
eqn1=E->ID[level][CPPR][i].doff[1];
eqn2=E->ID[level][CPPR][i].doff[2];
eqn3=E->ID[level][CPPR][i].doff[3];
@@ -526,12 +526,12 @@ void construct_masks(E) /* Add lid/edge masks/nodal weightings */
if (E->parallel.me_loc[3]==0 )
for (i=1;i<=E->parallel.NUM_NNO[lev][CPPR].bound[5];i++) {
node = E->parallel.NODE[lev][CPPR][i].bound[5];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | TZEDGE;
+ 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++) {
node = E->parallel.NODE[lev][CPPR][i].bound[6];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | TZEDGE;
+ E->NODE[lev][node] = E->NODE[lev][node] | TZEDGE;
}
diff --git a/lib/Full_boundary_conditions.c b/lib/Full_boundary_conditions.c
index d5b3a8e..a3c31d5 100644
--- a/lib/Full_boundary_conditions.c
+++ b/lib/Full_boundary_conditions.c
@@ -209,7 +209,7 @@ static void horizontal_bc(struct All_variables *E,float *BC[],int ROW,int dirn,f
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = rowl+(i-1)*E->lmesh.NOZ[level]+(j-1)*E->lmesh.NOX[level]*E->lmesh.NOZ[level];
- E->NODE[level][CPPR][node] = E->NODE[level][CPPR][node] & (~ mask);
+ E->NODE[level][node] = E->NODE[level][node] & (~ mask);
} /* end for loop i & j */
}
@@ -218,7 +218,7 @@ static void horizontal_bc(struct All_variables *E,float *BC[],int ROW,int dirn,f
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = rowl+(i-1)*E->lmesh.NOZ[level]+(j-1)*E->lmesh.NOX[level]*E->lmesh.NOZ[level];
- E->NODE[level][CPPR][node] = E->NODE[level][CPPR][node] | (mask);
+ E->NODE[level][node] = E->NODE[level][node] | (mask);
if(level==E->mesh.levmax) /* NB */
BC[dirn][node] = value;
} /* end for loop i & j */
diff --git a/lib/Full_parallel_related.c b/lib/Full_parallel_related.c
index b84db3b..e9d1522 100644
--- a/lib/Full_parallel_related.c
+++ b/lib/Full_parallel_related.c
@@ -350,7 +350,7 @@ void full_parallel_domain_boundary_nodes(E)
for(k=1;k<=noy;k++) {
node = j + (k-1)*noz*nox;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -362,7 +362,7 @@ void full_parallel_domain_boundary_nodes(E)
for(k=1;k<=noy;k++) {
node = (nox-1)*noz + j + (k-1)*noz*nox;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -375,7 +375,7 @@ void full_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (k-1)*nox*noz + (i-1)*noz + 1;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -386,7 +386,7 @@ void full_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (k-1)*nox*noz + i*noz;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -399,7 +399,7 @@ void full_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (i-1)*noz +j;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -410,7 +410,7 @@ void full_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = noz*nox*(noy-1) + (i-1)*noz +j;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -422,12 +422,12 @@ void full_parallel_domain_boundary_nodes(E)
are skipped */
for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[2];lnode++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[2];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
}
for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[3];lnode++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[3];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
}
/* nodes at N/S poles are skipped by all proc.
@@ -439,7 +439,7 @@ void full_parallel_domain_boundary_nodes(E)
E->parallel.me_loc[2] == 0)
for(j=1;j<=noz;j++) {
node = j;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] & ~SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] & ~SKIP;
}
/* south pole is at the back right proc. of final cap */
@@ -448,7 +448,7 @@ void full_parallel_domain_boundary_nodes(E)
E->parallel.me_loc[2] == E->parallel.nprocy-1)
for(j=1;j<=noz;j++) {
node = j*nox*noy;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] & ~SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] & ~SKIP;
}
/* radial direction is easy:
@@ -456,7 +456,7 @@ void full_parallel_domain_boundary_nodes(E)
if (E->parallel.me_loc[3]!=E->parallel.nprocz-1 )
for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[6];lnode++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[6];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
}
} /* end for level */
@@ -472,7 +472,7 @@ if (E->control.verbose) {
lnode=0;
for (node=1;node<=E->lmesh.NNO[lev];node++)
- if((E->NODE[lev][CPPR][node] & SKIP)) {
+ if((E->NODE[lev][node] & SKIP)) {
lnode++;
fprintf(E->fp_out,"skip %d %d \n",lnode,node);
}
diff --git a/lib/General_matrix_functions.c b/lib/General_matrix_functions.c
index 4090895..358600f 100644
--- a/lib/General_matrix_functions.c
+++ b/lib/General_matrix_functions.c
@@ -464,7 +464,7 @@ void gauss_seidel(E,d0,F,Ad,acc,cycles,level,guess)
Ad[neq] = 0.0;
for(i=1;i<=E->lmesh.NNO[level];i++)
- if(E->NODE[level][CPPR][i] & OFFSIDE) {
+ if(E->NODE[level][i] & OFFSIDE) {
eqn1=E->ID[level][CPPR][i].doff[1];
eqn2=E->ID[level][CPPR][i].doff[2];
@@ -499,7 +499,7 @@ void gauss_seidel(E,d0,F,Ad,acc,cycles,level,guess)
Ad[eqn3] += B3[j]*UU;
}
- if (!(E->NODE[level][CPPR][i]&OFFSIDE)) {
+ if (!(E->NODE[level][i]&OFFSIDE)) {
E->temp[eqn1] = (F[eqn1] - Ad[eqn1])*E->BI[level][eqn1];
E->temp[eqn2] = (F[eqn2] - Ad[eqn2])*E->BI[level][eqn2];
E->temp[eqn3] = (F[eqn3] - Ad[eqn3])*E->BI[level][eqn3];
@@ -517,7 +517,7 @@ void gauss_seidel(E,d0,F,Ad,acc,cycles,level,guess)
}
for(i=1;i<=E->lmesh.NNO[level];i++)
- if(E->NODE[level][CPPR][i] & OFFSIDE) {
+ if(E->NODE[level][i] & OFFSIDE) {
eqn1=E->ID[level][CPPR][i].doff[1];
eqn2=E->ID[level][CPPR][i].doff[2];
eqn3=E->ID[level][CPPR][i].doff[3];
@@ -529,7 +529,7 @@ void gauss_seidel(E,d0,F,Ad,acc,cycles,level,guess)
(E->solver.exchange_id_d)(E, Ad, level);
for(i=1;i<=E->lmesh.NNO[level];i++)
- if(E->NODE[level][CPPR][i] & OFFSIDE) {
+ if(E->NODE[level][i] & OFFSIDE) {
eqn1=E->ID[level][CPPR][i].doff[1];
eqn2=E->ID[level][CPPR][i].doff[2];
eqn3=E->ID[level][CPPR][i].doff[3];
diff --git a/lib/Global_operations.c b/lib/Global_operations.c
index cebd576..a6c59e6 100644
--- a/lib/Global_operations.c
+++ b/lib/Global_operations.c
@@ -647,7 +647,7 @@ double global_tdot_d(E,A,B,lev)
prod = 0.0;
nno=E->lmesh.NNO[lev];
for (i=1;i<=nno;i++)
- if (!(E->NODE[lev][CPPR][i] & SKIP))
+ if (!(E->NODE[lev][i] & SKIP))
temp += A[CPPR][i];
MPI_Allreduce(&temp, &prod,1,MPI_DOUBLE,MPI_SUM,E->parallel.world);
@@ -669,7 +669,7 @@ float global_tdot(E,A,B,lev)
prod = 0.0;
nno=E->lmesh.NNO[lev];
for (i=1;i<=nno;i++)
- if (!(E->NODE[lev][CPPR][i] & SKIP))
+ if (!(E->NODE[lev][i] & SKIP))
temp += A[CPPR][i]*B[CPPR][i];
MPI_Allreduce(&temp, &prod,1,MPI_FLOAT,MPI_SUM,E->parallel.world);
diff --git a/lib/Instructions.c b/lib/Instructions.c
index dff2df0..69a016b 100644
--- a/lib/Instructions.c
+++ b/lib/Instructions.c
@@ -1075,7 +1075,7 @@ void allocate_common_vars(E)
E->ID[i][CPPR] = (struct ID *) malloc((nno+1)*sizeof(struct ID));
E->VI[i] = (float *) malloc((nno+1)*sizeof(float));
- E->NODE[i][CPPR] = (unsigned int *)malloc((nno+1)*sizeof(unsigned int));
+ E->NODE[i] = (unsigned int *)malloc((nno+1)*sizeof(unsigned int));
nxyz = max(nox*noz,nox*noy);
nxyz = 2*max(nxyz,noz*noy);
@@ -1089,7 +1089,7 @@ void allocate_common_vars(E)
E->parallel.EXCHANGE_ID[i][CPPR] = (struct PASS *) malloc((nxyz*E->mesh.nsd+3)*sizeof(struct PASS));
for(l=1;l<=E->lmesh.NNO[i];l++) {
- E->NODE[i][CPPR][l] = (INTX | INTY | INTZ); /* and any others ... */
+ E->NODE[i][l] = (INTX | INTY | INTZ); /* and any others ... */
E->VI[i][l] = 1.0;
}
@@ -1335,11 +1335,11 @@ void check_bc_consistency(E)
for(lev=E->mesh.gridmin;lev<=E->mesh.gridmax;lev++) {
for(i=1;i<=E->lmesh.NNO[lev];i++) {
- if ((E->NODE[lev][CPPR][i] & VBX) && (E->NODE[lev][CPPR][i] & SBX))
+ if ((E->NODE[lev][i] & VBX) && (E->NODE[lev][i] & SBX))
printf("Inconsistent x velocity bc at %d,%d\n",lev,i);
- if ((E->NODE[lev][CPPR][i] & VBZ) && (E->NODE[lev][CPPR][i] & SBZ))
+ if ((E->NODE[lev][i] & VBZ) && (E->NODE[lev][i] & SBZ))
printf("Inconsistent z velocity bc at %d,%d\n",lev,i);
- if ((E->NODE[lev][CPPR][i] & VBY) && (E->NODE[lev][CPPR][i] & SBY))
+ if ((E->NODE[lev][i] & VBY) && (E->NODE[lev][i] & SBY))
printf("Inconsistent y velocity bc at %d,%d\n",lev,i);
/* Tbc's not applicable below top level */
}
@@ -1356,7 +1356,7 @@ void set_up_nonmg_aliases(struct All_variables *E)
E->id = E->ID[E->mesh.levmax][CPPR];
E->Vi = E->VI[E->mesh.levmax];
E->EVi = E->EVI[E->mesh.levmax];
- E->node = E->NODE[E->mesh.levmax][CPPR];
+ E->node = E->NODE[E->mesh.levmax];
E->cc = E->CC[E->mesh.levmax][CPPR];
E->ccx = E->CCX[E->mesh.levmax][CPPR];
E->Mass = E->MASS[E->mesh.levmax];
diff --git a/lib/Regional_boundary_conditions.c b/lib/Regional_boundary_conditions.c
index 802a9b7..0ee1a5a 100644
--- a/lib/Regional_boundary_conditions.c
+++ b/lib/Regional_boundary_conditions.c
@@ -270,23 +270,23 @@ static void velocity_refl_vert_bc(E)
node2 = node1 + (nox-1)*noz;
ii = i + E->lmesh.NZS[level] - 1;
if (E->parallel.me_loc[1]==0 ) {
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | VBX;
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~SBX);
+ E->NODE[level][node1] = E->NODE[level][node1] | VBX;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~SBX);
if((ii!=1) && (ii!=E->mesh.NOZ[level])) {
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~VBY);
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | SBY;
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~VBZ);
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | SBZ;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~VBY);
+ E->NODE[level][node1] = E->NODE[level][node1] | SBY;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~VBZ);
+ E->NODE[level][node1] = E->NODE[level][node1] | SBZ;
}
}
if (E->parallel.me_loc[1]==E->parallel.nprocx-1) {
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | VBX;
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~SBX);
+ E->NODE[level][node2] = E->NODE[level][node2] | VBX;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~SBX);
if((ii!=1) && (ii!=E->mesh.NOZ[level])) {
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~VBY);
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | SBY;
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~VBZ);
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | SBZ;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~VBY);
+ E->NODE[level][node2] = E->NODE[level][node2] | SBY;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~VBZ);
+ E->NODE[level][node2] = E->NODE[level][node2] | SBZ;
}
}
} /* end for loop i & j */
@@ -301,15 +301,15 @@ static void velocity_refl_vert_bc(E)
ii = i + E->lmesh.NZS[level] - 1;
jj = j + E->lmesh.NXS[level] - 1;
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | VBY;
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~SBY);
+ E->NODE[level][node1] = E->NODE[level][node1] | VBY;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~SBY);
if((ii!= 1) && (ii != E->mesh.NOZ[level])) {
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~VBZ);
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | SBZ;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~VBZ);
+ E->NODE[level][node1] = E->NODE[level][node1] | SBZ;
}
if((jj!=1) && (jj!=E->mesh.NOX[level]) && (ii!=1) && (ii!=E->mesh.NOZ[level])){
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] & (~VBX);
- E->NODE[level][CPPR][node1] = E->NODE[level][CPPR][node1] | SBX;
+ E->NODE[level][node1] = E->NODE[level][node1] & (~VBX);
+ E->NODE[level][node1] = E->NODE[level][node1] | SBX;
}
} /* end for loop i & j */
@@ -319,15 +319,15 @@ static void velocity_refl_vert_bc(E)
node2 = (noy-1)*noz*nox + i + (j-1)*noz;
ii = i + E->lmesh.NZS[level] - 1;
jj = j + E->lmesh.NXS[level] - 1;
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | VBY;
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~SBY);
+ E->NODE[level][node2] = E->NODE[level][node2] | VBY;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~SBY);
if((ii!= 1) && (ii != E->mesh.NOZ[level])) {
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~VBZ);
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | SBZ;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~VBZ);
+ E->NODE[level][node2] = E->NODE[level][node2] | SBZ;
}
if((jj!=1) && (jj!=E->mesh.NOX[level]) && (ii!=1) && (ii!=E->mesh.NOZ[level])){
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] & (~VBX);
- E->NODE[level][CPPR][node2] = E->NODE[level][CPPR][node2] | SBX;
+ E->NODE[level][node2] = E->NODE[level][node2] & (~VBX);
+ E->NODE[level][node2] = E->NODE[level][node2] | SBX;
}
}
@@ -407,7 +407,7 @@ static void horizontal_bc( struct All_variables *E,float *BC[], int ROW,int dirn
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = rowl+(i-1)*E->lmesh.NOZ[level]+(j-1)*E->lmesh.NOX[level]*E->lmesh.NOZ[level];
- E->NODE[level][CPPR][node] = E->NODE[level][CPPR][node] & (~ mask);
+ E->NODE[level][node] = E->NODE[level][node] & (~ mask);
} /* end for loop i & j */
}
@@ -416,7 +416,7 @@ static void horizontal_bc( struct All_variables *E,float *BC[], int ROW,int dirn
for(j=1;j<=E->lmesh.NOY[level];j++)
for(i=1;i<=E->lmesh.NOX[level];i++) {
node = rowl+(i-1)*E->lmesh.NOZ[level]+(j-1)*E->lmesh.NOX[level]*E->lmesh.NOZ[level];
- E->NODE[level][CPPR][node] = E->NODE[level][CPPR][node] | (mask);
+ E->NODE[level][node] = E->NODE[level][node] | (mask);
if(level==E->mesh.levmax) /* NB */
BC[dirn][node] = value;
diff --git a/lib/Regional_parallel_related.c b/lib/Regional_parallel_related.c
index 3dec0f0..66eb4d3 100644
--- a/lib/Regional_parallel_related.c
+++ b/lib/Regional_parallel_related.c
@@ -315,7 +315,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(k=1;k<=noy;k++) {
node = j + (k-1)*noz*nox;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -327,7 +327,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(k=1;k<=noy;k++) {
node = (nox-1)*noz + j + (k-1)*noz*nox;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -340,7 +340,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (k-1)*nox*noz + (i-1)*noz + 1;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -351,7 +351,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (k-1)*nox*noz + i*noz;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -364,7 +364,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = (i-1)*noz +j;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -375,7 +375,7 @@ void regional_parallel_domain_boundary_nodes(E)
for(i=1;i<=nox;i++) {
node = noz*nox*(noy-1) + (i-1)*noz +j;
E->parallel.NODE[lev][CPPR][++lnode].bound[ii] = node;
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | OFFSIDE;
+ E->NODE[lev][node] = E->NODE[lev][node] | OFFSIDE;
}
E->parallel.NUM_NNO[lev][CPPR].bound[ii] = lnode;
@@ -385,19 +385,19 @@ void regional_parallel_domain_boundary_nodes(E)
if (E->parallel.me_loc[1]!=E->parallel.nprocx-1)
for (lnode=1;lnode<=E->parallel.NUM_NNO[lev][CPPR].bound[2];lnode++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[2];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ 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++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[4];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ 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++) {
node = E->parallel.NODE[lev][CPPR][lnode].bound[6];
- E->NODE[lev][CPPR][node] = E->NODE[lev][CPPR][node] | SKIP;
+ E->NODE[lev][node] = E->NODE[lev][node] | SKIP;
}
} /* end for level */
@@ -413,7 +413,7 @@ if (E->control.verbose) {
lnode=0;
for (node=1;node<=E->lmesh.NNO[lev];node++)
- if((E->NODE[lev][CPPR][node] & SKIP)) {
+ if((E->NODE[lev][node] & SKIP)) {
lnode++;
fprintf(E->fp_out,"skip %d %d \n",lnode,node);
}
diff --git a/lib/global_defs.h b/lib/global_defs.h
index 7b6b519..2ac4b80 100644
--- a/lib/global_defs.h
+++ b/lib/global_defs.h
@@ -863,7 +863,7 @@ struct All_variables {
int *surf_element,*surf_node;
int *mat;
float *VIP;
- unsigned int *NODE[MAX_LEVELS][NCS];
+ unsigned int *NODE[MAX_LEVELS];
unsigned int *node;
float *age_t;
diff --git a/lib/prototypes.h b/lib/prototypes.h
index 2e4bce5..39cff61 100644
--- a/lib/prototypes.h
+++ b/lib/prototypes.h
@@ -44,7 +44,7 @@ void drex_eigen(double [3][3], double [3][3], int *);
void malmul_scaled_id(double [3][3], double [3][3], double, double);
void myerror_s(char *, struct All_variables *);
/* BC_util.c */
-void internal_horizontal_bc(struct All_variables *, float *[], int, int, float, unsigned int, char, int, int);
+void internal_horizontal_bc(struct All_variables *, float *[], int, int, float, unsigned int, char, int);
void strip_bcs_from_residual(struct All_variables *, double *, int);
void temperatures_conform_bcs(struct All_variables *);
void temperatures_conform_bcs2(struct All_variables *);
More information about the CIG-COMMITS
mailing list