aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschnetter <schnetter@51d2df92-0e4f-0410-a727-bd43d766d6b6>2004-05-19 07:26:48 +0000
committerschnetter <schnetter@51d2df92-0e4f-0410-a727-bd43d766d6b6>2004-05-19 07:26:48 +0000
commit86fa57d8ecd6f24301233858266dac39a51e1d6d (patch)
tree7869f9fcb586cfbeeb079bac21f97fc1d4297420
parent3fa1586a6386dbcb68bc4275069b3e35461a64b2 (diff)
Add onw more header file, and fix two others
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/Fortran/trunk@9 51d2df92-0e4f-0410-a727-bd43d766d6b6
-rw-r--r--src/cctk.F901
-rw-r--r--src/cctk_Groups.F904
-rw-r--r--src/cctk_IO.F902
-rw-r--r--src/cctk_IOMethods.F9010
-rw-r--r--src/cctk_Interp.F90109
-rw-r--r--src/make.code.defn1
6 files changed, 121 insertions, 6 deletions
diff --git a/src/cctk.F90 b/src/cctk.F90
index f6564ec..dbde6bb 100644
--- a/src/cctk.F90
+++ b/src/cctk.F90
@@ -31,5 +31,6 @@ module cctk
use cctk_GroupsOnGH
use cctk_IO
use cctk_IOMethods
+ use cctk_Interp
implicit none
end module cctk
diff --git a/src/cctk_Groups.F90 b/src/cctk_Groups.F90
index c6499bb..888b2e8 100644
--- a/src/cctk_Groups.F90
+++ b/src/cctk_Groups.F90
@@ -21,12 +21,14 @@ module cctk_Groups
integer staggered
end subroutine CCTK_StaggerVars
- subroutine CCTK_DecomposeName (ierr, fullname, implementation, name)
+ subroutine CCTK_DecomposeName (ierr, fullname, implementation, implementation_nchars, name, name_nchars)
implicit none
integer ierr
character(*) fullname
character(*) implementation
+ integer implementation_nchars
character(*) name
+ integer name_nchars
end subroutine CCTK_DecomposeName
subroutine CCTK_FirstVarIndex (index, group)
diff --git a/src/cctk_IO.F90 b/src/cctk_IO.F90
index c6a65a8..c90d358 100644
--- a/src/cctk_IO.F90
+++ b/src/cctk_IO.F90
@@ -47,4 +47,4 @@ module cctk_IO
end interface
-end module cctk_Groups
+end module cctk_IO
diff --git a/src/cctk_IOMethods.F90 b/src/cctk_IOMethods.F90
index bbfbc57..9aefa55 100644
--- a/src/cctk_IOMethods.F90
+++ b/src/cctk_IOMethods.F90
@@ -16,9 +16,9 @@ module cctk_IOMethods
interface
- subroutine CCTKi_RegisterIOMethod (ierr, thorn, name)
+ subroutine CCTKi_RegisterIOMethod (handle, thorn, name)
implicit none
- integer ierr
+ integer handle
character(*) thorn
character(*) name
end subroutine CCTKi_RegisterIOMethod
@@ -51,14 +51,16 @@ module cctk_IOMethods
CCTK_FPOINTER OutputVarAs
end subroutine CCTK_RegisterIOMethodOutputVarAs
- subroutine CCTK_IOMethodImplementation (imp, handle)
+ subroutine CCTK_IOMethodImplementation (nchars, imp, handle)
implicit none
+ integer nchars
character(*) imp
integer handle
end subroutine CCTK_IOMethodImplementation
- subroutine CCTK_IOMethod (method, handle)
+ subroutine CCTK_IOMethod (nchars, method, handle)
implicit none
+ integer nchars
character(*) method
integer handle
end subroutine CCTK_IOMethod
diff --git a/src/cctk_Interp.F90 b/src/cctk_Interp.F90
new file mode 100644
index 0000000..6495c1a
--- /dev/null
+++ b/src/cctk_Interp.F90
@@ -0,0 +1,109 @@
+/*@@
+ @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_InterpRegisterOperatorGV (operator_ptr, operator_name, thorn)
+ implicit none
+ CCTK_FPOINTER operator_ptr
+ character(*) operator_name
+ character(*) thorn
+ end subroutine CCTKi_InterpRegisterOperatorGV
+
+ subroutine CCTKi_InterpRegisterOperatorLocal (operator_ptr, operator_name, thorn)
+ implicit none
+ CCTK_FPOINTER operator_ptr
+ character(*) operator_name
+ character(*) thorn
+ end subroutine CCTKi_InterpRegisterOperatorLocal
+
+ 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
+
+ end interface
+
+ external CCTK_InterpGV
+ external CCTK_InterpLocal
+
+ interface
+
+ 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
diff --git a/src/make.code.defn b/src/make.code.defn
index 34ae018..d024fad 100644
--- a/src/make.code.defn
+++ b/src/make.code.defn
@@ -24,6 +24,7 @@ SRCS = cctk.F90 \
cctk_GroupsOnGH.F90 \
cctk_IO.F90 \
cctk_IOMethods.F90 \
+ cctk_Interp.F90 \
util_Table.F90
else