Skip to content
Snippets Groups Projects
Commit bc1cbc15 authored by Oliver Sander's avatar Oliver Sander Committed by sander
Browse files

LocalStiffness objects get the basis now, instead of GridView and LocalFiniteElement

[[Imported from SVN: r10088]]
parent 547b98c4
No related branches found
No related tags found
No related merge requests found
...@@ -20,12 +20,14 @@ ...@@ -20,12 +20,14 @@
//#define QUADRATIC_MEMBRANE_ENERGY //#define QUADRATIC_MEMBRANE_ENERGY
template<class GridView, class LocalFiniteElement, int dim, class field_type=double> template<class Basis, int dim, class field_type=double>
class CosseratEnergyLocalStiffness class CosseratEnergyLocalStiffness
: public LocalGeodesicFEStiffness<GridView,LocalFiniteElement,RigidBodyMotion<field_type,dim> > : public LocalGeodesicFEStiffness<Basis,RigidBodyMotion<field_type,dim> >
{ {
// grid types // grid types
typedef typename GridView::Grid::ctype DT; typedef typename Basis::GridView GridView;
typedef typename Basis::LocalView::Tree::FiniteElement LocalFiniteElement;
typedef typename GridView::ctype DT;
typedef RigidBodyMotion<field_type,dim> TargetSpace; typedef RigidBodyMotion<field_type,dim> TargetSpace;
typedef typename TargetSpace::ctype RT; typedef typename TargetSpace::ctype RT;
typedef typename GridView::template Codim<0>::Entity Entity; typedef typename GridView::template Codim<0>::Entity Entity;
...@@ -294,11 +296,11 @@ public: ...@@ -294,11 +296,11 @@ public:
const Dune::VirtualFunction<Dune::FieldVector<double,gridDim>, Dune::FieldVector<double,3> >* neumannFunction_; const Dune::VirtualFunction<Dune::FieldVector<double,gridDim>, Dune::FieldVector<double,3> >* neumannFunction_;
}; };
template <class GridView, class LocalFiniteElement, int dim, class field_type> template <class Basis, int dim, class field_type>
typename CosseratEnergyLocalStiffness<GridView,LocalFiniteElement,dim,field_type>::RT typename CosseratEnergyLocalStiffness<Basis,dim,field_type>::RT
CosseratEnergyLocalStiffness<GridView,LocalFiniteElement,dim,field_type>:: CosseratEnergyLocalStiffness<Basis,dim,field_type>::
energy(const Entity& element, energy(const Entity& element,
const LocalFiniteElement& localFiniteElement, const typename Basis::LocalView::Tree::FiniteElement& localFiniteElement,
const std::vector<RigidBodyMotion<field_type,dim> >& localSolution) const const std::vector<RigidBodyMotion<field_type,dim> >& localSolution) const
{ {
assert(element.type() == localFiniteElement.type()); assert(element.type() == localFiniteElement.type());
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment