diff options
author | allen <allen@6a38eb6e-646e-4a02-a296-d141613ad6c4> | 1999-11-12 10:45:14 +0000 |
---|---|---|
committer | allen <allen@6a38eb6e-646e-4a02-a296-d141613ad6c4> | 1999-11-12 10:45:14 +0000 |
commit | 7793adf402b097ca428fda95d3454f25c890c799 (patch) | |
tree | 95ba2b4b9b0650eba83eadad25cc4dfdefbc88ad /src/FlatBoundary.c | |
parent | c86c24694a16acc9d33033baa199440d12f4be91 (diff) |
Tidying and prototypes
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/Boundary/trunk@71 6a38eb6e-646e-4a02-a296-d141613ad6c4
Diffstat (limited to 'src/FlatBoundary.c')
-rw-r--r-- | src/FlatBoundary.c | 83 |
1 files changed, 60 insertions, 23 deletions
diff --git a/src/FlatBoundary.c b/src/FlatBoundary.c index b86d852..27c41b9 100644 --- a/src/FlatBoundary.c +++ b/src/FlatBoundary.c @@ -21,6 +21,7 @@ #include "CactusBase/CartGrid3D/src/Symmetry.h" #include "cctk_FortranString.h" +void CCTKi_NotYetImplemented(const char *message); void ApplyFlat3Di(cGH *GH,int *doBC,int *lsh,int *stencil_size, CCTK_REAL *var); @@ -148,7 +149,6 @@ int FlatBCVarI(cGH *GH, int *stencil_size, int vi) { DECLARE_CCTK_PARAMETERS SymmetryGHex *sGHex; /* the Symmetry GHextension */ int *doBC; /* flags if lower/upper BCs are applied (1) or not (0) */ - char *message; int retval; @@ -158,10 +158,14 @@ int FlatBCVarI(cGH *GH, int *stencil_size, int vi) { if (CCTK_GroupTypeFromVarI(vi)==GROUP_GF) { int idim; - /* The rule is: IF we have no symmetries for the lower grid boundary, - (GFSym==ESYM_NOSYM or ==ESYM_UNSET) AND we have a lower(upper) bound - AND we have enough gridpoints THEN apply BC */ - for (idim=0;idim<GH->cctk_dim;idim++) { + /* Apply boundary condition if: + + no symmetry for grid boundary + + grid boundary is a physical boundary + + have enough points + */ + + for (idim=0;idim<GH->cctk_dim;idim++) + { doBC[idim*2] = (((sGHex->GFSym[vi][idim*2]==GFSYM_NOSYM)|| (sGHex->GFSym[vi][idim*2]==GFSYM_UNSET)) && @@ -169,11 +173,17 @@ int FlatBCVarI(cGH *GH, int *stencil_size, int vi) { doBC[idim*2+1] = (((sGHex->GFSym[vi][idim*2+1]==GFSYM_NOSYM)|| (sGHex->GFSym[vi][idim*2+1]==GFSYM_UNSET)) && GH->cctk_lsh[idim]>1 && GH->cctk_bbox[idim*2+1]); - } - if (GH->cctk_dim == 3) { - ApplyFlat3Di(GH,doBC,GH->cctk_lsh,stencil_size,GH->data[vi][0]); } - else { + if (GH->cctk_dim == 3) + { + ApplyFlat3Di(GH, + doBC, + GH->cctk_lsh, + stencil_size, + GH->data[vi][0]); + } + else + { CCTKi_NotYetImplemented("Flat boundaries in other than 3D"); retval = -1; return retval; @@ -183,22 +193,30 @@ int FlatBCVarI(cGH *GH, int *stencil_size, int vi) { CCTK_WARN(1,"You are trying to apply BC to s.th. else than a GF "); if (doBC) free(doBC); - return(0); + return retval; } -void FMODIFIER FORTRAN_NAME(FlatBCVarI)(int *retval, cGH *GH, int *stencil_size, int *vi) { +void FMODIFIER FORTRAN_NAME(FlatBCVarI)(int *retval, + cGH *GH, + int *stencil_size, + int *vi) +{ *retval = FlatBCVarI(GH, stencil_size, *vi); } -int FlatBCGroupI(cGH *GH, int *stencil_size, int gi) { +int FlatBCGroupI(cGH *GH, + int *stencil_size, + int gi) +{ int firstVarI,lastVarI,vi; int retval=0, rettmp=0; firstVarI = CCTK_FirstVarIndexI(gi); lastVarI = firstVarI+CCTK_NumVarsInGroupI(gi); - for (vi=firstVarI; vi<lastVarI; vi++) { + for (vi=firstVarI; vi<lastVarI; vi++) + { rettmp = FlatBCVarI(GH,stencil_size,vi); if (rettmp!=0) CCTK_WARN(1,"FlatBCGroupI: BC failed for one of the vars in the group"); retval = retval || rettmp; @@ -207,35 +225,49 @@ int FlatBCGroupI(cGH *GH, int *stencil_size, int gi) { return(retval); } -void FMODIFIER FORTRAN_NAME(FlatBCGroupI)(int *retval, cGH *GH, int *stencil_size, int *gi) { +void FMODIFIER FORTRAN_NAME(FlatBCGroupI)(int *retval, + cGH *GH, + int *stencil_size, + int *gi) +{ *retval=FlatBCGroupI(GH, stencil_size, *gi); } - - -int FlatBCGroup(cGH *GH, int *stencil_size, const char *impgrpname) { +int FlatBCGroup(cGH *GH, + int *stencil_size, + const char *impgrpname) +{ int gi; gi = CCTK_GroupIndex(impgrpname); return(FlatBCGroupI(GH, stencil_size, gi)); } -void FMODIFIER FORTRAN_NAME(FlatBCGroup)(int *retval, cGH *GH, int *stencil_size, ONE_FORTSTRING_ARG) { +void FMODIFIER FORTRAN_NAME(FlatBCGroup)(int *retval, + cGH *GH, + int *stencil_size, + ONE_FORTSTRING_ARG) +{ ONE_FORTSTRING_CREATE(impgrpname) *retval = FlatBCGroup(GH, stencil_size, impgrpname); free(impgrpname); } - - -int FlatBCVar(cGH *GH, int *stencil_size, const char *impvarname) { +int FlatBCVar(cGH *GH, + int *stencil_size, + const char *impvarname) +{ int vi; vi = CCTK_VarIndex(impvarname); return(FlatBCVarI(GH, stencil_size, vi)); } -void FMODIFIER FORTRAN_NAME(FlatBCVar)(int *retval, cGH *GH, int *stencil_size, ONE_FORTSTRING_ARG) { +void FMODIFIER FORTRAN_NAME(FlatBCVar)(int *retval, + cGH *GH, + int *stencil_size, + ONE_FORTSTRING_ARG) +{ ONE_FORTSTRING_CREATE(impvarname) *retval = FlatBCVar(GH, stencil_size, impvarname); free(impvarname); @@ -244,7 +276,12 @@ void FMODIFIER FORTRAN_NAME(FlatBCVar)(int *retval, cGH *GH, int *stencil_size, -void ApplyFlat3Di(cGH *GH,int *doBC,int *lsh,int *stencil_size, CCTK_REAL *var) { +void ApplyFlat3Di(cGH *GH, + int *doBC, + int *lsh, + int *stencil_size, + CCTK_REAL *var) +{ if (doBC[0] == 1) { |