summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorschnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac>2003-07-07 15:45:34 +0000
committerschnetter <schnetter@17b73243-c579-4c4c-a9d2-2d5706c11dac>2003-07-07 15:45:34 +0000
commitbe6cda459413dbc05c37b6a13b85c9197f7c8696 (patch)
treec39ec773919fbfbe2f6101c2c202659929031639 /doc
parent1e238057b7990d1731d268451d810208d85fa41c (diff)
Sort entries alphabetically.
Add missing entries for CCTK_GrouplshGI and CCTK_GrouplshGN. git-svn-id: http://svn.cactuscode.org/flesh/trunk@3265 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'doc')
-rw-r--r--doc/UsersGuide/FunctionReference.tex769
1 files changed, 422 insertions, 347 deletions
diff --git a/doc/UsersGuide/FunctionReference.tex b/doc/UsersGuide/FunctionReference.tex
index ae06b7ac..16c5fb45 100644
--- a/doc/UsersGuide/FunctionReference.tex
+++ b/doc/UsersGuide/FunctionReference.tex
@@ -211,6 +211,14 @@ from Fortran.
\item[CCTK\_GroupbboxVN] [\pageref{CCTK-GroupbboxVN}]
Given a variable name, return an array of the bounding box of the variable for each face
+\item[CCTK\_GroupData]
+ [\pageref{CCTK-GroupData}]
+ Given a group index, returns information about the variables held in the group
+
+\item[CCTK\_GroupDynamicData]
+ [\pageref{CCTK-GroupDynamicData}]
+ Given a group index, returns information about the variables held in the group
+
\item[CCTK\_GroupgshGI] [\pageref{CCTK-GroupgshGI}]
Given a group index, return an array of the global size of the group in each dimension
@@ -223,6 +231,18 @@ from Fortran.
\item[CCTK\_GroupgshVN] [\pageref{CCTK-GroupgshVN}]
Given a variable name, return an array of the global size of the variable in each dimension
+\item[CCTK\_GroupIndex]
+ [\pageref{CCTK-GroupIndex}]
+ Get the index number for a group name
+
+\item[CCTK\_GroupIndexFromVar]
+ [\pageref{CCTK-GroupIndexFromVar}]
+ Given a variable name, returns the index of the associated group
+
+\item[CCTK\_GroupIndexFromVarI]
+ [\pageref{CCTK-GroupIndexFromVarI}]
+ Given a variable index, returns the index of the associated group
+
\item[CCTK\_GrouplbndGI] [\pageref{CCTK-GrouplbndGI}]
Given a group index, return an array of the lower bounds of the group in each dimension
@@ -235,18 +255,40 @@ from Fortran.
\item[CCTK\_GrouplbndVN] [\pageref{CCTK-GrouplbndVN}]
Given a variable name, return an array of the lower bounds of the variable in each dimension
+\item[CCTK\_GrouplshGI] [\pageref{CCTK-GrouplshGI}]
+ Given a group index, return an array of the local size of the group in each dimension
+
+\item[CCTK\_GrouplshGN] [\pageref{CCTK-GrouplshGN}]
+ Given a group name, return an array of the local size of the group in each dimension
+
\item[CCTK\_GrouplshVI] [\pageref{CCTK-GrouplshVI}]
Given a variable index, return an array of the local size of the variable in each dimension
\item[CCTK\_GrouplshVN] [\pageref{CCTK-GrouplshVN}]
Given a variable name, return an array of the local size of the variable in each dimension
+\item[CCTK\_GroupName]
+ [\pageref{CCTK-GroupName}]
+ Given a group index, returns the group name
+
+\item[CCTK\_GroupNameFromVarI]
+ [\pageref{CCTK-GroupNameFromVarI}]
+ Given a variable index, return the name of the associated group
+
\item[CCTK\_GroupnghostzonesGI] [\pageref{CCTK-GroupnghostzonesGI}]
Given a group index, return an array with the number of ghostzones in each dimension of the group
\item[CCTK\_GroupnghostzonesGN] [\pageref{CCTK-GroupnghostzonesGN}]
Given a group name, return an array with the number of ghostzones in each dimension of the group
+\item[CCTK\_GroupTypeFromVarI]
+ [\pageref{CCTK-GroupTypeFromVarI}]
+ Provides a group's group type index given a variable index
+
+\item[CCTK\_GroupTypeI]
+ [\pageref{CCTK-GroupTypeI}]
+ Provides a group's group type index given a group index
+
\item[CCTK\_GroupubndGI] [\pageref{CCTK-GroupubndGI}]
Given a group index, return an array of the upper bounds of the group in each dimension
@@ -259,42 +301,6 @@ from Fortran.
\item[CCTK\_GroupubndVN] [\pageref{CCTK-GroupubndVN}]
Given a variable name, return an array of the upper bounds of the variable in each dimension
-\item[CCTK\_GroupData]
- [\pageref{CCTK-GroupData}]
- Given a group index, returns information about the variables held in the group
-
-\item[CCTK\_GroupDynamicData]
- [\pageref{CCTK-GroupDynamicData}]
- Given a group index, returns information about the variables held in the group
-
-\item[CCTK\_GroupIndex]
- [\pageref{CCTK-GroupIndex}]
- Get the index number for a group name
-
-\item[CCTK\_GroupIndexFromVar]
- [\pageref{CCTK-GroupIndexFromVar}]
- Given a variable name, returns the index of the associated group
-
-\item[CCTK\_GroupIndexFromVarI]
- [\pageref{CCTK-GroupIndexFromVarI}]
- Given a variable index, returns the index of the associated group
-
-\item[CCTK\_GroupName]
- [\pageref{CCTK-GroupName}]
- Given a group index, returns the group name
-
-\item[CCTK\_GroupNameFromVarI]
- [\pageref{CCTK-GroupNameFromVarI}]
- Given a variable index, return the name of the associated group
-
-\item[CCTK\_GroupTypeFromVarI]
- [\pageref{CCTK-GroupTypeFromVarI}]
- Provides a group's group type index given a variable index
-
-\item[CCTK\_GroupTypeI]
- [\pageref{CCTK-GroupTypeI}]
- Provides a group's group type index given a group index
-
\item[CCTK\_ImpFromVarI]
[\pageref{CCTK-ImpFromVarI}]
Given a variable index, returns the implementation name
@@ -1874,6 +1880,85 @@ Returns the upper bounds for a given group.
\end{FunctionDescription}
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupData}{Given a group index, returns information about the variables held in the group.}
+\label{CCTK-GroupData}
+\function{int}{}{ierr}
+\argument{int}{}{group}
+\argument{cGroup *}{}{pgroup}
+\showcargs
+\begin{params}
+\parameter{ierr}{0 for success, negative for failure}
+\parameter{group}{group index}
+\parameter{pgroup}{returns a pointer to a structure containing group information}
+\end{params}
+\begin{discussion}
+The cGroup structure contains the information
+\begin{itemize}
+\item grouptype: The group type
+\item vartype: The type of variables in the group
+\item stagtype: The type of grid staggering for arrays
+\item dim: The dimension of variables in the group
+\item numvars: The number of variables in the group
+\item ntimelevels: The number of timelevels for variables in the group
+\end{itemize}
+No Fortran routine exists at the moment.
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t cGroup pgroup;}\\
+ && {\t index = CCTK\_GroupIndex("evolve::scalars");}\\
+ &&{\t ierr = CCTK\_GroupData(index,\&pgroup);}\\
+ && {\t vtype = pgroup.vartype;}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupDynamicData}{Given a group index, returns information about the variables held in the group.}
+\label{CCTK-GroupDynamicData}
+\function{int}{}{ierr}
+\argument{const cGH *}{}{cctkGH}
+\argument{int}{}{group}
+\argument{cGroupDynamicData *}{}{pdata}
+\showcargs
+\begin{params}
+\parameter{ierr}{0 for success, negative for failure}
+\parameter{cctkGH}{pointer to CCTK grid hierarchy}
+\parameter{group}{group index}
+\parameter{pdata}{returns a pointer to a structure containing group information}
+\end{params}
+\begin{discussion}
+The cGroupDynamicData structure contains the information
+\begin{itemize}
+\item dim: The dimension of variables in the group
+\item gsh[dim]: The global size of the group in each dimension
+\item lsh[dim]: The local size of the group in each dimension
+\item lbnd[dim]: The lower bounds of the group in each dimension
+\item ubnd[dim]: The upper bounds of the group in each dimension
+\item bbox[2*dim]: The bounding box of the group for each face
+\item nghostzones[dim]: The number of ghostzones in each dimension of the group
+\end{itemize}
+No Fortran routine exists at the moment.
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t cGroupDynamicData pdata;}\\
+ && {\t index = CCTK\_GroupIndex("evolve::scalars");}\\
+ &&{\t ierr = CCTK\_GroupDynamicData(cctkGH,index,\&pgroup);}\\
+ && {\t vdim = pdata.dim;}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
\begin{FunctionDescription}{CCTK\_GroupgshGI, CCTK\_GroupgshGN}
\label{CCTK-GroupgshGI}
\label{CCTK-GroupgshGN}
@@ -2019,6 +2104,85 @@ Returns the local size for a given variable.
\end{FunctionDescription}
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupIndex}{Get the index number for a group name}
+\label{CCTK-GroupIndex}
+\subroutine{int}{integer}{index}
+\argument{const char *}{character*(*)}{groupname}
+\showargs
+\begin{params}
+\parameter{groupname}{The name of the group}
+\end{params}
+\begin{discussion}
+The group name should be the given in its fully qualified form, that is {\t <implementation>::<group>} for a public or protected group, and {\t <thornname>::<group>} for a private group.
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t index = CCTK\_GroupIndex("evolve::scalars") };
+\\
+\hfill {\bf Fortran} && call {\t CCTK\_GroupIndex(index,"evolve::scalars")}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
+
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupIndexFromVar}{Given a variable name, returns the index of the associated group}
+\label{CCTK-GroupIndexFromVar}
+\subroutine{int}{integer}{groupindex}
+\argument{const char *}{character*(*)}{name}
+\showargs
+\begin{params}
+\parameter{groupindex}{The index of the group}
+\parameter{name}{The full name of the variable}
+\end{params}
+\begin{discussion}
+The variable name should be in the form {\t <implementation>::<variable>}
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t groupindex = CCTK\_GroupIndexFromVar("evolve::phi") ;}
+\\
+\hfill {\bf Fortran} && {\t call CCTK\_GROUPINDEXFROMVAR(groupindex,"evolve::phi")}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupIndexFromVarI}{Given a variable index, returns the index of the associated group}
+\label{CCTK-GroupIndexFromVarI}
+\subroutine{int}{integer}{groupindex}
+\argument{int}{integer}{varindex}
+\showargs
+\begin{params}
+\parameter{groupindex}{The index of the group}
+\parameter{varindex}{The index of the variable}
+\end{params}
+\begin{discussion}
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t index = CCTK\_VarIndex("evolve::phi");} \\
+ && {\t groupindex = CCTK\_GroupIndexFromVarI(index) ;}
+\\
+\hfill {\bf Fortran} && {\t call CCTK\_VARINDEX("evolve::phi")}\\
+ &&call {\t CCTK\_GROUPINDEXFROMVARI(groupindex,index)}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
\begin{FunctionDescription}{CCTK\_GrouplbndGI, CCTK\_GrouplbndGN}
\label{CCTK-GrouplbndGI}
\label{CCTK-GrouplbndGN}
@@ -2165,37 +2329,37 @@ Returns the upper bounds for a given variable.
\end{FunctionDescription}
-\begin{FunctionDescription}{CCTK\_GroupubndGI, CCTK\_GroupubndGN}
-\label{CCTK-GroupubndGI}
-\label{CCTK-GroupubndGN}
-Given a group index or name, return an array of the upper bounds of the group in each dimension
+\begin{FunctionDescription}{CCTK\_GrouplshGI, CCTK\_GrouplshGN}
+\label{CCTK-GrouplshGI}
+\label{CCTK-GrouplshGN}
+Given a group index or name, return an array of the local size of the group in each dimension
\begin{SynopsisSection}
\begin{Synopsis}{C}
\begin{verbatim}
#include "cctk.h"
-int status = CCTK_GroupubndGI(const cGH *cctkGH,
- int dim,
- int *ubnd,
- int groupindex);
+int status = CCTK_GrouplshGI(const cGH *cctkGH,
+ int dim,
+ int *lsh,
+ int groupindex);
-int status = CCTK_GroupubndGN(const cGH *cctkGH,
- int dim,
- int *ubnd,
- const char *groupname);
+int status = CCTK_GrouplshGN(const cGH *cctkGH,
+ int dim,
+ int *lsh,
+ const char *groupname);
\end{verbatim}
\end{Synopsis}
\begin{Synopsis}{Fortran}
\begin{verbatim}
-call CCTK_GroupubndGI(status, cctkGH, dim, ubnd, groupindex)
+call CCTK_GrouplshGI(status, cctkGH, dim, lsh, groupindex)
-call CCTK_GroupubndGN(status, cctkGH, dim, ubnd, groupname)
+call CCTK_GrouplshGN(status, cctkGH, dim, lsh, groupname)
integer status
CCTK_POINTER cctkGH
integer dim
-integer ubnd(dim)
+integer lsh(dim)
integer groupindex
character*(*) groupname
\end{verbatim}
@@ -2207,104 +2371,30 @@ character*(*) groupname
\begin{Result}{\rm -1} incorrect dimension supplied \end{Result}
\begin{Result}{\rm -2} data not available from driver \end{Result}
\begin{Result}{\rm -3} called on a scalar group \end{Result}
-\begin{Result}{\rm -4} invalid group index \end{Result}
+\begin{Result}{\rm -4} invalid group name \end{Result}
\end{ResultSection}
\begin{ParameterSection}
-\begin{Parameter}{status} Return value. \end{Parameter}
\begin{Parameter}{cctkGH ($\ne$ NULL)} Pointer to a valid Cactus grid hierarchy. \end{Parameter}
\begin{Parameter}{dim ($\ge 1$)} Number of dimensions of group. \end{Parameter}
-\begin{Parameter}{ubnd ($\ne$ NULL)} Pointer to array which will hold the return values. \end{Parameter}
-\begin{Parameter}{groupindex} Group index. \end{Parameter}
-\begin{Parameter}{groupname} Group's full name. \end{Parameter}
-\end{ParameterSection}
-
-\begin{Discussion}
-The upper bounds in each dimension for a given group is returned in a user-supplied array buffer.
-\end{Discussion}
-
-\begin{SeeAlsoSection}
-\begin{SeeAlso}{CCTK\_GrouplbndGI, CCTK\_GrouplbndGN}
-Returns the lower bounds for a given group.
-\end{SeeAlso}
-\begin{SeeAlso}{CCTK\_GrouplbndVI, CCTK\_GrouplbndVN}
-Returns the lower bounds for a given variable.
-\end{SeeAlso}
-\begin{SeeAlso}{CCTK\_GroupubndVI, CCTK\_GroupubndVN}
-Returns the upper bounds for a given variable.
-\end{SeeAlso}
-\end{SeeAlsoSection}
-
-\end{FunctionDescription}
-
-
-\begin{FunctionDescription}{CCTK\_GroupubndVI, CCTK\_GroupubndVN}
-\label{CCTK-GroupubndVI}
-\label{CCTK-GroupubndVN}
-Given a variable index or name, return an array of the upper bounds of the variable in each dimension
-
-\begin{SynopsisSection}
-\begin{Synopsis}{C}
-\begin{verbatim}
-#include "cctk.h"
-
-int status = CCTK_GroupubndVI(const cGH *cctkGH,
- int dim,
- int *ubnd,
- int varindex);
-
-int status = CCTK_GroupubndVN(const cGH *cctkGH,
- int dim,
- int *ubnd,
- const char *varname);
-\end{verbatim}
-\end{Synopsis}
-\begin{Synopsis}{Fortran}
-\begin{verbatim}
-call CCTK_GroupubndVI(status, cctkGH, dim, ubnd, varindex)
-
-call CCTK_GroupubndVN(status, cctkGH, dim, ubnd, varname)
-
-integer status
-CCTK_POINTER cctkGH
-integer dim
-integer ubnd(dim)
-integer varindex
-character*(*) varname
-\end{verbatim}
-\end{Synopsis}
-\end{SynopsisSection}
-
-\begin{ResultSection}
-\begin{Result}{\rm 0} success \end{Result}
-\begin{Result}{\rm -1} incorrect dimension supplied \end{Result}
-\begin{Result}{\rm -2} data not available from driver \end{Result}
-\begin{Result}{\rm -3} called on a scalar group \end{Result}
-\begin{Result}{\rm -4} invalid variable index \end{Result}
-\end{ResultSection}
-
-\begin{ParameterSection}
-\begin{Parameter}{status} Return value. \end{Parameter}
-\begin{Parameter}{cctkGH ($\ne$ NULL)} Pointer to a valid Cactus grid hierarchy. \end{Parameter}
-\begin{Parameter}{dim ($\ge 1$)} Number of dimensions of variable. \end{Parameter}
-\begin{Parameter}{ubnd ($\ne$ NULL)} Pointer to array which will hold the return values. \end{Parameter}
-\begin{Parameter}{varindex} Group index. \end{Parameter}
-\begin{Parameter}{varname} Group's full name. \end{Parameter}
+\begin{Parameter}{lsh ($\ne$ NULL)} Pointer to array which will hold the return values. \end{Parameter}
+\begin{Parameter}{groupindex} Index of the group. \end{Parameter}
+\begin{Parameter}{groupname} Name of the group. \end{Parameter}
\end{ParameterSection}
\begin{Discussion}
-The upper bounds in each dimension for a given variable is returned in a user-supplied array buffer.
+The local size in each dimension for a given group is returned in a user-supplied array buffer.
\end{Discussion}
\begin{SeeAlsoSection}
-\begin{SeeAlso}{CCTK\_GrouplbndGI, CCTK\_GrouplbndGN}
-Returns the lower bounds for a given group.
+\begin{SeeAlso}{CCTK\_GroupgshVI, CCTK\_GroupgshVN}
+Returns the global size for a given variable.
\end{SeeAlso}
-\begin{SeeAlso}{CCTK\_GrouplbndVI, CCTK\_GrouplbndVN}
-Returns the lower bounds for a given variable.
+\begin{SeeAlso}{CCTK\_GrouplshGI, CCTK\_GrouplshGN}
+Returns the local size for a given group.
\end{SeeAlso}
-\begin{SeeAlso}{CCTK\_GroupubndGI, CCTK\_GroupubndGN}
-Returns the upper bounds for a given group.
+\begin{SeeAlso}{CCTK\_GrouplshVI, CCTK\_GrouplshVN}
+Returns the local size for a given variable.
\end{SeeAlso}
\end{SeeAlsoSection}
@@ -2384,6 +2474,56 @@ Returns the local size for a given group.
\end{FunctionDescription}
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupName}{Given a group index, returns the group name}
+\label{CCTK-GroupName}
+\subroutine{char *}{integer}{name}
+\argument{int}{integer}{index}
+\showcargs
+\begin{params}
+\parameter{name}{The group name}
+\parameter{index}{The group index}
+\end{params}
+\begin{discussion}
+No Fortran routine exists at the moment.
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t index = CCTK\_GroupIndex("evolve::scalars")}\\
+ &&{\t name = CCTK\_GroupName(index) ;}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
+% Groups.c
+\begin{CCTKFunc}{CCTK\_GroupNameFromVarI}{Given a variable index, return the name of the associated group}
+\label{CCTK-GroupNameFromVarI}
+\subroutine{char *}{character*(*)}{group}
+\argument{int}{integer}{varindex}
+\showcargs
+\begin{params}
+\parameter{group}{The name of the group}
+\parameter{varindex}{The index of the variable}
+\end{params}
+\begin{discussion}
+\end{discussion}
+\begin{examples}
+\begin{tabular}{@{}p{3cm}cp{11cm}}
+\hfill {\bf C} && {\t index = CCTK\_VarIndex("evolve::phi");} \\
+ && {\t group = CCTK\_GroupNameFromVarI(index) ;}
+\\
+\end{tabular}
+\end{examples}
+\begin{errorcodes}
+\end{errorcodes}
+\end{CCTKFunc}
+
+
+
\begin{FunctionDescription}{CCTK\_GroupnghostzonesGI, CCTK\_GroupnghostzonesGN}
\label{CCTK-GroupnghostzonesGI}
\label{CCTK-GroupnghostzonesGN}
@@ -2516,217 +2656,6 @@ Returns the number of ghostzones for a given group.
% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupData}{Given a group index, returns information about the variables held in the group.}
-\label{CCTK-GroupData}
-\function{int}{}{ierr}
-\argument{int}{}{group}
-\argument{cGroup *}{}{pgroup}
-\showcargs
-\begin{params}
-\parameter{ierr}{0 for success, negative for failure}
-\parameter{group}{group index}
-\parameter{pgroup}{returns a pointer to a structure containing group information}
-\end{params}
-\begin{discussion}
-The cGroup structure contains the information
-\begin{itemize}
-\item grouptype: The group type
-\item vartype: The type of variables in the group
-\item stagtype: The type of grid staggering for arrays
-\item dim: The dimension of variables in the group
-\item numvars: The number of variables in the group
-\item ntimelevels: The number of timelevels for variables in the group
-\end{itemize}
-No Fortran routine exists at the moment.
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t cGroup pgroup;}\\
- && {\t index = CCTK\_GroupIndex("evolve::scalars");}\\
- &&{\t ierr = CCTK\_GroupData(index,\&pgroup);}\\
- && {\t vtype = pgroup.vartype;}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupDynamicData}{Given a group index, returns information about the variables held in the group.}
-\label{CCTK-GroupDynamicData}
-\function{int}{}{ierr}
-\argument{const cGH *}{}{cctkGH}
-\argument{int}{}{group}
-\argument{cGroupDynamicData *}{}{pdata}
-\showcargs
-\begin{params}
-\parameter{ierr}{0 for success, negative for failure}
-\parameter{cctkGH}{pointer to CCTK grid hierarchy}
-\parameter{group}{group index}
-\parameter{pdata}{returns a pointer to a structure containing group information}
-\end{params}
-\begin{discussion}
-The cGroupDynamicData structure contains the information
-\begin{itemize}
-\item dim: The dimension of variables in the group
-\item gsh[dim]: The global size of the group in each dimension
-\item lsh[dim]: The local size of the group in each dimension
-\item lbnd[dim]: The lower bounds of the group in each dimension
-\item ubnd[dim]: The upper bounds of the group in each dimension
-\item bbox[2*dim]: The bounding box of the group for each face
-\item nghostzones[dim]: The number of ghostzones in each dimension of the group
-\end{itemize}
-No Fortran routine exists at the moment.
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t cGroupDynamicData pdata;}\\
- && {\t index = CCTK\_GroupIndex("evolve::scalars");}\\
- &&{\t ierr = CCTK\_GroupDynamicData(cctkGH,index,\&pgroup);}\\
- && {\t vdim = pdata.dim;}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupIndex}{Get the index number for a group name}
-\label{CCTK-GroupIndex}
-\subroutine{int}{integer}{index}
-\argument{const char *}{character*(*)}{groupname}
-\showargs
-\begin{params}
-\parameter{groupname}{The name of the group}
-\end{params}
-\begin{discussion}
-The group name should be the given in its fully qualified form, that is {\t <implementation>::<group>} for a public or protected group, and {\t <thornname>::<group>} for a private group.
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t index = CCTK\_GroupIndex("evolve::scalars") };
-\\
-\hfill {\bf Fortran} && call {\t CCTK\_GroupIndex(index,"evolve::scalars")}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupIndexFromVar}{Given a variable name, returns the index of the associated group}
-\label{CCTK-GroupIndexFromVar}
-\subroutine{int}{integer}{groupindex}
-\argument{const char *}{character*(*)}{name}
-\showargs
-\begin{params}
-\parameter{groupindex}{The index of the group}
-\parameter{name}{The full name of the variable}
-\end{params}
-\begin{discussion}
-The variable name should be in the form {\t <implementation>::<variable>}
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t groupindex = CCTK\_GroupIndexFromVar("evolve::phi") ;}
-\\
-\hfill {\bf Fortran} && {\t call CCTK\_GROUPINDEXFROMVAR(groupindex,"evolve::phi")}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupIndexFromVarI}{Given a variable index, returns the index of the associated group}
-\label{CCTK-GroupIndexFromVarI}
-\subroutine{int}{integer}{groupindex}
-\argument{int}{integer}{varindex}
-\showargs
-\begin{params}
-\parameter{groupindex}{The index of the group}
-\parameter{varindex}{The index of the variable}
-\end{params}
-\begin{discussion}
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t index = CCTK\_VarIndex("evolve::phi");} \\
- && {\t groupindex = CCTK\_GroupIndexFromVarI(index) ;}
-\\
-\hfill {\bf Fortran} && {\t call CCTK\_VARINDEX("evolve::phi")}\\
- &&call {\t CCTK\_GROUPINDEXFROMVARI(groupindex,index)}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupName}{Given a group index, returns the group name}
-\label{CCTK-GroupName}
-\subroutine{char *}{integer}{name}
-\argument{int}{integer}{index}
-\showcargs
-\begin{params}
-\parameter{name}{The group name}
-\parameter{index}{The group index}
-\end{params}
-\begin{discussion}
-No Fortran routine exists at the moment.
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t index = CCTK\_GroupIndex("evolve::scalars")}\\
- &&{\t name = CCTK\_GroupName(index) ;}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-% Groups.c
-\begin{CCTKFunc}{CCTK\_GroupNameFromVarI}{Given a variable index, return the name of the associated group}
-\label{CCTK-GroupNameFromVarI}
-\subroutine{char *}{character*(*)}{group}
-\argument{int}{integer}{varindex}
-\showcargs
-\begin{params}
-\parameter{group}{The name of the group}
-\parameter{varindex}{The index of the variable}
-\end{params}
-\begin{discussion}
-\end{discussion}
-\begin{examples}
-\begin{tabular}{@{}p{3cm}cp{11cm}}
-\hfill {\bf C} && {\t index = CCTK\_VarIndex("evolve::phi");} \\
- && {\t group = CCTK\_GroupNameFromVarI(index) ;}
-\\
-\end{tabular}
-\end{examples}
-\begin{errorcodes}
-\end{errorcodes}
-\end{CCTKFunc}
-
-
-
-
-% Groups.c
\begin{CCTKFunc}{CCTK\_GroupTypeFromVarI}{Provides a group's group type
index given a variable index}
\label{CCTK-GroupTypeFromVarI}
@@ -2798,6 +2727,152 @@ This function takes a variable index rather than a group index as its argument.
\end{FunctionDescription}
+\begin{FunctionDescription}{CCTK\_GroupubndGI, CCTK\_GroupubndGN}
+\label{CCTK-GroupubndGI}
+\label{CCTK-GroupubndGN}
+Given a group index or name, return an array of the upper bounds of the group in each dimension
+
+\begin{SynopsisSection}
+\begin{Synopsis}{C}
+\begin{verbatim}
+#include "cctk.h"
+
+int status = CCTK_GroupubndGI(const cGH *cctkGH,
+ int dim,
+ int *ubnd,
+ int groupindex);
+
+int status = CCTK_GroupubndGN(const cGH *cctkGH,
+ int dim,
+ int *ubnd,
+ const char *groupname);
+\end{verbatim}
+\end{Synopsis}
+\begin{Synopsis}{Fortran}
+\begin{verbatim}
+call CCTK_GroupubndGI(status, cctkGH, dim, ubnd, groupindex)
+
+call CCTK_GroupubndGN(status, cctkGH, dim, ubnd, groupname)
+
+integer status
+CCTK_POINTER cctkGH
+integer dim
+integer ubnd(dim)
+integer groupindex
+character*(*) groupname
+\end{verbatim}
+\end{Synopsis}
+\end{SynopsisSection}
+
+\begin{ResultSection}
+\begin{Result}{\rm 0} success \end{Result}
+\begin{Result}{\rm -1} incorrect dimension supplied \end{Result}
+\begin{Result}{\rm -2} data not available from driver \end{Result}
+\begin{Result}{\rm -3} called on a scalar group \end{Result}
+\begin{Result}{\rm -4} invalid group index \end{Result}
+\end{ResultSection}
+
+\begin{ParameterSection}
+\begin{Parameter}{status} Return value. \end{Parameter}
+\begin{Parameter}{cctkGH ($\ne$ NULL)} Pointer to a valid Cactus grid hierarchy. \end{Parameter}
+\begin{Parameter}{dim ($\ge 1$)} Number of dimensions of group. \end{Parameter}
+\begin{Parameter}{ubnd ($\ne$ NULL)} Pointer to array which will hold the return values. \end{Parameter}
+\begin{Parameter}{groupindex} Group index. \end{Parameter}
+\begin{Parameter}{groupname} Group's full name. \end{Parameter}
+\end{ParameterSection}
+
+\begin{Discussion}
+The upper bounds in each dimension for a given group is returned in a user-supplied array buffer.
+\end{Discussion}
+
+\begin{SeeAlsoSection}
+\begin{SeeAlso}{CCTK\_GrouplbndGI, CCTK\_GrouplbndGN}
+Returns the lower bounds for a given group.
+\end{SeeAlso}
+\begin{SeeAlso}{CCTK\_GrouplbndVI, CCTK\_GrouplbndVN}
+Returns the lower bounds for a given variable.
+\end{SeeAlso}
+\begin{SeeAlso}{CCTK\_GroupubndVI, CCTK\_GroupubndVN}
+Returns the upper bounds for a given variable.
+\end{SeeAlso}
+\end{SeeAlsoSection}
+
+\end{FunctionDescription}
+
+
+\begin{FunctionDescription}{CCTK\_GroupubndVI, CCTK\_GroupubndVN}
+\label{CCTK-GroupubndVI}
+\label{CCTK-GroupubndVN}
+Given a variable index or name, return an array of the upper bounds of the variable in each dimension
+
+\begin{SynopsisSection}
+\begin{Synopsis}{C}
+\begin{verbatim}
+#include "cctk.h"
+
+int status = CCTK_GroupubndVI(const cGH *cctkGH,
+ int dim,
+ int *ubnd,
+ int varindex);
+
+int status = CCTK_GroupubndVN(const cGH *cctkGH,
+ int dim,
+ int *ubnd,
+ const char *varname);
+\end{verbatim}
+\end{Synopsis}
+\begin{Synopsis}{Fortran}
+\begin{verbatim}
+call CCTK_GroupubndVI(status, cctkGH, dim, ubnd, varindex)
+
+call CCTK_GroupubndVN(status, cctkGH, dim, ubnd, varname)
+
+integer status
+CCTK_POINTER cctkGH
+integer dim
+integer ubnd(dim)
+integer varindex
+character*(*) varname
+\end{verbatim}
+\end{Synopsis}
+\end{SynopsisSection}
+
+\begin{ResultSection}
+\begin{Result}{\rm 0} success \end{Result}
+\begin{Result}{\rm -1} incorrect dimension supplied \end{Result}
+\begin{Result}{\rm -2} data not available from driver \end{Result}
+\begin{Result}{\rm -3} called on a scalar group \end{Result}
+\begin{Result}{\rm -4} invalid variable index \end{Result}
+\end{ResultSection}
+
+\begin{ParameterSection}
+\begin{Parameter}{status} Return value. \end{Parameter}
+\begin{Parameter}{cctkGH ($\ne$ NULL)} Pointer to a valid Cactus grid hierarchy. \end{Parameter}
+\begin{Parameter}{dim ($\ge 1$)} Number of dimensions of variable. \end{Parameter}
+\begin{Parameter}{ubnd ($\ne$ NULL)} Pointer to array which will hold the return values. \end{Parameter}
+\begin{Parameter}{varindex} Group index. \end{Parameter}
+\begin{Parameter}{varname} Group's full name. \end{Parameter}
+\end{ParameterSection}
+
+\begin{Discussion}
+The upper bounds in each dimension for a given variable is returned in a user-supplied array buffer.
+\end{Discussion}
+
+\begin{SeeAlsoSection}
+\begin{SeeAlso}{CCTK\_GrouplbndGI, CCTK\_GrouplbndGN}
+Returns the lower bounds for a given group.
+\end{SeeAlso}
+\begin{SeeAlso}{CCTK\_GrouplbndVI, CCTK\_GrouplbndVN}
+Returns the lower bounds for a given variable.
+\end{SeeAlso}
+\begin{SeeAlso}{CCTK\_GroupubndGI, CCTK\_GroupubndGN}
+Returns the upper bounds for a given group.
+\end{SeeAlso}
+\end{SeeAlsoSection}
+
+\end{FunctionDescription}
+
+
%%%%%
% HHH
%%%%%