[ET Trac] [Einstein Toolkit] #1702: AEILocalInterp and LocalInterp should output scheduled function name in error messages

Einstein Toolkit trac-noreply at einsteintoolkit.org
Thu Nov 20 03:51:28 CST 2014


#1702: AEILocalInterp and LocalInterp should output scheduled function name in
error messages
----------------------------------------------------------------+-----------
 Reporter:  rhaas                                               |       Owner:                     
     Type:  enhancement                                         |      Status:  new                
 Priority:  minor                                               |   Milestone:                     
Component:  EinsteinToolkit thorn                               |     Version:  development version
 Keywords:  AEILocalInterl LocalInterp CarpetInterp PUGHInterp  |  
----------------------------------------------------------------+-----------
 the local interpolation routines abort if an interpolation cannot be
 performed since the interpolation coordinates lie outside of the patch of
 data they are given eg.
 {{{
 WARNING level 1 in thorn AEILocalInterp processor 0
   (line 1109 of arrangements/AEIThorns/AEILocalInterp/src/Lagrange-tensor-
 product/../template.c):
   ->
    CCTK_InterpLocalUniform():
         interpolation point is either outside the grid,
         or inside but too close to the grid boundary!
         (this may be caused by a global interpolation with
          driver::ghost_size too small)
         0-origin interpolation point number pt=54181 of
 N_interp_points=54182
         interpolation point (x,y,z)=(45.3992,15.5856,2.93915e-15)
         grid x_min(delta_x)x_max = -0.198(0.066)1.584
         grid y_min(delta_y)y_max = -0.198(0.066)1.518
         grid z_min(delta_z)z_max = -0.198(0.066)1.452
 }}}
 However, if there are mutliple thorns that may call the interpolator it is
 no always clear which caller was active when the error occured (eg it may
 be the apparent horizon finder or the puncture tracker).

 It would be nice if the interpolators were to report the currently
 executing scheduled routine's name via CCTK_ScheduleQueryCurrentFunction.
 That routine currently takes cctkGH as an argument but does not actually
 use it. Thus, given the possible benefit, it would be acceptable I think
 to call the routine with a NULL pointer (and a comment that this is
 strictly not valid).

 An alternative, which may be nicer, would be to have the driver add an
 entry "cctkGH" to the table passed to {{{CCTK_InterpLocalUniform}}} in its
 {{{param_table_handle}}}. The local interpolator can then savely use this
 pointer if provided and (with an appropriate loud warning) fall back to
 passing NULL if it is not found (and stop the fallback once the flesh
 routine actually uses cctkGH).

-- 
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1702>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit


More information about the Trac mailing list