From: Luca Heltai Date: Thu, 7 Aug 2014 14:15:26 +0000 (+0200) Subject: Refactored FunctionManifold. X-Git-Tag: v8.2.0-rc1~215^2~2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40686830ea9ec89339d540dc0803563996514663;p=dealii.git Refactored FunctionManifold. --- diff --git a/doc/news/changes.h b/doc/news/changes.h index 1fdaab934a..469c185d1f 100644 --- a/doc/news/changes.h +++ b/doc/news/changes.h @@ -99,7 +99,7 @@ inconvenience this causes.
    -
  1. New: Added FunctionManifoldChart descritpion. +
  2. New: Added FunctionManifold descritpion.
    This class allows arbitrary manifold descriptions, in which you have an explicit Function for the ManifoldChart::push_forward() diff --git a/include/deal.II/grid/manifold_lib.h b/include/deal.II/grid/manifold_lib.h index 899083dfa0..562efb9838 100644 --- a/include/deal.II/grid/manifold_lib.h +++ b/include/deal.II/grid/manifold_lib.h @@ -201,7 +201,7 @@ private: * @author Luca Heltai, 2014 */ template -class FunctionManifoldChart : public ManifoldChart +class FunctionManifold : public ManifoldChart { public: /** @@ -213,7 +213,7 @@ public: * The tolerance argument is used in debug mode to actually check * that the two functions are one the inverse of the other. */ - FunctionManifoldChart(const Function &push_forward_function, + FunctionManifold(const Function &push_forward_function, const Function &pull_back_function, const Point periodicity=Point(), const double tolerance=1e-10); @@ -233,7 +233,7 @@ public: * The tolerance argument is used in debug mode to actually check * that the two functions are one the inverse of the other. */ - FunctionManifoldChart(const std::string push_forward_expression, + FunctionManifold(const std::string push_forward_expression, const std::string pull_back_expression, const Point periodicity=Point(), const typename FunctionParser::ConstMap = typename FunctionParser::ConstMap(), @@ -244,7 +244,7 @@ public: /** * If needed, we delete the pointers we own. */ - ~FunctionManifoldChart(); + ~FunctionManifold(); /** * Given a point in the chartdim coordinate system, uses the @@ -272,13 +272,13 @@ private: * Pointer to the push_forward function. */ SmartPointer, - FunctionManifoldChart > push_forward_function; + FunctionManifold > push_forward_function; /** * Pointer to the pull_back function. */ SmartPointer, - FunctionManifoldChart > pull_back_function; + FunctionManifold > pull_back_function; /** * Relative tolerance. In debug mode, we check that the two diff --git a/source/grid/manifold_lib.cc b/source/grid/manifold_lib.cc index ee76066b44..209b10b1dd 100644 --- a/source/grid/manifold_lib.cc +++ b/source/grid/manifold_lib.cc @@ -208,7 +208,7 @@ get_new_point (const Quadrature &quad) const // FunctionManifoldChart // ============================================================ template -FunctionManifoldChart::FunctionManifoldChart +FunctionManifold::FunctionManifold (const Function &push_forward_function, const Function &pull_back_function, const Point periodicity, @@ -224,7 +224,7 @@ FunctionManifoldChart::FunctionManifoldChart } template -FunctionManifoldChart::FunctionManifoldChart +FunctionManifold::FunctionManifold (const std::string push_forward_expression, const std::string pull_back_expression, const Point periodicity, @@ -246,7 +246,7 @@ FunctionManifoldChart::FunctionManifoldChart } template -FunctionManifoldChart::~FunctionManifoldChart() { +FunctionManifold::~FunctionManifold() { if(owns_pointers == true) { const Function * pf = push_forward_function; push_forward_function = 0; @@ -260,7 +260,7 @@ FunctionManifoldChart::~FunctionManifoldChart() { template Point -FunctionManifoldChart::push_forward(const Point &chart_point) const +FunctionManifold::push_forward(const Point &chart_point) const { Vector pf(spacedim); Point result; @@ -284,7 +284,7 @@ FunctionManifoldChart::push_forward(const Point template Point -FunctionManifoldChart::pull_back(const Point &space_point) const +FunctionManifold::pull_back(const Point &space_point) const { Vector pb(chartdim); Point result; diff --git a/source/grid/manifold_lib.inst.in b/source/grid/manifold_lib.inst.in index 0945e6d66a..00a6d200c0 100644 --- a/source/grid/manifold_lib.inst.in +++ b/source/grid/manifold_lib.inst.in @@ -22,9 +22,9 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS #endif #if deal_II_dimension <= deal_II_space_dimension template class CylindricalManifold; - template class FunctionManifoldChart; - template class FunctionManifoldChart; - template class FunctionManifoldChart; + template class FunctionManifold; + template class FunctionManifold; + template class FunctionManifold; #endif } diff --git a/tests/manifold/function_manifold_chart_01.cc b/tests/manifold/function_manifold_01.cc similarity index 96% rename from tests/manifold/function_manifold_chart_01.cc rename to tests/manifold/function_manifold_01.cc index 04e06cf539..e63969370c 100644 --- a/tests/manifold/function_manifold_chart_01.cc +++ b/tests/manifold/function_manifold_01.cc @@ -49,7 +49,7 @@ void test(unsigned int ref=1) Assert(false, ExcInternalError()); } - FunctionManifoldChart manifold(push_forward_expression, + FunctionManifold manifold(push_forward_expression, pull_back_expression); Triangulation tria; diff --git a/tests/manifold/function_manifold_chart_01.output b/tests/manifold/function_manifold_01.output similarity index 100% rename from tests/manifold/function_manifold_chart_01.output rename to tests/manifold/function_manifold_01.output diff --git a/tests/manifold/function_manifold_chart_02.cc b/tests/manifold/function_manifold_02.cc similarity index 96% rename from tests/manifold/function_manifold_chart_02.cc rename to tests/manifold/function_manifold_02.cc index f6ac49b13b..e5f0c37cbd 100644 --- a/tests/manifold/function_manifold_chart_02.cc +++ b/tests/manifold/function_manifold_02.cc @@ -49,7 +49,7 @@ void test(unsigned int ref=1) Assert(false, ExcInternalError()); } - FunctionManifoldChart manifold(push_forward_expression, + FunctionManifold manifold(push_forward_expression, pull_back_expression); Triangulation tria; diff --git a/tests/manifold/function_manifold_chart_02.output b/tests/manifold/function_manifold_02.output similarity index 100% rename from tests/manifold/function_manifold_chart_02.output rename to tests/manifold/function_manifold_02.output