root/src/grid_evolution.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*! \file grid_evolution.h
   2 
   3     \brief <Program Name>
   4 
   5      Revision history:
   6 
   7           Revised by Christian Power dd.mm.yyyy
   8           Originally written by Christian Power
   9                (power22c@gmail.com) 25. Januar 2016
  10 
  11      This programm implements a basic expression calculator.
  12      Input from cin; output to cout.  The grammar for input is: etc.
  13 
  14      Created by Christian Power on 25.01.2016
  15      Copyright (c) 2016 Christian Power.  All rights reserved.
  16  */
  17 
  18 #ifndef GRID_EVOLUTION_H
  19 #define GRID_EVOLUTION_H 
  20 
  21 #include "parameter.h"
  22 #include <dune/grid/geometrygrid/coordfunction.hh>
  23 #include <dune/fem/solver/timeprovider.hh>
  24 // #include <dune/fem/function/common/function.hh>
  25 
  26 namespace Grid_evolution{
  27   class DeformationCoordFunction
  28     : public Dune::AnalyticalCoordFunction<double, 3, 3, DeformationCoordFunction>
  29   {
  30   public:
  31     using Base = Dune::AnalyticalCoordFunction<double, 3, 3, DeformationCoordFunction>;
  32     using Domain = Base::DomainVector;
  33     using Range = Base::RangeVector;
  34   
  35     DeformationCoordFunction() = default;
  36     explicit DeformationCoordFunction(const Parameter::PDE_data&);
  37     DeformationCoordFunction(const DeformationCoordFunction&) = delete;
  38     DeformationCoordFunction(DeformationCoordFunction&&) = delete;
  39     DeformationCoordFunction& operator=(const DeformationCoordFunction&) = delete;
  40     DeformationCoordFunction& operator=(DeformationCoordFunction&&) = delete;
  41     ~DeformationCoordFunction() = default;
  42   
  43     void set_timeProvider(Dune::Fem::TimeProviderBase&);
  44     void evaluate(const Domain&, Range& y) const;
  45   private:
  46     class Grid_values;
  47     Grid_values* gv_ptr {nullptr}; 
  48     Dune::Fem::TimeProviderBase* tp_ptr {nullptr}; 
  49   };
  50 
  51   // pseudo external variables
  52   DeformationCoordFunction& deformation(const Parameter::PDE_data&);
  53 }
  54 
  55 #endif // GRID_EVOLUTION_H
  56 
  57 /*! Log:
  58  */

/* [<][>][^][v][top][bottom][index][help] */