diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2010-01-25 18:14:47 -0600 |
---|---|---|
committer | Erik Schnetter <schnetter@cct.lsu.edu> | 2010-01-25 18:14:47 -0600 |
commit | 08571b14f158653ced2d954f75b36b4105a582e2 (patch) | |
tree | 4ff8b3689747f3687fa2349372e4b35c42baf51f /ML_BSSN_MP | |
parent | b34404d76b7ffbc9088fb0efc44380229c6d3132 (diff) |
Avoid division-by-zero problems when ShiftGammaCoeff=0
Diffstat (limited to 'ML_BSSN_MP')
-rw-r--r-- | ML_BSSN_MP/src/ML_BSSN_MP_convertFromADMBaseGamma.c | 58 |
1 files changed, 44 insertions, 14 deletions
diff --git a/ML_BSSN_MP/src/ML_BSSN_MP_convertFromADMBaseGamma.c b/ML_BSSN_MP/src/ML_BSSN_MP_convertFromADMBaseGamma.c index a7c4713..b89269c 100644 --- a/ML_BSSN_MP/src/ML_BSSN_MP_convertFromADMBaseGamma.c +++ b/ML_BSSN_MP/src/ML_BSSN_MP_convertFromADMBaseGamma.c @@ -328,20 +328,50 @@ void ML_BSSN_MP_convertFromADMBaseGamma_Body(cGH const * const cctkGH, CCTK_INT AL = -(dtalpL*(-1 + LapseAdvectionCoeff)*INV(harmonicF)*pow(alphaL,-harmonicN)); - B1L = (dtbetaxL - (PDupwindNth1(beta1, i, j, k)*(beta1L*J11L + beta2L*J12L + beta3L*J13L) + - PDupwindNth2(beta1, i, j, k)*(beta1L*J21L + beta2L*J22L + beta3L*J23L) + - PDupwindNth3(beta1, i, j, k)*(beta1L*J31L + beta2L*J32L + beta3L*J33L))*ShiftAdvectionCoeff)* - INV(ShiftGammaCoeff); - - B2L = (dtbetayL - (PDupwindNth1(beta2, i, j, k)*(beta1L*J11L + beta2L*J12L + beta3L*J13L) + - PDupwindNth2(beta2, i, j, k)*(beta1L*J21L + beta2L*J22L + beta3L*J23L) + - PDupwindNth3(beta2, i, j, k)*(beta1L*J31L + beta2L*J32L + beta3L*J33L))*ShiftAdvectionCoeff)* - INV(ShiftGammaCoeff); - - B3L = (dtbetazL - (PDupwindNth1(beta3, i, j, k)*(beta1L*J11L + beta2L*J12L + beta3L*J13L) + - PDupwindNth2(beta3, i, j, k)*(beta1L*J21L + beta2L*J22L + beta3L*J23L) + - PDupwindNth3(beta3, i, j, k)*(beta1L*J31L + beta2L*J32L + beta3L*J33L))*ShiftAdvectionCoeff)* - INV(ShiftGammaCoeff); + B1L = IfThen(ShiftGammaCoeff,(dtbetaxL - PDupwindNth1(beta1, i, j, k)*beta1L*J11L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetaxL - PDupwindNth1(beta1, i, j, k)*beta2L*J12L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetaxL - PDupwindNth1(beta1, i, j, k)*beta3L*J13L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetaxL - PDupwindNth2(beta1, i, j, k)*beta1L*J21L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetaxL - PDupwindNth2(beta1, i, j, k)*beta2L*J22L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetaxL - PDupwindNth2(beta1, i, j, k)*beta3L*J23L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetaxL - PDupwindNth3(beta1, i, j, k)*beta1L*J31L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetaxL - PDupwindNth3(beta1, i, j, k)*beta2L*J32L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetaxL - PDupwindNth3(beta1, i, j, k)*beta3L*J33L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0); + + B2L = IfThen(ShiftGammaCoeff,(dtbetayL - PDupwindNth1(beta2, i, j, k)*beta1L*J11L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetayL - PDupwindNth1(beta2, i, j, k)*beta2L*J12L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetayL - PDupwindNth1(beta2, i, j, k)*beta3L*J13L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetayL - PDupwindNth2(beta2, i, j, k)*beta1L*J21L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetayL - PDupwindNth2(beta2, i, j, k)*beta2L*J22L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetayL - PDupwindNth2(beta2, i, j, k)*beta3L*J23L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetayL - PDupwindNth3(beta2, i, j, k)*beta1L*J31L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetayL - PDupwindNth3(beta2, i, j, k)*beta2L*J32L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetayL - PDupwindNth3(beta2, i, j, k)*beta3L*J33L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0); + + B3L = IfThen(ShiftGammaCoeff,(dtbetazL - PDupwindNth1(beta3, i, j, k)*beta1L*J11L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetazL - PDupwindNth1(beta3, i, j, k)*beta2L*J12L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetazL - PDupwindNth1(beta3, i, j, k)*beta3L*J13L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetazL - PDupwindNth2(beta3, i, j, k)*beta1L*J21L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetazL - PDupwindNth2(beta3, i, j, k)*beta2L*J22L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetazL - PDupwindNth2(beta3, i, j, k)*beta3L*J23L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetazL - PDupwindNth3(beta3, i, j, k)*beta1L*J31L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0) + IfThen(ShiftGammaCoeff, + (dtbetazL - PDupwindNth3(beta3, i, j, k)*beta2L*J32L*ShiftAdvectionCoeff)*INV(ShiftGammaCoeff),0) + + IfThen(ShiftGammaCoeff,(dtbetazL - PDupwindNth3(beta3, i, j, k)*beta3L*J33L*ShiftAdvectionCoeff)* + INV(ShiftGammaCoeff),0); /* Copy local copies back to grid functions */ |