18template<
class real_type>
 
   22    real_type 
width()
  const{
return do_width();}
 
   24    real_type 
height()
 const{
return do_height();}
 
   43         const thrust::host_vector<real_type>& zeta1d,
 
   44         const thrust::host_vector<real_type>& eta1d,
 
   45         thrust::host_vector<real_type>& x,
 
   46         thrust::host_vector<real_type>& 
y,
 
   47         thrust::host_vector<real_type>& zetaX,
 
   48         thrust::host_vector<real_type>& zetaY,
 
   49         thrust::host_vector<real_type>& etaX,
 
   50         thrust::host_vector<real_type>& etaY)
 const 
   52        unsigned size = zeta1d.size()*eta1d.size();
 
   53        x.resize(size), 
y.resize(size);
 
   54        zetaX = zetaY = etaX = etaY =
x ;
 
   55        do_generate( zeta1d, eta1d, 
x,
y,zetaX,zetaY,etaX,etaY);
 
 
   74    virtual void do_generate(
 
   75         const thrust::host_vector<real_type>& zeta1d,
 
   76         const thrust::host_vector<real_type>& eta1d,
 
   77         thrust::host_vector<real_type>& x,
 
   78         thrust::host_vector<real_type>& 
y,
 
   79         thrust::host_vector<real_type>& zetaX,
 
   80         thrust::host_vector<real_type>& zetaY,
 
   81         thrust::host_vector<real_type>& etaX,
 
   82         thrust::host_vector<real_type>& etaY) 
const = 0;
 
   83     virtual real_type do_width() 
const =0;
 
   84     virtual real_type do_height() 
const =0;
 
   85     virtual bool do_isOrthogonal()
const{
return false;}
 
 
The abstract generator base class.
Definition generator.h:20
aRealGenerator2d & operator=(const aRealGenerator2d &)
return *this
Definition generator.h:72
virtual ~aRealGenerator2d()
Definition generator.h:64
virtual aRealGenerator2d * clone() const =0
Abstract clone method that returns a copy on the heap.
aRealGenerator2d()
empty
Definition generator.h:68
void generate(const thrust::host_vector< real_type > &zeta1d, const thrust::host_vector< real_type > &eta1d, thrust::host_vector< real_type > &x, thrust::host_vector< real_type > &y, thrust::host_vector< real_type > &zetaX, thrust::host_vector< real_type > &zetaY, thrust::host_vector< real_type > &etaX, thrust::host_vector< real_type > &etaY) const
Generate grid points and elements of the Jacobian.
Definition generator.h:42
bool isOrthogonal() const
sparsity pattern for metric
Definition generator.h:26
aRealGenerator2d(const aRealGenerator2d &)
empty
Definition generator.h:70
real_type width() const
length in  of the computational space
Definition generator.h:22
real_type height() const
length in  of the computational space
Definition generator.h:24