vtf-logo

GridFunctionCalls.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 #ifndef _included_GridFunctionCalls_h
00004 #define _included_GridFunctionCalls_h
00005 
00011 /*********************************************************************/
00012 /*** get times ***/
00013 /*********************************************************************/
00014 template <class Type, int dim>
00015 inline Coords StepSize(GridFunction<Type,dim>& GF, const int l)
00016    { return (GF.GF_StepSize(l)); }
00017 
00018 template <class Type, int dim>
00019 inline int TimeStep(GridFunction<Type,dim>& GF, const int l)
00020    { return (GF.GF_TimeStep(l)); }
00021 
00022 template <class Type, int dim>
00023 inline void PreviousTime(GridFunction<Type,dim>& GF, const int l)
00024    { GF.GF_PreviousTime(l); }
00025 
00026 template <class Type, int dim>
00027 inline void NextTime(GridFunction<Type,dim>& GF, const int l)
00028    { GF.GF_NextTime(l); }
00029 
00030 template <class Type, int dim>
00031 inline void SetPhysicalTime(GridFunction<Type,dim>& GF, const int t, 
00032                             const int l, const double pht)
00033    { GF.set_phystime_timevalue(t, l, pht); }
00034 
00035 template <class Type, int dim>
00036 inline double GetPhysicalTime(GridFunction<Type,dim>& GF, const int t, const int l)
00037    { return (GF.get_phystime_timevalue(t, l)); }
00038 /*********************************************************************/
00039 
00040 /*********************************************************************/
00041 /*** Set functions ***/
00042 /*********************************************************************/
00043 template <class Type, int dim>
00044 inline void SetBndryUpdateFunction(GridFunction<Type,dim>& GF, GFBndryUpdateFunc<Type,dim>* buf)
00045    { GF.GF_SetBndryUpdateFunc(buf); }
00046 
00047 template <class Type, int dim>
00048 inline void SetAdaptiveBndryUpdateFunction(GridFunction<Type,dim>& GF, GFAdptBndryUpdateFunc<Type,dim>* abuf)
00049    { GF.GF_SetAdaptiveBndryUpdateFunc(abuf); }
00050 
00051 template <class Type, int dim>
00052 inline void SetProlongFunction(GridFunction<Type,dim>& GF, GFLevelTransferFunc<Type,dim>* pf)
00053    { GF.GF_SetProlongFunc(pf); }
00054 
00055 template <class Type, int dim>
00056 inline void SetRestrictFunction(GridFunction<Type,dim>& GF, GFLevelTransferFunc<Type,dim>* rf)
00057    { GF.GF_SetRestrictFunc(rf); }
00058 
00059 template <class Type, int dim>
00060 inline void SetIOFunction(GridFunction<Type,dim>& GF, GFIOFunc<Type,dim>* iof)
00061    { GF.GF_SetIOFunc(iof); }
00062 /*********************************************************************/
00063 
00064 /*********************************************************************/
00065 /*** Get predefined functions ***/
00066 /*********************************************************************/
00067 template <class Type, int dim>
00068 inline GFBndryUpdateFunc<Type,dim>* GetBndryUpdateFunction(GridFunction<Type,dim>& GF)
00069    { return GF.GF_GetBndryUpdateFunc(); }
00070 
00071 template <class Type, int dim>
00072 inline GFAdptBndryUpdateFunc<Type,dim>* GetAdaptiveBndryUpdateFunction(GridFunction<Type,dim>& GF)
00073    { return GF.GF_GetAdaptiveBndryUpdateFunc(); }
00074 
00075 template <class Type, int dim>
00076 inline GFLevelTransferFunc<Type,dim>* GetProlongFunction(GridFunction<Type,dim>& GF)
00077    { return GF.GF_GetProlongFunc(); }
00078 
00079 template <class Type, int dim>
00080 inline GFLevelTransferFunc<Type,dim>* GetRestrictFunction(GridFunction<Type,dim>& GF)
00081    { return GF.GF_GetRestrictFunc(); }
00082 
00083 template <class Type, int dim>
00084 inline GFIOFunc<Type,dim>* GetIOFunction(GridFunction<Type,dim>& GF)
00085    { return GF.GF_GetIOFunc(); }
00086 /*********************************************************************/
00087 
00088 /*********************************************************************/
00089 /*** Cycle Times ***/
00090 /*********************************************************************/
00091 template <class Type, int dim>
00092 inline void SwapTimeLevels(GridFunction<Type,dim> &GF,
00093                            const int l, const int t1, const int t2)
00094    { GF.GF_SwapTimeLevels(l, t1, t2); }
00095 
00096 template <class Type, int dim>
00097 inline void CycleTimeLevels(GridFunction<Type,dim> &GF, const int l)
00098    { GF.GF_CycleTimeLevels(l); }
00099 /*********************************************************************/
00100 
00101 /*********************************************************************/
00102 /*** Sync Ghost Regions ***/
00103 /*********************************************************************/
00104 template <class Type, int dim>
00105 inline void Sync(GridFunction<Type,dim> &GF, const int t, const int l) 
00106    { GF.GF_Sync(t,l,DAGH_All,DAGH_Both); }
00107 
00108 template <class Type, int dim>
00109 inline void Sync(GridFunction<Type,dim> &GF, const int t, const int l, 
00110                  const int axis, const int dir) 
00111    { GF.GF_Sync(t,l,axis,dir); }
00112 
00113 /*********************************************************************/
00114 
00115 /*********************************************************************/
00116 /*** Use predefined functions ***/
00117 /*********************************************************************/
00118 template <class Type, int dim>
00119 inline void Prolong(GridFunction<Type,dim> &GF, 
00120                     const int tf, const int lf, const int tt, const int lt)
00121     { GF.GF_Prolong(tf, lf, tt, lt); }
00122 template <class Type, int dim>
00123 inline void Prolong(GridFunction<Type,dim> &GF, 
00124                     const int tf, const int lf, const int tt, const int lt,
00125                     const BBox& bb)
00126     { GF.GF_Prolong(tf, lf, tt, lt, bb); }
00127 
00128 template <class Type, int dim>
00129 inline void Restrict(GridFunction<Type,dim> &GF, 
00130                      const int tf, const int lf, const int tt, const int lt)
00131     { GF.GF_Restrict(tf, lf, tt, lt); }
00132 template <class Type, int dim>
00133 inline void Restrict(GridFunction<Type,dim> &GF, 
00134                      const int tf, const int lf, const int tt, const int lt,
00135                      const BBox& bb)
00136     { GF.GF_Restrict(tf, lf, tt, lt, bb); }
00137 
00138 template <class Type, int dim>
00139 inline void IO(GridFunction<Type,dim> &GF,
00140                const int t, const int l)
00141     { GF.GF_IO(t, l); }
00142 template <class Type, int dim>
00143 inline void IO(GridFunction<Type,dim> &GF,
00144                const int t, const int l,
00145                const BBox& bb)
00146     { GF.GF_IO(t, l, bb); }
00147 /*********************************************************************/
00148 
00149 /*********************************************************************/
00150 /*** Update Boundaries ***/
00151 /*********************************************************************/
00152 template <class Type, int dim>
00153 inline void AdaptiveBoundaryUpdate(GridFunction<Type,dim> &GF,
00154                                    const int t, const int l)
00155    { GF.GF_AdaptiveBndryUpdate(t, l); }
00156 template <class Type, int dim>
00157 inline void ExternalBoundaryUpdate(GridFunction<Type,dim> &GF,
00158                                    const int t, const int l)
00159    { GF.GF_ExternalBndryUpdate(t, l); }
00160 /*********************************************************************/
00161 
00162 /*********************************************************************/
00163 /*** Update Boundaries & Sync Ghost Regions ***/
00164 /*********************************************************************/
00165 template <class Type, int dim>
00166 inline void BoundaryUpdate(GridFunction<Type,dim> &GF, 
00167                            const int t, const int l) 
00168    { GF.GF_BndryUpdate(t,l); }
00169 
00170 /*********************************************************************/
00171 /*** Reduction Ops ***/
00172 /*********************************************************************/
00173 template <class Type, int dim>
00174 inline Type MaxVal(GridFunction<Type,dim>& GF, 
00175                    const int t, const int l)
00176    { return (GF.GF_maxval(t, l)); }
00177 template <class Type, int dim>
00178 inline Type MaxVal(GridFunction<Type,dim>& GF, 
00179                    const int t, const int l,
00180                    const BBox& where)
00181    { return (GF.GF_maxval(t, l, where)); }
00182 
00183 template <class Type, int dim>
00184 inline Type MinVal(GridFunction<Type,dim>& GF, 
00185                    const int t, const int l)
00186    { return (GF.GF_minval(t, l)); }
00187 template <class Type, int dim>
00188 inline Type MinVal(GridFunction<Type,dim>& GF, 
00189                    const int t, const int l,
00190                    const BBox& where)
00191    { return (GF.GF_minval(t, l, where)); }
00192 
00193 template <class Type, int dim>
00194 inline Type Sum(GridFunction<Type,dim>& GF, 
00195                    const int t, const int l)
00196    { return (GF.GF_sum(t, l)); }
00197 template <class Type, int dim>
00198 inline Type Sum(GridFunction<Type,dim>& GF,
00199                    const int t, const int l,
00200                    const BBox& where)
00201    { return (GF.GF_sum(t, l, where)); }
00202 
00203 template <class Type, int dim>
00204 inline Type Product(GridFunction<Type,dim>& GF, 
00205                    const int t, const int l)
00206    { return (GF.GF_product(t, l)); }
00207 template <class Type, int dim>
00208 inline Type Product(GridFunction<Type,dim>& GF,
00209                    const int t, const int l,
00210                    const BBox& where)
00211    { return (GF.GF_product(t, l, where)); }
00212 
00213 template <class Type, int dim>
00214 inline double Norm(GridFunction<Type,dim>& GF, 
00215                    const int t, const int l, const int param)
00216    { return (GF.GF_norm(t, l, param)); }
00217 
00218 template <class Type, int dim>
00219 inline double Norm(GridFunction<Type,dim>& GF,
00220                     const int t, const int l,
00221                     const BBox& where, const int param)
00222 { return (GF.GF_norm(t, l, where, param)); }
00223 /*********************************************************************/
00224 
00225 /*********************************************************************/
00226 /* IO Support */
00227 /*********************************************************************/
00228 template <class Type, int dim>
00229 inline void Write(GridFunction<Type,dim> &GF, const int t, const int l,
00230                   const int gfdtype, char *ioname)
00231   { GF.GF_Write(t,l,gfdtype,ioname); }
00232 template <class Type, int dim>
00233 inline void Write(GridFunction<Type,dim> &GF, const int t, const int l,
00234                   const BBox &where, const int gfdtype, char *ioname)
00235   { GF.GF_Write(t,l,where,gfdtype,ioname); }
00236 
00237 template <class Type, int dim>
00238 inline void Read(GridFunction<Type,dim> &GF, const int t, const int l,
00239                  const int gfdtype, char *ioname)
00240   { GF.GF_Read(t,l,gfdtype,ioname); }
00241 template <class Type, int dim>
00242 inline void Read(GridFunction<Type,dim> &GF, const int t, const int l,
00243                  const BBox &where, const int gfdtype, char *ioname)
00244   { GF.GF_Read(t,l,where,gfdtype,ioname); }
00245 template <class Type, int dim>
00246 inline void Read(GridFunction<Type,dim> &GF, const int t, const int l,
00247                  const BBox &to, const BBox &from, const int gfdtype, char *ioname)
00248   { GF.GF_Read(t,l,to,from,gfdtype,ioname); }
00249 /*********************************************************************/
00250 
00251 #endif

Generated on Fri Aug 24 13:00:29 2007 for AMROC's Hierachical Data Structures - by  doxygen 1.4.7