#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. -----------------------------------+---------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Keywords: | -----------------------------------+---------------------------------------- GRHydro calculates and stores the determinant of the spatial metric, among other places, in CCTK_INITIAL. However, there is currently no provision for this to happen after ADMBase_PostInitial, which can potentially change the spatial metric before the initial data is finalized. It can therefore happen that GRHydro uses old metric data.
The attached patch solves this problem.
#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. ------------------------------------+--------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: ------------------------------------+---------------------------------------
Comment (by rhaas):
Should we maybe ensure instead that HydroBase_Prim2ConInitial runs after ADMBase_PostInitial and that GRHydro_SqrtSpatialDeterminant runs in between?
#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. ------------------------------------+--------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: ------------------------------------+---------------------------------------
Comment (by bentivegna):
Well, GRHydro_SqrtSpatialDeterminant is already scheduled to run before HydroBase_Prim2ConInitial, so if the former runs after ADMBase_PostInitial, the latter will too. Are there practical cases where the two suggestions differ? (Or are you just proposing a logically better solution?)
Note: my first patch had the new constraint in the BEFORE block, not in AFTER. I just replaced it.
#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. ------------------------------------+--------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: ------------------------------------+---------------------------------------
Comment (by rhaas):
The logic is flawed :-). Just because both GRHydro_SqrtSpatialDeterminant and ADMBase_PostInitial are scheduled to run before HydroBase_Prim2ConInitial, no ordering is yet imposed between GRHydro_SqrtSpatialDeterminant and ADMBase_PostInitial. Your updated patch does impose a correct ordering though.
I think my original comment was based on not knowing on top of my head whether HydroBase_Prim2ConInitial was scheduled to run after ADMBase_PostInitial or not.
Your patch looks fine to me. Please apply (do you have commit rights?).
#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. ------------------------------------+--------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: ------------------------------------+---------------------------------------
Comment (by bentivegna):
I do have commit rights, and have just applied the patch.
#2087: Scheduling of GRHydro_SqrtSpatialDeterminant. ------------------------------------+--------------------------------------- Reporter: bentivegna | Owner: Type: defect | Status: closed Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: fixed | Keywords: ------------------------------------+--------------------------------------- Changes (by rhaas):
* status: new => closed * resolution: => fixed
Comment:
Thank you.
trac@lists.einsteintoolkit.org