Grid 0.7.0
Cshift_none.h
Go to the documentation of this file.
1/*************************************************************************************
2
3 Grid physics library, www.github.com/paboyle/Grid
4
5 Source file: ./lib/cshift/Cshift_none.h
6
7 Copyright (C) 2015
8
9Author: Peter Boyle <paboyle@ph.ed.ac.uk>
10
11 This program is free software; you can redistribute it and/or modify
12 it under the terms of the GNU General Public License as published by
13 the Free Software Foundation; either version 2 of the License, or
14 (at your option) any later version.
15
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License for more details.
20
21 You should have received a copy of the GNU General Public License along
22 with this program; if not, write to the Free Software Foundation, Inc.,
23 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24
25 See the full license in the file "LICENSE" in the top level distribution directory
26*************************************************************************************/
27/* END LEGAL */
28#ifndef _GRID_CSHIFT_NONE_H_
29#define _GRID_CSHIFT_NONE_H_
31template<class vobj> Lattice<vobj> Cshift(const Lattice<vobj> &rhs,int dimension,int shift)
32{
33 Lattice<vobj> ret(rhs.Grid());
34 ret.Checkerboard() = rhs.Grid()->CheckerBoardDestination(rhs.Checkerboard(),shift,dimension);
35 Cshift_local(ret,rhs,dimension,shift);
36 return ret;
37}
39
40#endif
void Cshift_local(Lattice< vobj > &ret, const Lattice< vobj > &rhs, int dimension, int shift)
Lattice< vobj > Cshift(const Lattice< vobj > &rhs, int dimension, int shift)
Definition Cshift_none.h:31
#define NAMESPACE_BEGIN(A)
Definition Namespace.h:35
#define NAMESPACE_END(A)
Definition Namespace.h:36
virtual int CheckerBoardDestination(int source_cb, int shift, int dim)=0
accelerator_inline int Checkerboard(void) const
GridBase * Grid(void) const