#ifndef ASSEMBLERS_HH #define ASSEMBLERS_HH #include <dune/common/bitsetvector.hh> #include <dune/common/function.hh> #include <dune/common/fvector.hh> #include <dune/common/parametertree.hh> #include <dune/common/shared_ptr.hh> #include <dune/istl/bvector.hh> #include <dune/tectonic/globalnonlinearity.hh> template <class GridType, class GridView, class LocalVectorType, class FEBasis> void assemble_neumann(GridView const &gridView, FEBasis const &feBasis, Dune::BitSetVector<1> const &neumannNodes, Dune::BlockVector<LocalVectorType> &f, Dune::VirtualFunction<double, double> const &neumann, double time); template <class GridType, class GridView, class LocalVectorType, class FEBasis> Dune::shared_ptr<Dune::BlockVector<Dune::FieldVector<double, 1>>> assemble_frictional(GridView const &gridView, FEBasis const &feBasis, Dune::BitSetVector<1> const &frictionalNodes); template <class MatrixType, class VectorType> Dune::shared_ptr<Dune::GlobalNonlinearity<MatrixType, VectorType> const> assemble_nonlinearity( Dune::ParameterTree const &parset, Dune::shared_ptr<Dune::BlockVector<Dune::FieldVector<double, 1>>> nodalIntegrals, Dune::shared_ptr<Dune::BlockVector<Dune::FieldVector<double, 1>>> state, double h); #endif