aboutsummaryrefslogtreecommitdiff
path: root/src/cctk_Interp.F90
blob: e4acfdb97d1d647ab3f2ebbf7af03319826799de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
/*@@
  @file    $RCSfile$
  @author  $Author$
  @date    $Date$
  @desc
           Fortran 90 interface declarations for the routines
           which have their C declarations in cctk_Interp.h
  @enddesc
  @version $Header$
@@*/

#include "cctk.h"

module cctk_Interp
  implicit none

  interface

     subroutine CCTK_InterpHandle (handle, name)
       implicit none
       integer      handle
       character(*) name
     end subroutine CCTK_InterpHandle

     subroutine CCTKi_InterpRegisterOpLocalUniform (operator_ptr, operator_name, thorn)
       implicit none
       CCTK_FPOINTER operator_ptr
       character(*)  operator_name
       character(*)  thorn
     end subroutine CCTKi_InterpRegisterOpLocalUniform

     subroutine CCTK_InterpOperatorImplementation (nchars, imp, handle)
       implicit none
       integer      nchars
       character(*) imp
       integer      handle
     end subroutine CCTK_InterpOperatorImplementation

     subroutine CCTK_InterpOperator (nchars, operator, handle)
       implicit none
       integer      nchars
       character(*) operator
       integer      handle
     end subroutine CCTK_InterpOperator

     subroutine CCTK_NumInterpOperators (num)
       implicit none
       integer num
     end subroutine CCTK_NumInterpOperators

     ! CCTK_InterpGV is declared below
     ! CCTK_InterpLocal is declared below

     subroutine CCTK_InterpLocalUniform &
          (ierr,                        &
           N_dims,                      &
           operator_handle,             &
           param_table_handle,          &
           coord_origin,                &
           coord_delta,                 &
           N_interp_points,             &
             interp_coords_type_code,   &
             interp_coords,             &
           N_input_arrays,              &
             input_array_type_codes,    &
             input_arrays,              &
           N_output_arrays,             &
             output_array_type_codes,   &
             output_arrays)
       implicit none
       integer               ierr
       integer               N_dims
       integer               operator_handle
       integer               param_table_handle
       CCTK_REAL             coord_origin(N_dims)
       CCTK_REAL             coord_delta(N_dims)
       integer               N_interp_points
       integer                 interp_coords_type_code
       CCTK_POINTER_TO_CONST   interp_coords(N_interp_points)
       integer               N_input_arrays
       CCTK_INT                input_array_dims(N_input_arrays)
       CCTK_INT                input_array_type_codes(N_input_arrays)
       CCTK_POINTER_TO_CONST   input_arrays(N_input_arrays)
       integer               N_output_arrays
       CCTK_INT                output_array_type_codes(N_output_arrays)
       CCTK_POINTER            output_arrays(N_output_arrays)
     end subroutine CCTK_InterpLocalUniform

  end interface

end module cctk_Interp