From 8f50a18119b919bf809e209dc78da9dc4def69fe Mon Sep 17 00:00:00 2001 From: Nicolas Marsic <nicolas.marsic@gmail.com> Date: Thu, 14 Jun 2012 16:20:26 +0000 Subject: [PATCH] Doc for LocalFunctionSpace* --- FunctionSpace/LocalFunctionSpace.h | 23 +++++++++++++++++++++++ FunctionSpace/LocalFunctionSpaceScalar.h | 21 +++++++++++++++++++++ FunctionSpace/LocalFunctionSpaceVector.h | 22 ++++++++++++++++++++++ 3 files changed, 66 insertions(+) diff --git a/FunctionSpace/LocalFunctionSpace.h b/FunctionSpace/LocalFunctionSpace.h index 374d972b4a..40418ec598 100644 --- a/FunctionSpace/LocalFunctionSpace.h +++ b/FunctionSpace/LocalFunctionSpace.h @@ -1,18 +1,41 @@ #ifndef _LOCALFUNCTIONSPACE_H_ #define _LOCALFUNCTIONSPACE_H_ +/** + @class LocalFunctionSpace + @brief Mother class for Local Function Spaces + + This class is the @em mother (by @em inheritence) of all@n + Local Function Spaces.@n + + A Local Function Space is a Basis on which we can interpolate on. + */ + class LocalFunctionSpace{ protected: bool scalar; int size; public: + //! Deletes this LocalFunctionSpace + //! virtual ~LocalFunctionSpace(void); + //! @return Returns: + //! @li @c true, if a + //! @em scalar Basis is used + //! @li @c false, if a + //! @em vectorial Basis is used + //! @see LocalFunctionSpaceScalar + //! @see LocalFunctionSpaceVector bool isScalar(void) const; + + //! @return Returns the size of the Basis used int getSize(void) const; protected: + //! Instantiate a new LocalFunctionSpace + //! @warning Users can't instantiate a LocalFunctionSpace LocalFunctionSpace(void); }; diff --git a/FunctionSpace/LocalFunctionSpaceScalar.h b/FunctionSpace/LocalFunctionSpaceScalar.h index 04ca7adf44..d8b6a0252f 100644 --- a/FunctionSpace/LocalFunctionSpaceScalar.h +++ b/FunctionSpace/LocalFunctionSpaceScalar.h @@ -6,13 +6,34 @@ #include "Basis.h" #include "LocalFunctionSpace.h" +/** + @class LocalFunctionSpaceScalar + @brief Scalar Local Function Spaces + + A Local Function Space build on a @em Scalar Basis. + */ + class LocalFunctionSpaceScalar: LocalFunctionSpace{ protected: const std::vector<Polynomial>* basis; public: + //! Instantiate a new LocalFunctionSpaceScalar + //! @param basis The Basis used to build + //! this Function Space LocalFunctionSpaceScalar(const Basis& basis); + + //! Deletes this LocalFunctionSpaceScalar + //! virtual ~LocalFunctionSpaceScalar(void); + + //! Performs an Interpolation + //! @param coef The coefficients to use for the + //! Interpolation + //! @param x,y,z The coordinate of the Interpolation + //! @return Returns the value of the Interpolation + double interpolate(const fullVector<double>& coef, + double x, double y, double z) const; }; #endif diff --git a/FunctionSpace/LocalFunctionSpaceVector.h b/FunctionSpace/LocalFunctionSpaceVector.h index 1a0ebc7376..57971f6eb5 100644 --- a/FunctionSpace/LocalFunctionSpaceVector.h +++ b/FunctionSpace/LocalFunctionSpaceVector.h @@ -4,15 +4,37 @@ #include <vector> #include "Polynomial.h" #include "Basis.h" +#include "fullMatrix.h" #include "LocalFunctionSpace.h" +/** + @class LocalFunctionSpaceVector + @brief Vectorial Local Function Spaces + + A Local Function Space build on a @em Vectorial Basis. + */ + class LocalFunctionSpaceVector: LocalFunctionSpace{ protected: const std::vector<std::vector<Polynomial> >* basis; public: + //! Instantiate a new LocalFunctionSpaceVector + //! @param basis The Basis used to build + //! this Function Space LocalFunctionSpaceVector(const Basis& basis); + + //! Deletes this LocalFunctionSpaceVector + //! virtual ~LocalFunctionSpaceVector(void); + + //! Performs an Interpolation + //! @param coef The coefficients to use for the + //! Interpolation + //! @param x,y,z The coordinate of the Interpolation + //! @return Returns the value of the Interpolation + fullVector<double> interpolate(const fullVector<double>& coef, + double x, double y, double z) const; }; #endif -- GitLab