1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-17 15:27:06 +01:00

Possible trash commit

This commit is contained in:
fionnoh
2018-07-10 13:30:45 +01:00
parent f74617c124
commit db86cdd7bd
4 changed files with 148 additions and 5 deletions

View File

@ -106,6 +106,7 @@ inline vRealD innerProductD(const vRealF &l,const vRealF &r){
typedef decltype(innerProduct(lhs._internal[0],rhs._internal[0])) ret_t;
iScalar<ret_t> ret;
ret=zero;
// std::cout << GridLogMessage << "innerProduct iVector" << std::endl;
for(int c1=0;c1<N;c1++){
ret._internal += innerProduct(lhs._internal[c1],rhs._internal[c1]);
}
@ -129,9 +130,34 @@ inline vRealD innerProductD(const vRealF &l,const vRealF &r){
{
typedef decltype(innerProduct(lhs._internal,rhs._internal)) ret_t;
iScalar<ret_t> ret;
// std::cout << GridLogMessage << "innerProduct iScalar" << std::endl;
ret._internal = innerProduct(lhs._internal,rhs._internal);
return ret;
}
template<class l,class r,int N> inline
auto myInnerProduct (const iVector<l,N>& lhs,const iVector<r,N>& rhs) -> iScalar<decltype(innerProduct(lhs._internal[0],rhs._internal[0]))>
{
typedef decltype(innerProduct(lhs._internal[0],rhs._internal[0])) ret_t;
iScalar<ret_t> ret;
ret=zero;
std::cout << GridLogMessage << "myInnerProduct iVector, N = " << N << std::endl;
for(int c1=0;c1<N;c1++){
ret._internal += innerProduct(lhs._internal[c1],rhs._internal[c1]);
}
return ret;
}
template<class l,class r> inline
auto myInnerProduct (const iScalar<l>& lhs,const iScalar<r>& rhs) -> iScalar<decltype(innerProduct(lhs._internal,rhs._internal))>
{
typedef decltype(innerProduct(lhs._internal,rhs._internal)) ret_t;
iScalar<ret_t> ret;
std::cout << GridLogMessage << "myInnerProduct iScalar" << std::endl;
ret._internal = myInnerProduct(lhs._internal,rhs._internal);
return ret;
}
}
#endif