diff --git a/dune/elasticity/assemblers/neohookefunctionalassembler.hh b/dune/elasticity/assemblers/neohookefunctionalassembler.hh index d4dc7d3fcea58eed100ecc95afd6761f19d59271..dad1db426582260dcf0fd693cb0ebf956c711f40 100644 --- a/dune/elasticity/assemblers/neohookefunctionalassembler.hh +++ b/dune/elasticity/assemblers/neohookefunctionalassembler.hh @@ -38,9 +38,9 @@ * - \f$J\f$ the determinant of the deformation gradient * - \f$\lambda\f$,\f$\mu\f$ material parameters */ -template <class GridType> +template <class GridType, class TrialLocalFE> class NeoHookeFunctionalAssembler : - public LocalFunctionalAssembler<GridType, Dune::FieldVector<typename GridType::ctype ,GridType::dimension> > + public LocalFunctionalAssembler<GridType, TrialLocalFE, Dune::FieldVector<typename GridType::ctype ,GridType::dimension> > { static const int dim = GridType::dimension; @@ -48,8 +48,8 @@ class NeoHookeFunctionalAssembler : typedef typename Dune::FieldVector<ctype,GridType::dimension> T; public: - typedef typename LocalFunctionalAssembler<GridType,T>::ElementPointer ElementPointer; - typedef typename LocalFunctionalAssembler<GridType,T>::LocalVector LocalVector; + typedef typename LocalFunctionalAssembler<GridType,TrialLocalFE,T>::ElementPointer ElementPointer; + typedef typename LocalFunctionalAssembler<GridType,TrialLocalFE,T>::LocalVector LocalVector; typedef VirtualGridFunction<GridType, Dune::FieldVector<ctype,GridType::dimension> > GridFunction; //! Create assembler from material parameters and a grid @@ -65,7 +65,6 @@ public: mu_(mu) {} - template <class TrialLocalFE> void assemble(const ElementPointer& element, LocalVector& localVector, const TrialLocalFE& tFE) { typedef typename Dune::FieldVector<ctype,dim> FVdim; diff --git a/dune/elasticity/materials/geomexactstvenantkirchhoffmaterial.hh b/dune/elasticity/materials/geomexactstvenantkirchhoffmaterial.hh index 7073231035b755e6de16fdde78f3401c4eb9356c..476162d93ccccd12344bb159a107772489376c6a 100644 --- a/dune/elasticity/materials/geomexactstvenantkirchhoffmaterial.hh +++ b/dune/elasticity/materials/geomexactstvenantkirchhoffmaterial.hh @@ -22,7 +22,7 @@ public: typedef typename Basis::GridView::Grid GridType; typedef typename Basis::LocalFiniteElement Lfe; - typedef GeomNonlinElasticityFunctionalAssembler<GridType> LocalLinearization; + typedef GeomNonlinElasticityFunctionalAssembler<GridType,Lfe> LocalLinearization; typedef GeomNonlinLinearizedStVenantAssembler<GridType, Lfe, Lfe> LocalHessian; typedef Basis GlobalBasis; diff --git a/dune/elasticity/materials/neohookeanmaterial.hh b/dune/elasticity/materials/neohookeanmaterial.hh index 778efc5a6007b218cad92009f4985750e9723cf5..fec645237664af4294f843c3fc22b52f44084817 100644 --- a/dune/elasticity/materials/neohookeanmaterial.hh +++ b/dune/elasticity/materials/neohookeanmaterial.hh @@ -22,7 +22,7 @@ public: typedef typename Basis::GridView::Grid GridType; typedef typename Basis::LocalFiniteElement Lfe; - typedef NeoHookeFunctionalAssembler<GridType> LocalLinearization; + typedef NeoHookeFunctionalAssembler<GridType,Lfe> LocalLinearization; typedef NeoHookeOperatorAssembler<GridType, Lfe, Lfe> LocalHessian; typedef Basis GlobalBasis;