From eea6dc2929fdb7e096d8255a6e80b89981b99a69 Mon Sep 17 00:00:00 2001 From: miguel Date: Wed, 9 Oct 2002 22:19:29 +0000 Subject: eliminated upwinding here! Derivatives of the shift SHOULD NOT be upwinded. Upwinding happens in derivatives of other fields that are hit by a shift in front. This upwindind was wrong and was introducing large errors. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinBase/ADMMacros/trunk@49 b1d164ef-f17a-46e7-89d4-021c7118ef4e --- src/macro/DXDB_declare.h | 7 ----- src/macro/DXDB_guts.h | 76 +++--------------------------------------------- src/macro/DYDB_declare.h | 7 ----- src/macro/DYDB_guts.h | 76 +++--------------------------------------------- src/macro/DZDB_declare.h | 7 ----- src/macro/DZDB_guts.h | 76 +++--------------------------------------------- 6 files changed, 12 insertions(+), 237 deletions(-) diff --git a/src/macro/DXDB_declare.h b/src/macro/DXDB_declare.h index cab9b4e..54aaaf6 100644 --- a/src/macro/DXDB_declare.h +++ b/src/macro/DXDB_declare.h @@ -67,13 +67,6 @@ CCTK_REAL DXDB_DXDBY CCTK_REAL DXDB_DXDBZ -#ifndef ADMMACROS_ADVECTION - integer admmacros_advectionx - integer admmacros_advectiony - integer admmacros_advectionz -#define ADMMACROS_ADVECTION -#endif - #endif diff --git a/src/macro/DXDB_guts.h b/src/macro/DXDB_guts.h index 295da7b..c47e81d 100644 --- a/src/macro/DXDB_guts.h +++ b/src/macro/DXDB_guts.h @@ -17,79 +17,11 @@ #ifdef FCODE - DXDB_OO2DX = 1D0/(2D0*DXDB_DX) + DXDB_OO2DX = 1.0D0/(2.0D0*DXDB_DX) - if (admmacros_advectionx .eq. 0) then /* CENTER */ - - DXDB_DXDBX = DXDB_OO2DX*(DXDB_BX_IP - DXDB_BX_IM) - - else if (admmacros_advectionx .eq. 1) then /* UPWIND1 */ - - DXDB_DXDBX = (DXDB_BX_IP - DXDB_BX)/DXDB_DX - - else if (admmacros_advectionx .eq. -1) then /* UPWIND1 */ - - DXDB_DXDBX = (DXDB_BX - DXDB_BX_IM)/DXDB_DX - - else if (admmacros_advectionx .eq. 2) then /* UPWIND2 */ - - DXDB_DXDBX = - 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BX - 4.0D0*DXDB_BX_IP + DXDB_BX_IPP) - - else if (admmacros_advectionx .eq. -2) then /* UPWIND2 */ - - DXDB_DXDBX = 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BX - 4.0D0*DXDB_BX_IM + DXDB_BX_IMM) - - end if - - if (admmacros_advectionx .eq. 0) then /* CENTER */ - - DXDB_DXDBY = DXDB_OO2DX*(DXDB_BY_IP - DXDB_BY_IM) - - else if (admmacros_advectionx .eq. 1) then /* UPWIND1 */ - - DXDB_DXDBY = (DXDB_BY_IP - DXDB_BY)/DXDB_DX - - else if (admmacros_advectionx .eq. -1) then /* UPWIND1 */ - - DXDB_DXDBY = (DXDB_BY - DXDB_BY_IM)/DXDB_DX - - else if (admmacros_advectionx .eq. 2) then /* UPWIND2 */ - - DXDB_DXDBY = - 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BY - 4.0D0*DXDB_BY_IP + DXDB_BY_IPP) - - else if (admmacros_advectionx .eq. -2) then /* UPWIND2 */ - - DXDB_DXDBY = 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BY - 4.0D0*DXDB_BY_IM + DXDB_BY_IMM) - - end if - - if (admmacros_advectionx .eq. 0) then /* CENTER */ - - DXDB_DXDBZ = DXDB_OO2DX*(DXDB_BZ_IP - DXDB_BZ_IM) - - else if (admmacros_advectionx .eq. 1) then /* UPWIND1 */ - - DXDB_DXDBZ = (DXDB_BZ_IP - DXDB_BZ)/DXDB_DX - - else if (admmacros_advectionx .eq. -1) then /* UPWIND1 */ - - DXDB_DXDBZ = (DXDB_BZ - DXDB_BZ_IM)/DXDB_DX - - else if (admmacros_advectionx .eq. 2) then /* UPWIND2 */ - - DXDB_DXDBZ = - 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BZ - 4.0D0*DXDB_BZ_IP + DXDB_BZ_IPP) - - else if (admmacros_advectionx .eq. -2) then /* UPWIND2 */ - - DXDB_DXDBZ = 0.5D0/DXDB_DX \ - *(3.0D0*DXDB_BZ - 4.0D0*DXDB_BZ_IM + DXDB_BZ_IMM) - - end if + DXDB_DXDBX = DXDB_OO2DX*(DXDB_BX_IP - DXDB_BX_IM) + DXDB_DXDBY = DXDB_OO2DX*(DXDB_BY_IP - DXDB_BY_IM) + DXDB_DXDBZ = DXDB_OO2DX*(DXDB_BZ_IP - DXDB_BZ_IM) #endif diff --git a/src/macro/DYDB_declare.h b/src/macro/DYDB_declare.h index 5d268dd..3b73b7d 100644 --- a/src/macro/DYDB_declare.h +++ b/src/macro/DYDB_declare.h @@ -67,13 +67,6 @@ CCTK_REAL DYDB_DYDBY CCTK_REAL DYDB_DYDBZ -#ifndef ADMMACROS_ADVECTION - integer admmacros_advectionx - integer admmacros_advectiony - integer admmacros_advectionz -#define ADMMACROS_ADVECTION -#endif - #endif #ifdef CCODE diff --git a/src/macro/DYDB_guts.h b/src/macro/DYDB_guts.h index 43f5b91..54cba6c 100644 --- a/src/macro/DYDB_guts.h +++ b/src/macro/DYDB_guts.h @@ -17,79 +17,11 @@ #ifdef FCODE - DYDB_OO2DY = 1D0/(2D0*DYDB_DY) - - if (admmacros_advectiony .eq. 0) then /* CENTER */ - - DYDB_DYDBX = DYDB_OO2DY*(DYDB_BX_JP - DYDB_BX_JM) - - else if (admmacros_advectiony .eq. 1) then /* UPWIND1 */ - - DYDB_DYDBX = (DYDB_BX_JP - DYDB_BX)/DYDB_DY - - else if (admmacros_advectiony .eq. -1) then /* UPWIND1 */ - - DYDB_DYDBX = (DYDB_BX - DYDB_BX_JM)/DYDB_DY - - else if (admmacros_advectiony .eq. 2) then /* UPWIND2 */ - - DYDB_DYDBX = - 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BX - 4.0D0*DYDB_BX_JP + DYDB_BX_JPP) - - else if (admmacros_advectiony .eq. -2) then /* UPWIND2 */ - - DYDB_DYDBX = 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BX - 4.0D0*DYDB_BX_JM + DYDB_BX_JMM) - - end if - - if (admmacros_advectiony .eq. 0) then /* CENTER */ - - DYDB_DYDBY = DYDB_OO2DY*(DYDB_BY_JP - DYDB_BY_JM) - - else if (admmacros_advectiony .eq. 1) then /* UPWIND1 */ - - DYDB_DYDBY = (DYDB_BY_JP - DYDB_BY)/DYDB_DY - - else if (admmacros_advectiony .eq. -1) then /* UPWIND1 */ - - DYDB_DYDBY = (DYDB_BY - DYDB_BY_JM)/DYDB_DY - - else if (admmacros_advectiony .eq. 2) then /* UPWIND2 */ - - DYDB_DYDBY = - 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BY - 4.0D0*DYDB_BY_JP + DYDB_BY_JPP) - - else if (admmacros_advectiony .eq. -2) then /* UPWIND2 */ - - DYDB_DYDBY = 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BY - 4.0D0*DYDB_BY_JM + DYDB_BY_JMM) - - end if - - if (admmacros_advectiony .eq. 0) then /* CENTER */ - - DYDB_DYDBZ = DYDB_OO2DY*(DYDB_BZ_JP - DYDB_BZ_JM) - - else if (admmacros_advectiony .eq. 1) then /* UPWIND1 */ - - DYDB_DYDBZ = (DYDB_BZ_JP - DYDB_BZ)/DYDB_DY - - else if (admmacros_advectiony .eq. -1) then /* UPWIND1 */ - - DYDB_DYDBZ = (DYDB_BZ - DYDB_BZ_JM)/DYDB_DY - - else if (admmacros_advectiony .eq. 2) then /* UPWIND2 */ - - DYDB_DYDBZ = - 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BZ - 4.0D0*DYDB_BZ_JP + DYDB_BZ_JPP) - - else if (admmacros_advectiony .eq. -2) then /* UPWIND2 */ - - DYDB_DYDBZ = 0.5D0/DYDB_DY \ - *(3.0D0*DYDB_BZ - 4.0D0*DYDB_BZ_JM + DYDB_BZ_JMM) + DYDB_OO2DY = 1.0D0/(2.0D0*DYDB_DY) - end if + DYDB_DYDBX = DYDB_OO2DY*(DYDB_BX_JP - DYDB_BX_JM) + DYDB_DYDBY = DYDB_OO2DY*(DYDB_BY_JP - DYDB_BY_JM) + DYDB_DYDBZ = DYDB_OO2DY*(DYDB_BZ_JP - DYDB_BZ_JM) #endif diff --git a/src/macro/DZDB_declare.h b/src/macro/DZDB_declare.h index ab3a7ea..6e08b3a 100644 --- a/src/macro/DZDB_declare.h +++ b/src/macro/DZDB_declare.h @@ -67,13 +67,6 @@ CCTK_REAL DZDB_DZDBY CCTK_REAL DZDB_DZDBZ -#ifndef ADMMACROS_ADVECTION - integer admmacros_advectionx - integer admmacros_advectiony - integer admmacros_advectionz -#define ADMMACROS_ADVECTION -#endif - #endif #ifdef CCODE diff --git a/src/macro/DZDB_guts.h b/src/macro/DZDB_guts.h index 75b708e..5797db7 100644 --- a/src/macro/DZDB_guts.h +++ b/src/macro/DZDB_guts.h @@ -17,79 +17,11 @@ #ifdef FCODE - DZDB_OO2DZ = 1D0/(2D0*DZDB_DZ) - - if (admmacros_advectionz .eq. 0) then /* CENTER */ - - DZDB_DZDBX = DZDB_OO2DZ*(DZDB_BX_KP - DZDB_BX_KM) - - else if (admmacros_advectionz .eq. 1) then /* UPWIND1 */ - - DZDB_DZDBX = (DZDB_BX_KP - DZDB_BX)/DZDB_DZ - - else if (admmacros_advectionz .eq. -1) then /* UPWIND1 */ - - DZDB_DZDBX = (DZDB_BX - DZDB_BX_KM)/DZDB_DZ - - else if (admmacros_advectionz .eq. 2) then /* UPWIND2 */ - - DZDB_DZDBX = - 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BX - 4.0D0*DZDB_BX_KP + DZDB_BX_KPP) - - else if (admmacros_advectionz .eq. -2) then /* UPWIND2 */ - - DZDB_DZDBX = 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BX - 4.0D0*DZDB_BX_KM + DZDB_BX_KMM) - - end if - - if (admmacros_advectionz .eq. 0) then /* CENTER */ - - DZDB_DZDBY = DZDB_OO2DZ*(DZDB_BY_KP - DZDB_BY_KM) - - else if (admmacros_advectionz .eq. 1) then /* UPWIND1 */ - - DZDB_DZDBY = (DZDB_BY_KP - DZDB_BY)/DZDB_DZ - - else if (admmacros_advectionz .eq. -1) then /* UPWIND1 */ - - DZDB_DZDBY = (DZDB_BY - DZDB_BY_KM)/DZDB_DZ - - else if (admmacros_advectionz .eq. 2) then /* UPWIND2 */ - - DZDB_DZDBY = - 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BY - 4.0D0*DZDB_BY_KP + DZDB_BY_KPP) - - else if (admmacros_advectionz .eq. -2) then /* UPWIND2 */ - - DZDB_DZDBY = 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BY - 4.0D0*DZDB_BY_KM + DZDB_BY_KMM) - - end if - - if (admmacros_advectionz .eq. 0) then /* CENTER */ - - DZDB_DZDBZ = DZDB_OO2DZ*(DZDB_BZ_KP - DZDB_BZ_KM) - - else if (admmacros_advectionz .eq. 1) then /* UPWIND1 */ - - DZDB_DZDBZ = (DZDB_BZ_KP - DZDB_BZ)/DZDB_DZ - - else if (admmacros_advectionz .eq. -1) then /* UPWIND1 */ - - DZDB_DZDBZ = (DZDB_BZ - DZDB_BZ_KM)/DZDB_DZ - - else if (admmacros_advectionz .eq. 2) then /* UPWIND2 */ - - DZDB_DZDBZ = - 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BZ - 4.0D0*DZDB_BZ_KP + DZDB_BZ_KPP) - - else if (admmacros_advectionz .eq. -2) then /* UPWIND2 */ - - DZDB_DZDBZ = 0.5D0/DZDB_DZ \ - *(3.0D0*DZDB_BZ - 4.0D0*DZDB_BZ_KM + DZDB_BZ_KMM) + DZDB_OO2DZ = 1.0D0/(2.0D0*DZDB_DZ) - end if + DZDB_DZDBX = DZDB_OO2DZ*(DZDB_BX_KP - DZDB_BX_KM) + DZDB_DZDBY = DZDB_OO2DZ*(DZDB_BY_KP - DZDB_BY_KM) + DZDB_DZDBZ = DZDB_OO2DZ*(DZDB_BZ_KP - DZDB_BZ_KM) #endif -- cgit v1.2.3