4#ifndef DUNE_PDELAB_COMMON_VTKEXPORT_HH
5#define DUNE_PDELAB_COMMON_VTKEXPORT_HH
16#include<dune/pdelab/common/range.hh>
26 typedef typename T::Traits::GridViewType::Grid::ctype DF;
27 enum {n=T::Traits::GridViewType::dimension};
28 typedef typename T::Traits::GridViewType::Grid::template
Codim<0>::Entity Entity;
49 const std::vector<std::size_t> &remap_ =
50 rangeVector(std::size_t(T::Traits::dimRange)))
69 const std::vector<std::size_t> &remap_ =
70 rangeVector(std::size_t(T::Traits::dimRange)))
71 : t(t_), s(s_), remap(remap_)
81 typename T::Traits::DomainType x;
82 typename T::Traits::RangeType y;
84 for (
int i=0; i<n; i++)
87 return y[remap[comp]];
90 virtual std::string
name ()
const override
96 std::shared_ptr<const T> t;
98 std::vector<std::size_t> remap;
119 std::shared_ptr<VTKGridFunctionAdapter<GF> > makeVTKGridFunctionAdapter
120 (
const std::shared_ptr<GF> &gf,
const std::string &name,
121 const std::vector<std::size_t> &remap =
122 rangeVector(std::size_t(GF::Traits::dimRange)))
123 {
return std::make_shared<VTKGridFunctionAdapter<GF> >(gf, name, remap); }
143 std::shared_ptr<VTKGridFunctionAdapter<GF> > makeVTKGridFunctionAdapter
144 (
const GF &gf,
const std::string &name,
145 const std::vector<std::size_t> &remap =
146 rangeVector(std::size_t(GF::Traits::dimRange)))
165 std::shared_ptr<VTKGridFunctionAdapter<GF> > makeVTKGridFunctionAdapter
166 (
const std::shared_ptr<const GF> &gf,
const std::string &name,
167 const std::vector<std::size_t> &remap =
168 rangeVector(std::size_t(GF::Traits::dimRange)))
169 {
return std::make_shared<VTKGridFunctionAdapter<GF> >(gf, name, remap); }
175 template<
typename G,
typename FEM>
179 typedef typename G::ctype DF;
180 enum {n=G::dimension};
195 return fem.getOrder(e);
198 virtual std::string
name ()
const override
Wrapper class for entities.
Definition: entity.hh:64
vector space out of a tensor product of fields.
Definition: fvector.hh:96
Definition: vtkexport.hh:178
virtual std::string name() const override
get name
Definition: vtkexport.hh:198
virtual int ncomps() const override
Definition: vtkexport.hh:188
wrap a GridFunction so it can be used with the VTKWriter from dune-grid.
Definition: vtkexport.hh:25
virtual std::string name() const override
get name
Definition: vtkexport.hh:90
VTKGridFunctionAdapter(const T &t_, std::string s_, const std::vector< std::size_t > &remap_=rangeVector(std::size_t(T::Traits::dimRange)))
construct a VTKGridFunctionAdapter
Definition: vtkexport.hh:48
VTKGridFunctionAdapter(const std::shared_ptr< const T > &t_, std::string s_, const std::vector< std::size_t > &remap_=rangeVector(std::size_t(T::Traits::dimRange)))
construct a VTKGridFunctionAdapter
Definition: vtkexport.hh:68
virtual int ncomps() const override
Definition: vtkexport.hh:74
A base class for grid functions with any return type and dimension.
Definition: function.hh:40
Dune namespace.
Definition: alignedallocator.hh:14
shared_ptr< T > stackobject_to_shared_ptr(T &t)
Create a shared_ptr for a stack-allocated object.
Definition: shared_ptr.hh:75
This file implements the class shared_ptr (a reference counting pointer), for those systems that don'...
Static tag representing a codimension.
Definition: dimension.hh:22
Provides file i/o for the visualization toolkit.