Skip to content
Snippets Groups Projects
bodydata.hh 779 B
Newer Older
#ifndef DUNE_TECTONIC_BODY_DATA_HH
#define DUNE_TECTONIC_BODY_DATA_HH
template <int dimension> struct BodyData {
Elias Pipping's avatar
Elias Pipping committed
  using ScalarFunction =
      Dune::VirtualFunction<Dune::FieldVector<double, dimension>,
                            Dune::FieldVector<double, 1>>;
  using VectorField =
      Dune::VirtualFunction<Dune::FieldVector<double, dimension>,
                            Dune::FieldVector<double, dimension>>;

  double virtual getPoissonRatio() const = 0;

  double virtual getYoungModulus() const = 0;

  ScalarFunction virtual const &getShearViscosityField() const = 0;
  ScalarFunction virtual const &getBulkViscosityField() const = 0;
  ScalarFunction virtual const &getDensityField() const = 0;
  VectorField virtual const &getGravityField() const = 0;