diff options
author | schnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787> | 2010-02-14 18:28:16 +0000 |
---|---|---|
committer | schnetter <schnetter@20f44201-0f4f-0410-9130-e5fc2714a787> | 2010-02-14 18:28:16 +0000 |
commit | ec93cf628d1c0d132c6e46c43202f234acd0c067 (patch) | |
tree | 999442aadb48d0251954340cc38083832059974d /interface.ccl | |
parent | 53d0e813519bfa951e971c5b0a50e1dc3b45899e (diff) |
Determine the symmetry boundary width from the registered boundary
width in CoordBase, not from the number of ghost zones.
Abort if there are more than one components per MPI process; TAT/Slab
cannot handle this.
Begin to add support for CarpetSlab instead of TAT/Slab.
Remove cvs $Header$ comments.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/RotatingSymmetry180/trunk@48 20f44201-0f4f-0410-9130-e5fc2714a787
Diffstat (limited to 'interface.ccl')
-rw-r--r-- | interface.ccl | 173 |
1 files changed, 116 insertions, 57 deletions
diff --git a/interface.ccl b/interface.ccl index a252cfb..f196ba2 100644 --- a/interface.ccl +++ b/interface.ccl @@ -1,5 +1,4 @@ # Interface definition for thorn RotatingSymmetry180 -# $Header$ IMPLEMENTS: RotatingSymmetry180 @@ -12,75 +11,135 @@ REQUIRES FUNCTION SymmetryRegister # which_faces : array [N_FACES] # symmetry_zone_width: array [N_FACES] -CCTK_INT FUNCTION \ - SymmetryRegisterGrid \ - (CCTK_POINTER IN cctkGH, \ - CCTK_INT IN sym_handle, \ - CCTK_INT IN ARRAY which_faces, \ - CCTK_INT IN ARRAY symmetry_zone_width) +CCTK_INT FUNCTION \ + SymmetryRegisterGrid \ + (CCTK_POINTER IN cctkGH, \ + CCTK_INT IN sym_handle, \ + CCTK_INT ARRAY IN which_faces, \ + CCTK_INT ARRAY IN symmetry_zone_width) REQUIRES FUNCTION SymmetryRegisterGrid -CCTK_INT FUNCTION \ - SymmetryRegisterGridInterpolator \ - (CCTK_POINTER IN cctkGH, \ - CCTK_INT IN sym_handle, \ - CCTK_INT CCTK_FPOINTER IN symmetry_interpolate \ - (CCTK_POINTER_TO_CONST IN cctkGH, \ - CCTK_INT IN N_dims, \ - CCTK_INT IN local_interp_handle, \ - CCTK_INT IN param_table_handle, \ - CCTK_INT IN coord_system_handle, \ - CCTK_INT IN N_interp_points, \ - CCTK_INT IN interp_coords_type, \ - CCTK_POINTER_TO_CONST ARRAY IN interp_coords, \ - CCTK_INT IN N_input_arrays, \ - CCTK_INT ARRAY IN input_array_indices, \ - CCTK_INT IN N_output_arrays, \ - CCTK_INT ARRAY IN output_array_types, \ - CCTK_POINTER ARRAY IN output_arrays, \ +CCTK_INT FUNCTION \ + SymmetryRegisterGridInterpolator \ + (CCTK_POINTER IN cctkGH, \ + CCTK_INT IN sym_handle, \ + CCTK_INT CCTK_FPOINTER IN symmetry_interpolate \ + (CCTK_POINTER_TO_CONST IN cctkGH, \ + CCTK_INT IN N_dims, \ + CCTK_INT IN local_interp_handle, \ + CCTK_INT IN param_table_handle, \ + CCTK_INT IN coord_system_handle, \ + CCTK_INT IN N_interp_points, \ + CCTK_INT IN interp_coords_type, \ + CCTK_POINTER_TO_CONST ARRAY IN interp_coords, \ + CCTK_INT IN N_input_arrays, \ + CCTK_INT ARRAY IN input_array_indices, \ + CCTK_INT IN N_output_arrays, \ + CCTK_INT ARRAY IN output_array_types, \ + CCTK_POINTER ARRAY IN output_arrays, \ CCTK_INT IN faces)) REQUIRES FUNCTION SymmetryRegisterGridInterpolator -CCTK_INT FUNCTION \ - SymmetryInterpolateFaces \ - (CCTK_POINTER_TO_CONST IN cctkGH, \ - CCTK_INT IN N_dims, \ - CCTK_INT IN local_interp_handle, \ - CCTK_INT IN param_table_handle, \ - CCTK_INT IN coord_system_handle, \ - CCTK_INT IN N_interp_points, \ - CCTK_INT IN interp_coords_type, \ - CCTK_POINTER_TO_CONST ARRAY IN interp_coords, \ - CCTK_INT IN N_input_arrays, \ - CCTK_INT ARRAY IN input_array_indices, \ - CCTK_INT IN N_output_arrays, \ - CCTK_INT ARRAY IN output_array_types, \ - CCTK_POINTER ARRAY IN output_arrays, \ +CCTK_INT FUNCTION \ + SymmetryInterpolateFaces \ + (CCTK_POINTER_TO_CONST IN cctkGH, \ + CCTK_INT IN N_dims, \ + CCTK_INT IN local_interp_handle, \ + CCTK_INT IN param_table_handle, \ + CCTK_INT IN coord_system_handle, \ + CCTK_INT IN N_interp_points, \ + CCTK_INT IN interp_coords_type, \ + CCTK_POINTER_TO_CONST ARRAY IN interp_coords, \ + CCTK_INT IN N_input_arrays, \ + CCTK_INT ARRAY IN input_array_indices, \ + CCTK_INT IN N_output_arrays, \ + CCTK_INT ARRAY IN output_array_types, \ + CCTK_POINTER ARRAY IN output_arrays, \ CCTK_INT IN faces) REQUIRES FUNCTION SymmetryInterpolateFaces -CCTK_INT FUNCTION \ - Boundary_SelectedGVs \ - (CCTK_POINTER_TO_CONST IN cctkGH, \ - CCTK_INT IN array_size, \ - CCTK_INT ARRAY OUT var_indicies, \ - CCTK_INT ARRAY OUT faces, \ - CCTK_INT ARRAY OUT boundary_widths, \ - CCTK_INT ARRAY OUT table_handles, \ +CCTK_INT FUNCTION \ + Boundary_SelectedGVs \ + (CCTK_POINTER_TO_CONST IN cctkGH, \ + CCTK_INT IN array_size, \ + CCTK_INT ARRAY OUT var_indicies, \ + CCTK_INT ARRAY OUT faces, \ + CCTK_INT ARRAY OUT boundary_widths, \ + CCTK_INT ARRAY OUT table_handles, \ CCTK_STRING IN bc_name) REQUIRES FUNCTION Boundary_SelectedGVs -CCTK_INT FUNCTION GetDomainSpecification \ - (CCTK_INT IN size, \ - CCTK_REAL OUT ARRAY physical_min, \ - CCTK_REAL OUT ARRAY physical_max, \ - CCTK_REAL OUT ARRAY interior_min, \ - CCTK_REAL OUT ARRAY interior_max, \ - CCTK_REAL OUT ARRAY exterior_min, \ - CCTK_REAL OUT ARRAY exterior_max, \ - CCTK_REAL OUT ARRAY spacing) +CCTK_INT FUNCTION \ + GetDomainSpecification \ + (CCTK_INT IN size, \ + CCTK_REAL ARRAY OUT physical_min, \ + CCTK_REAL ARRAY OUT physical_max, \ + CCTK_REAL ARRAY OUT interior_min, \ + CCTK_REAL ARRAY OUT interior_max, \ + CCTK_REAL ARRAY OUT exterior_min, \ + CCTK_REAL ARRAY OUT exterior_max, \ + CCTK_REAL ARRAY OUT spacing) USES FUNCTION GetDomainSpecification + + + +CCTK_INT FUNCTION \ + GetLocalComponents \ + (CCTK_POINTER_TO_CONST IN cctkGH) +USES FUNCTION GetLocalComponents + + + +CCTK_INT FUNCTION \ + Hyperslab_GlobalMappingByIndex \ + (CCTK_POINTER_TO_CONST IN cctkGH, \ + CCTK_INT IN vindex, \ + CCTK_INT IN hdim, \ + CCTK_INT ARRAY IN direction, \ + CCTK_INT ARRAY IN origin, \ + CCTK_INT ARRAY IN extent, \ + CCTK_INT ARRAY IN downsample, \ + CCTK_INT IN table_handle, \ + CCTK_INT CCTK_FPOINTER IN \ + conversion_fn \ + (CCTK_INT IN nelems, \ + CCTK_INT IN src_stride, \ + CCTK_INT IN dst_stride, \ + CCTK_INT IN src_type, \ + CCTK_INT IN dst_type, \ + CCTK_POINTER_TO_CONST IN from, \ + CCTK_POINTER IN to), \ + CCTK_INT ARRAY OUT hsize) +USES FUNCTION Hyperslab_GlobalMappingByIndex + +CCTK_INT FUNCTION \ + Hyperslab_GetList \ + (CCTK_POINTER_TO_CONST IN cctkGH, \ + CCTK_INT IN mapping_handle, \ + CCTK_INT IN num_arrays, \ + CCTK_INT ARRAY IN procs, \ + CCTK_INT ARRAY IN vindices, \ + CCTK_INT ARRAY IN timelevels, \ + CCTK_INT ARRAY IN hdatatypes, \ + CCTK_POINTER ARRAY IN hdata, \ + CCTK_INT ARRAY OUT retvals) +USES FUNCTION Hyperslab_GetList + +CCTK_INT FUNCTION \ + Hyperslab_FreeMapping \ + (CCTK_INT IN mapping_handle) +USES FUNCTION Hyperslab_FreeMapping + + + +CCTK_INT FUNCTION GetBoundarySpecification \ + (CCTK_INT IN size, \ + CCTK_INT OUT ARRAY nboundaryzones, \ + CCTK_INT OUT ARRAY is_internal, \ + CCTK_INT OUT ARRAY is_staggered, \ + CCTK_INT OUT ARRAY shiftout) +REQUIRES FUNCTION GetBoundarySpecification |