mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 14:04:32 +00:00 
			
		
		
		
	Template instantiation improvements
This commit is contained in:
		@@ -39,20 +39,17 @@ namespace QCD {
 | 
				
			|||||||
  /*
 | 
					  /*
 | 
				
			||||||
   * Dense matrix versions of routines
 | 
					   * Dense matrix versions of routines
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
 | 
					 | 
				
			||||||
  /*
 | 
					 | 
				
			||||||
template<class Impl>
 | 
					template<class Impl>
 | 
				
			||||||
void CayleyFermion5D<Impl>::MooeeInvDag (const FermionField &psi, FermionField &chi)
 | 
					void CayleyFermion5D<Impl>::MooeeInvDag (const FermionField &psi, FermionField &chi)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  this->MooeeInternal(psi,chi,DaggerYes,InverseYes);
 | 
					  this->MooeeInternal(psi,chi,DaggerYes,InverseYes);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
  
 | 
					 | 
				
			||||||
template<class Impl>
 | 
					template<class Impl>
 | 
				
			||||||
void CayleyFermion5D<Impl>::MooeeInv(const FermionField &psi, FermionField &chi)
 | 
					void CayleyFermion5D<Impl>::MooeeInv(const FermionField &psi, FermionField &chi)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  this->MooeeInternal(psi,chi,DaggerNo,InverseYes);
 | 
					  this->MooeeInternal(psi,chi,DaggerNo,InverseYes);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
  */
 | 
					
 | 
				
			||||||
template<class Impl>
 | 
					template<class Impl>
 | 
				
			||||||
void CayleyFermion5D<Impl>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv)
 | 
					void CayleyFermion5D<Impl>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@@ -126,9 +123,20 @@ void CayleyFermion5D<Impl>::MooeeInternal(const FermionField &psi, FermionField
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef CAYLEY_DPERP_DENSE
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(GparityWilsonImplF);
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(GparityWilsonImplD);
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(WilsonImplF);
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(WilsonImplD);
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(ZWilsonImplF);
 | 
				
			||||||
 | 
					INSTANTIATE_DPERP(ZWilsonImplD);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
template void CayleyFermion5D<GparityWilsonImplF>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
					template void CayleyFermion5D<GparityWilsonImplF>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
template void CayleyFermion5D<GparityWilsonImplD>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
					template void CayleyFermion5D<GparityWilsonImplD>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
template void CayleyFermion5D<WilsonImplF>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
					template void CayleyFermion5D<WilsonImplF>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
template void CayleyFermion5D<WilsonImplD>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
					template void CayleyFermion5D<WilsonImplD>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
 | 
					template void CayleyFermion5D<ZWilsonImplF>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
 | 
					template void CayleyFermion5D<ZWilsonImplD>::MooeeInternal(const FermionField &psi, FermionField &chi,int dag, int inv);
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}}
 | 
					}}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user