diff options
Diffstat (limited to 'src/puncture_tracker.c')
-rw-r--r-- | src/puncture_tracker.c | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/src/puncture_tracker.c b/src/puncture_tracker.c index 6f2773c..4e36c1f 100644 --- a/src/puncture_tracker.c +++ b/src/puncture_tracker.c @@ -105,6 +105,7 @@ PunctureTracker_Track (CCTK_ARGUMENTS) } // Interpolation parameter table + int const order = 4; int const param_table_handle = Util_TableCreateFromString ("order=4"); if (param_table_handle < 0) { CCTK_WARN (CCTK_WARN_ALERT, "Can't create parameter table"); @@ -159,14 +160,27 @@ PunctureTracker_Track (CCTK_ARGUMENTS) output_arrays[2] = pt_betaz; // Interpolate - int const ierr = CCTK_InterpGridArrays - (cctkGH, dim, - operator_handle, param_table_handle, coordsys_handle, - num_points, - CCTK_VARIABLE_REAL, - interp_coords, - num_vars, input_array_indices, - num_vars, output_array_type_codes, output_arrays); + int ierr; + if (CCTK_IsFunctionAliased ("InterpGridArrays")) { + // TODO: use correct array types + // (CCTK_POINTER[] vs. CCTK_REAL[]) + ierr = InterpGridArrays + (cctkGH, dim, + order, + num_points, + interp_coords, + num_vars, input_array_indices, + num_vars, output_arrays); + } else { + ierr = CCTK_InterpGridArrays + (cctkGH, dim, + operator_handle, param_table_handle, coordsys_handle, + num_points, + CCTK_VARIABLE_REAL, + interp_coords, + num_vars, input_array_indices, + num_vars, output_array_type_codes, output_arrays); + } if (ierr < 0) { CCTK_WARN (CCTK_WARN_ALERT, "Interpolation error"); goto label_free_param_table; |