aboutsummaryrefslogtreecommitdiff
path: root/src/EHFinder_Integrate2.F90
diff options
context:
space:
mode:
Diffstat (limited to 'src/EHFinder_Integrate2.F90')
-rw-r--r--src/EHFinder_Integrate2.F9014
1 files changed, 12 insertions, 2 deletions
diff --git a/src/EHFinder_Integrate2.F90 b/src/EHFinder_Integrate2.F90
index 48bd609..6433533 100644
--- a/src/EHFinder_Integrate2.F90
+++ b/src/EHFinder_Integrate2.F90
@@ -18,6 +18,10 @@ subroutine EHFinder_FindSurfaceElement(CCTK_ARGUMENTS)
CCTK_INT :: i, j, k, im, jm
CCTK_INT :: interp_handle, table_handle, coord_system_handle
+ character(len=200) :: area_interp
+ CCTK_INT :: area_interp_len
+ character(len=7) :: area_order
+
CCTK_INT, dimension(4) :: bbox
CCTK_INT, dimension(2) :: gsh, lsh, lbnd, ubnd, nghost
@@ -76,12 +80,18 @@ subroutine EHFinder_FindSurfaceElement(CCTK_ARGUMENTS)
dthetainv = one / dtheta
dphiinv = one / dphi
- call CCTK_InterpHandle ( interp_handle, "Lagrange polynomial interpolation" )
+ call CCTK_FortranString ( area_interp_len, area_interpolator, &
+ area_interp )
+
+ call CCTK_InterpHandle ( interp_handle, area_interp(1:area_interp_len) )
+
if ( interp_handle .lt. 0 ) then
call CCTK_WARN( 0, "Cannot get handle for interpolation. Forgot to activate an implementation providing interpolation operators??" )
end if
- call Util_TableCreateFromString ( table_handle, "order=3" )
+ write(area_order,'(a6,i1)') 'order=',area_interpolation_order
+
+ call Util_TableCreateFromString ( table_handle, area_order )
if ( table_handle .lt. 0 ) then
call CCTK_WARN( 0, "Cannot create parameter table for interpolator" )
end if