User: rhaas Date: 2012/11/27 11:52 AM
Modified: /trunk/ param.ccl, schedule.ccl /trunk/src/ gauge.F77
Log: add dtlapse_evolution and dtshift_evolution method options
This attached patch actually does two things: 1. adds dtlapse_evolution method and dtshift_evolution method options 'exact' to the respective ADMBase keywords 2. schedules metric initialization in MoL_PostStep (in addition to CCTK_PRESTEP) which is in line with what the current gauge initialization routine does
File Changes:
Directory: /trunk/src/ ======================
File [modified]: gauge.F77 Delta lines: +2 -2 =================================================================== --- trunk/src/gauge.F77 2012-11-21 20:10:41 UTC (rev 283) +++ trunk/src/gauge.F77 2012-11-27 17:52:52 UTC (rev 284) @@ -82,8 +82,8 @@ if ( is_later_slice ) then set_lapse = CCTK_Equals(lapse_evolution_method, "exact").ne.0 set_shift = CCTK_Equals(shift_evolution_method, "exact").ne.0 - set_dtlapse = .false. - set_dtshift = .false. + set_dtlapse = CCTK_Equals(dtlapse_evolution_method, "exact").ne.0 + set_dtshift = CCTK_Equals(dtshift_evolution_method, "exact").ne.0 end if
if ( set_lapse .or. set_shift .or. set_dtlapse .or. set_dtshift) then
Directory: /trunk/ ==================
File [modified]: param.ccl Delta lines: +9 -0 =================================================================== --- trunk/param.ccl 2012-11-21 20:10:41 UTC (rev 283) +++ trunk/param.ccl 2012-11-27 17:52:52 UTC (rev 284) @@ -24,6 +24,15 @@ "exact" :: "Use shift from exact solution" }
+EXTENDS KEYWORD dtlapse_evolution_method +{ + "exact" :: "Use lapse from exact solution" +} +EXTENDS KEYWORD dtshift_evolution_method +{ + "exact" :: "Use shift from exact solution" +} + EXTENDS KEYWORD initial_lapse { "exact" :: "Initial lapse from exact solution"
File [modified]: schedule.ccl Delta lines: +6 -1 =================================================================== --- trunk/schedule.ccl 2012-11-21 20:10:41 UTC (rev 283) +++ trunk/schedule.ccl 2012-11-27 17:52:52 UTC (rev 284) @@ -74,7 +74,7 @@
# During the evolution:
-if ( (CCTK_Equals(lapse_evolution_method,"exact")) || (CCTK_Equals(shift_evolution_method,"exact")) ) +if ( (CCTK_Equals(lapse_evolution_method,"exact")) || (CCTK_Equals(shift_evolution_method,"exact")) || (CCTK_Equals(dtlapse_evolution_method,"exact")) || (CCTK_Equals(dtshift_evolution_method,"exact")) ) { schedule Exact__RegisterSlicing at CCTK_STARTUP { @@ -132,6 +132,11 @@ { LANG: Fortran } "Set data from exact solution on an exact slice" + # Necessary if MoL is used + schedule Exact__initialize in MoL_PostStep + { + LANG: Fortran + } "Set data from exact solution on an exact slice" }
#######################################################################