Hi 2014-04-30 1:15 GMT+09:00 Frank Loeffler <kn...@cct.lsu.edu>:
> On Tue, Apr 29, 2014 at 06:40:19PM +0900, Hee Il Kim wrote: > > Yes, I chose the action "terminate" to make the nan mask. But if Con2Prim > > of GRHydro finds NaN first, then the run is terminated before making the > > output of the nan mask. > > Hi, > > Can you try setting GRHydro::GRHydro_c2p_failed_action = "terminate"? > "abort" is default, and does what you described. "terminate" should > allow the mask to be written. > > Frank > > The output could be made by GRHydro::GRHydro_c2p_failed_action = "terminate" but it also has no information on the location of NaNs. I found an older NaNChecker works to locate NaNs. I couldn't find any version info, so I attached below a diff file. Hee Il #### diff -r NaNChecker.ET NaNChecker.old #### Only in NaNChecker.ET/doc: .svn diff -r NaNChecker.ET/interface.ccl NaNChecker.old/interface.ccl 31,36d30 < CCTK_INT FUNCTION \ < GetRefinementLevel \ < (CCTK_POINTER_TO_CONST IN cctkGH) < USES FUNCTION GetRefinementLevel < < diff -r NaNChecker.ET/param.ccl NaNChecker.old/param.ccl 54,64d53 < < BOOLEAN ignore_restricted_points "do not check grid points whose values will be restricted away" STEERABLE = ALWAYS < { < } "no" < < STRING restriction_mask "grid function to use to decide which points are restricted away, points where the mask is zero are ignored" STEERABLE = ALWAYS < { < "CarpetReduce[:][:]weight" :: "Carpet's reduction mask" < "CarpetEvolutionMask[:][:]evolution_mask" :: "takes prolongation stencil into account" < ".*[:][:].*" :: "any grid function with points masked out set to zero" < } "CarpetReduce::weight" diff -r NaNChecker.ET/schedule.ccl NaNChecker.old/schedule.ccl 8c8 < schedule NaNChecker_ResetCounter at BASEGRID --- > schedule NaNChecker_ResetCounter at INITIAL 20,30c20 < schedule NaNChecker_NaNCheck_Prepare IN NaNChecker_NaNCheck < { < LANG: C < OPTIONS: level < } "Prepare data structures to check for NaNs" < < schedule GROUP NaNChecker_NaNCheck as zzz_NaNChecker_NaNCheck at POSTSTEP < { < } "Check for NaNs and count them in NaNChecker::NaNsFound" < < schedule NaNChecker_NaNCheck_Check IN NaNChecker_NaNCheck AFTER NaNChecker_NaNCheck_Prepare --- > schedule NaNChecker_NaNCheck at POSTSTEP 34,49d23 < } "Check for NaNs" < < schedule NaNChecker_NaNCheck_Finish IN NaNChecker_NaNCheck AFTER NaNChecker_NaNCheck_Check < { < LANG: C < OPTIONS: level < } "Count NaNs in NaNChecker::NaNsFound" < < schedule NaNChecker_TakeAction at POSTSTEP after zzz_NaNChecker_NaNCheck < { < LANG: C < OPTIONS: global loop-level < } "Output NaNChecker::NaNmask and take action according to NaNChecker::action_if_found" < < schedule GROUP NaNChecker_NaNCheck as zzz_NaNChecker_NaNCheck at POST_RECOVER_VARIABLES < { 52c26 < schedule NaNChecker_TakeAction at POST_RECOVER_VARIABLES after zzz_NaNChecker_NaNCheck --- > schedule NaNChecker_TakeAction at POSTSTEP after NaNChecker_NaNCheck diff -r NaNChecker.ET/src/make.code.defn NaNChecker.old/src/make.code.defn 5c5 < SRCS = NaNCheck.cc --- > SRCS = NaNCheck.c Only in NaNChecker.old/src: NaNCheck.c Only in NaNChecker.ET/src: NaNCheck.cc diff -r NaNChecker.ET/src/NaNCheck.h NaNChecker.old/src/NaNCheck.h 16d15 < namespace NaNChecker { 32d30 < } // end namespace NaNChecker Only in NaNChecker.ET/src: .svn Only in NaNChecker.ET: .svn Only in NaNChecker.ET: test
_______________________________________________ Users mailing list Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users