42 void block(LatticeColorMatrix& u_block,
43 const multi1d<LatticeColorMatrix>&
u,
45 const Real& BlkAccu,
int BlkMax,
int j_decay)
49 LatticeColorMatrix u_dble;
50 LatticeColorMatrix u_unproj;
51 LatticeColorMatrix
tmp_1;
52 LatticeColorMatrix
tmp_2;
53 LatticeColorMatrix
tmp_3;
105 u_unproj = adj(u_block);
111 Double old_tr =
sum(real(trace(u_block * u_unproj)));
112 old_tr /=
Double(QDP::Layout::vol()*Nc);
115 bool wrswitch =
true;
118 while ( toBool(conver > BlkAccu) && n_blk < BlkMax )
133 QDPIO::cout <<
"BLOCK: WARNING unitarity violation\n";
134 QDPIO::cout <<
" n_blk= " << n_blk <<
" bl_level= " << bl_level <<
"\n";
135 QDPIO::cout <<
" mu= " <<
mu <<
" numbad= " <<
numbad << std::endl;
140 Double new_tr =
sum(real(trace(u_block * u_unproj)));
141 new_tr /=
Double(QDP::Layout::vol()*Nc);
145 QDPIO::cout <<
"BLOCK: n=" << n_blk
146 <<
" old_tr = " << old_tr <<
" new_tr = " << new_tr << std::endl;
150 conver = fabs((new_tr - old_tr) / old_tr);
Primary include file for CHROMA library code.
LatticeColorMatrix shift2(const LatticeColorMatrix &s1, int isign, int dir, int level)
A simple not-fancy power of 2 shift.
void block(LatticeColorMatrix &u_block, const multi1d< LatticeColorMatrix > &u, int mu, int bl_level, const Real &BlkAccu, int BlkMax, int j_decay)
Construct block links.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
void su3proj(LatticeColorMatrix &u, const LatticeColorMatrix &w, int su2_index)
void reunit(LatticeColorMatrixF3 &xa)
FloatingPoint< double > Double
Reunitarize in place a color matrix to SU(N)
Project a GL(3,C) color matrix onto SU(3)