From acb151ad12413f3f0ef74476f500002f46777d79 Mon Sep 17 00:00:00 2001 From: rhaas Date: Sat, 6 Jul 2013 18:12:15 +0000 Subject: GRHydro_InitData: Reschedule to make things work with multipatch. Spit out a compile-time warning since poloidal ID B-field routine is not yet adapted to MP. From: Christian Reisswig git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/GRHydro_InitData/trunk@215 ac85fae7-cede-4708-beff-ae01c7fa1c26 --- schedule.ccl | 6 ++++-- src/GRHydro_PoloidalMagFieldM.F90 | 10 +++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/schedule.ccl b/schedule.ccl index b0a1dbb..6d97e4a 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -270,11 +270,13 @@ SCHEDULE GRHydro_BondiM_Boundary IN HydroBase_Boundaries BEFORE HydroBase_Select if (CCTK_EQUALS(initial_Bvec, "poloidalmagfield") || CCTK_EQUALS(initial_Avec, "poloidalmagfield")) { # SCHEDULE GRHydro_PoloidalMagFieldM AT CCTK_INITIAL AFTER IN HydroBase_Initial AFTER rnsid_init AFTER TOV_Initial_Data after CCCC_StarMapper_InitialData - SCHEDULE GRHydro_PoloidalMagFieldM AT CCTK_POSTINITIAL +# SCHEDULE GRHydro_PoloidalMagFieldM AT CCTK_POSTINITIAL + SCHEDULE GRHydro_PoloidalMagFieldM AT CCTK_INITIAL AFTER HydroBase_Initial BEFORE GRHydroTransformPrimToLocalBasis { LANGUAGE: Fortran } "Set up a poloidal magnetic field. It expects the other fluid variables already to be set, as for example in the TOV solution" - SCHEDULE group HydroBase_Boundaries IN HydroBase_Initial AFTER GRHydro_PoloidalMagFieldM +# SCHEDULE group HydroBase_Boundaries IN HydroBase_Initial AFTER GRHydro_PoloidalMagFieldM + SCHEDULE group HydroBase_Boundaries IN CCTK_INITIAL AFTER GRHydro_PoloidalMagFieldM BEFORE GRHydroTransformPrimToLocalBasis { } "Call boundary conditions after magnetic field initial data setup" } diff --git a/src/GRHydro_PoloidalMagFieldM.F90 b/src/GRHydro_PoloidalMagFieldM.F90 index 37b4377..c809001 100644 --- a/src/GRHydro_PoloidalMagFieldM.F90 +++ b/src/GRHydro_PoloidalMagFieldM.F90 @@ -85,7 +85,8 @@ subroutine GRHydro_PoloidalMagFieldM(CCTK_ARGUMENTS) write(*,*)'GRHydro_InitData: Setting up initial poloidal magnetic field' - +! Initialize to zero + Bvec = 0.0d0 do i=2,nx-1 do j=2,ny-1 @@ -106,6 +107,7 @@ subroutine GRHydro_PoloidalMagFieldM(CCTK_ARGUMENTS) !! write(*,*)'delPcut = ', delPcut !! write(*,*)'maxP_Pcut = ', maxP_Pcut +#warning "This algorithm does only work on Cartesian grids!!" rho_dx = 0.5d0*(rho(i+1,j,k)-rho(i-1,j,k))/dx rho_dy = 0.5d0*(rho(i,j+1,k)-rho(i,j-1,k))/dy rho_dz = 0.5d0*(rho(i,j,k+1)-rho(i,j,k-1))/dz @@ -183,6 +185,12 @@ subroutine GRHydro_PoloidalMagFieldM(CCTK_ARGUMENTS) if (clean_divergence .ne. 0) then psidcrhs =0.0 endif + + !Bvec = 0 + !lBvec = 0 + !Bcons = 0 + !Avec = 0 + return end subroutine GRHydro_PoloidalMagFieldM -- cgit v1.2.3