diff options
author | goodale <goodale@6a38eb6e-646e-4a02-a296-d141613ad6c4> | 2000-04-19 22:53:17 +0000 |
---|---|---|
committer | goodale <goodale@6a38eb6e-646e-4a02-a296-d141613ad6c4> | 2000-04-19 22:53:17 +0000 |
commit | b55d9d77a52341cba41b71b57d09c0e111fe9774 (patch) | |
tree | a78d1b3ee10520139770a605c032ed237a8c4bbf /src/RadiationBoundary.c | |
parent | bf12d48d7fb189abaa11b3d5b62df14ae1be1692 (diff) |
Removing extraneous ; .
Tom
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/Boundary/trunk@103 6a38eb6e-646e-4a02-a296-d141613ad6c4
Diffstat (limited to 'src/RadiationBoundary.c')
-rw-r--r-- | src/RadiationBoundary.c | 139 |
1 files changed, 90 insertions, 49 deletions
diff --git a/src/RadiationBoundary.c b/src/RadiationBoundary.c index bab18a7..f4610d6 100644 --- a/src/RadiationBoundary.c +++ b/src/RadiationBoundary.c @@ -106,6 +106,18 @@ int BndApplyRadiative3Di(cGH *GH, int xgp0,xgp1,ygp0,ygp1,zgp0,zgp1; + /* Inverses of the radius */ + + CCTK_REAL ri0, ri1; + + /* Grid sizes */ + + int lssh0, lssh1, lssh2; + + /* stencil widths */ + + int sw0, sw1, sw2; + /* Grid parameters. */ dx = dxyz[0]; @@ -117,6 +129,18 @@ int BndApplyRadiative3Di(cGH *GH, half = 0.5; one = 1.0; + /* Store the grid shape in local variables to help the optimiser */ + + lssh0 = lssh[0]; + lssh1 = lssh[1]; + lssh2 = lssh[2]; + + /* Ditto with the stencil widths */ + + sw0 = sw[0]; + sw1 = sw[1]; + sw2 = sw[2]; + /* Find Courant parameters. */ dtv = v0*dt; @@ -130,19 +154,21 @@ int BndApplyRadiative3Di(cGH *GH, /* Lower x-bound: x(2,:,:) --> x[xgp2] */ if (doBC[0]==1) { - for (k=0;k<lssh[2];k++) { - for (j=0;j<lssh[1];j++) { - for (i=sw[0]-1;i>=0;i--) { + for (k=0;k<lssh2;k++) { + for (j=0;j<lssh1;j++) { + for (i=sw0-1;i>=0;i--) { xgp0 = CCTK_GFINDEX3D(GH,i ,j,k); xgp1 = CCTK_GFINDEX3D(GH,i+1,j,k); - + ri0 = 1.0/r[xgp0]; + ri1 = 1.0/r[xgp1]; + var_n[xgp0] = - (dtv*var0 * (x[xgp0]/(SQR(r[xgp0])) + x[xgp1]/(SQR(r[xgp1]))) - - var_n[xgp1] * ( rhox + x[xgp1]/r[xgp1] * (one+v0*dth/r[xgp1])) - + var_p[xgp0] * ( rhox + x[xgp0]/r[xgp0] * (one-v0*dth/r[xgp0])) - - var_p[xgp1] * ( rhox - x[xgp1]/r[xgp1] * (one-v0*dth/r[xgp1]))) - / (-rhox + x[xgp0]/r[xgp0] * (one+v0*dth/r[xgp0])); + (dtv*var0 * (x[xgp0]*(SQR(ri0)) + x[xgp1]*(SQR(ri1))) + - var_n[xgp1] * ( rhox + x[xgp1]*ri1 * (one+v0*dth*ri1)) + + var_p[xgp0] * ( rhox + x[xgp0]*ri0 * (one-v0*dth*ri0)) + - var_p[xgp1] * ( rhox - x[xgp1]*ri1 * (one-v0*dth*ri1))) + / (-rhox + x[xgp0]*ri0 * (one+v0*dth*ri0)); } } @@ -152,19 +178,22 @@ int BndApplyRadiative3Di(cGH *GH, /* Upper x-bound: x(nx,:,:) --> xgp[xgp0] */ if (doBC[1]==1){ - for (k=0;k<lssh[2];k++) { - for (j=0;j<lssh[1];j++) { - for (i=lssh[0]-sw[0];i<lssh[0];i++) { + for (k=0;k<lssh2;k++) { + for (j=0;j<lssh1;j++) { + for (i=lssh0-sw0;i<lssh0;i++) { xgp0 = CCTK_GFINDEX3D(GH,i ,j,k); xgp1 = CCTK_GFINDEX3D(GH,i-1,j,k); + + ri0 = 1.0/r[xgp0]; + ri1 = 1.0/r[xgp1]; var_n[xgp0] = - (dtv*var0 * (x[xgp0]/(SQR(r[xgp0])) + x[xgp1]/(SQR(r[xgp1]))) - + var_n[xgp1] * ( rhox - x[xgp1]/r[xgp1] * (one+v0*dth/r[xgp1])) - + var_p[xgp0] * (-rhox + x[xgp0]/r[xgp0] * (one-v0*dth/r[xgp0])) - + var_p[xgp1] * ( rhox + x[xgp1]/r[xgp1] * (one-v0*dth/r[xgp1]))) - / ( rhox + x[xgp0]/r[xgp0] * (one+v0*dth/r[xgp0])); + (dtv*var0 * (x[xgp0]*(SQR(ri0)) + x[xgp1]*(SQR(ri1))) + + var_n[xgp1] * ( rhox - x[xgp1]*ri1 * (one+v0*dth*ri1)) + + var_p[xgp0] * (-rhox + x[xgp0]*ri0 * (one-v0*dth*ri0)) + + var_p[xgp1] * ( rhox + x[xgp1]*ri1 * (one-v0*dth*ri1))) + / ( rhox + x[xgp0]*ri0 * (one+v0*dth*ri0)); } } @@ -174,19 +203,22 @@ int BndApplyRadiative3Di(cGH *GH, /* Lower y-bound */ if (doBC[2] == 1) { - for (k=0;k<lssh[2];k++) { - for (i=0;i<lssh[0];i++) { - for (j=sw[1]-1;j>=0;j--) { + for (k=0;k<lssh2;k++) { + for (i=0;i<lssh0;i++) { + for (j=sw1-1;j>=0;j--) { ygp0 = CCTK_GFINDEX3D(GH,i,j ,k); ygp1 = CCTK_GFINDEX3D(GH,i,j+1,k); + + ri0 = 1.0/r[ygp0]; + ri1 = 1.0/r[ygp1]; var_n[ygp0] = - (dtv*var0 * (y[ygp0]/(SQR(r[ygp0])) + y[ygp1]/(SQR(r[ygp1]))) - - var_n[ygp1] * ( rhoy + y[ygp1]/r[ygp1] * (one+v0*dth/r[ygp1])) - + var_p[ygp0] * ( rhoy + y[ygp0]/r[ygp0] * (one-v0*dth/r[ygp0])) - - var_p[ygp1] * ( rhoy - y[ygp1]/r[ygp1] * (one-v0*dth/r[ygp1]))) - / (-rhoy + y[ygp0]/r[ygp0] * (one+v0*dth/r[ygp0])); + (dtv*var0 * (y[ygp0]*(SQR(ri0)) + y[ygp1]*(SQR(ri1))) + - var_n[ygp1] * ( rhoy + y[ygp1]*ri1 * (one+v0*dth*ri1)) + + var_p[ygp0] * ( rhoy + y[ygp0]*ri0 * (one-v0*dth*ri0)) + - var_p[ygp1] * ( rhoy - y[ygp1]*ri1 * (one-v0*dth*ri1))) + / (-rhoy + y[ygp0]*ri0 * (one+v0*dth*ri0)); } } @@ -196,19 +228,22 @@ int BndApplyRadiative3Di(cGH *GH, /* Upper y bound */ if (doBC[3] == 1) { - for (k=0;k<lssh[2];k++) { - for (i=0;i<lssh[0];i++) { - for (j=lssh[1]-sw[1];j<lssh[1];j++) { + for (k=0;k<lssh2;k++) { + for (i=0;i<lssh0;i++) { + for (j=lssh1-sw1;j<lssh1;j++) { ygp0 = CCTK_GFINDEX3D(GH,i,j ,k); ygp1 = CCTK_GFINDEX3D(GH,i,j-1,k); + ri0 = 1.0/r[ygp0]; + ri1 = 1.0/r[ygp1]; + var_n[ygp0] = - (dtv*var0 * (y[ygp0]/(SQR(r[ygp0])) + y[ygp1]/(SQR(r[ygp1]))) - + var_n[ygp1] * ( rhoy - y[ygp1]/r[ygp1] * (one+v0*dth/r[ygp1])) - + var_p[ygp0] * (-rhoy + y[ygp0]/r[ygp0] * (one-v0*dth/r[ygp0])) - + var_p[ygp1] * ( rhoy + y[ygp1]/r[ygp1] * (one-v0*dth/r[ygp1]))) - / ( rhoy + y[ygp0]/r[ygp0] * (one+v0*dth/r[ygp0])); + (dtv*var0 * (y[ygp0]*(SQR(ri0)) + y[ygp1]*(SQR(ri1))) + + var_n[ygp1] * ( rhoy - y[ygp1]*ri1 * (one+v0*dth*ri1)) + + var_p[ygp0] * (-rhoy + y[ygp0]*ri0 * (one-v0*dth*ri0)) + + var_p[ygp1] * ( rhoy + y[ygp1]*ri1 * (one-v0*dth*ri1))) + / ( rhoy + y[ygp0]*ri0 * (one+v0*dth*ri0)); } } @@ -218,19 +253,22 @@ int BndApplyRadiative3Di(cGH *GH, /* Lower z-bound */ if (doBC[4]==1) { - for (j=0;j<lssh[1];j++) { - for (i=0;i<lssh[0];i++) { - for (k=sw[2]-1;k>=0;k--) { + for (j=0;j<lssh1;j++) { + for (i=0;i<lssh0;i++) { + for (k=sw2-1;k>=0;k--) { zgp0 = CCTK_GFINDEX3D(GH,i,j,k ); zgp1 = CCTK_GFINDEX3D(GH,i,j,k+1); + + ri0 = 1.0/r[zgp0]; + ri1 = 1.0/r[zgp1]; var_n[zgp0] = - (dtv*var0 * (z[zgp0]/(SQR(r[zgp0])) + z[zgp1]/(SQR(r[zgp1]))) - - var_n[zgp1] * ( rhoz + z[zgp1]/r[zgp1] * (one+v0*dth/r[zgp1])) - + var_p[zgp0] * ( rhoz + z[zgp0]/r[zgp0] * (one-v0*dth/r[zgp0])) - - var_p[zgp1] * ( rhoz - z[zgp1]/r[zgp1] * (one-v0*dth/r[zgp1]))) - / (-rhoz + z[zgp0]/r[zgp0] * (one+v0*dth/r[zgp0])); + (dtv*var0 * (z[zgp0]*(SQR(ri0)) + z[zgp1]*(SQR(ri1))) + - var_n[zgp1] * ( rhoz + z[zgp1]*ri1 * (one+v0*dth*ri1)) + + var_p[zgp0] * ( rhoz + z[zgp0]*ri0 * (one-v0*dth*ri0)) + - var_p[zgp1] * ( rhoz - z[zgp1]*ri1 * (one-v0*dth*ri1))) + / (-rhoz + z[zgp0]*ri0 * (one+v0*dth*ri0)); } } @@ -240,19 +278,22 @@ int BndApplyRadiative3Di(cGH *GH, /* Upper z-bound */ if (doBC[5] == 1) { - for (j=0;j<lssh[1];j++) { - for (i=0;i<lssh[0];i++) { - for (k=lssh[2]-sw[2];k<lssh[2];k++) { + for (j=0;j<lssh1;j++) { + for (i=0;i<lssh0;i++) { + for (k=lssh2-sw2;k<lssh2;k++) { zgp0 = CCTK_GFINDEX3D(GH,i,j,k ); zgp1 = CCTK_GFINDEX3D(GH,i,j,k-1); + + ri0 = 1.0/r[zgp0]; + ri1 = 1.0/r[zgp1]; var_n[zgp0] = - (dtv*var0 * (z[zgp0]/(SQR(r[zgp0])) + z[zgp1]/(SQR(r[zgp1]))) - + var_n[zgp1] * ( rhoz - z[zgp1]/r[zgp1] * (one+v0*dth/r[zgp1])) - + var_p[zgp0] * (-rhoz + z[zgp0]/r[zgp0] * (one-v0*dth/r[zgp0])) - + var_p[zgp1] * ( rhoz + z[zgp1]/r[zgp1] * (one-v0*dth/r[zgp1]))) - / ( rhoz + z[zgp0]/r[zgp0] * (one+v0*dth/r[zgp0])); + (dtv*var0 * (z[zgp0]*(SQR(ri0)) + z[zgp1]*(SQR(ri1))) + + var_n[zgp1] * ( rhoz - z[zgp1]*ri1 * (one+v0*dth*ri1)) + + var_p[zgp0] * (-rhoz + z[zgp0]*ri0 * (one-v0*dth*ri0)) + + var_p[zgp1] * ( rhoz + z[zgp1]*ri1 * (one-v0*dth*ri1))) + / ( rhoz + z[zgp0]*ri0 * (one+v0*dth*ri0)); } } |