mirror of
https://github.com/paboyle/Grid.git
synced 2025-04-04 11:15:55 +01:00
Checking in spectral flow and DWF/Mobius kernel eigenvalue measurement
This commit is contained in:
parent
2848a9b558
commit
f7e2f9a401
@ -112,6 +112,7 @@ public:
|
|||||||
struct LanczosParameters: Serializable {
|
struct LanczosParameters: Serializable {
|
||||||
GRID_SERIALIZABLE_CLASS_MEMBERS(LanczosParameters,
|
GRID_SERIALIZABLE_CLASS_MEMBERS(LanczosParameters,
|
||||||
RealD, mass ,
|
RealD, mass ,
|
||||||
|
RealD, resid,
|
||||||
RealD, ChebyLow,
|
RealD, ChebyLow,
|
||||||
RealD, ChebyHigh,
|
RealD, ChebyHigh,
|
||||||
Integer, ChebyOrder)
|
Integer, ChebyOrder)
|
||||||
@ -200,9 +201,9 @@ int main(int argc, char** argv) {
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
int Nstop = 10;
|
int Nstop = 5;
|
||||||
int Nk = 20;
|
int Nk = 10;
|
||||||
int Np = 80;
|
int Np = 90;
|
||||||
int Nm = Nk + Np;
|
int Nm = Nk + Np;
|
||||||
int MaxIt = 10000;
|
int MaxIt = 10000;
|
||||||
RealD resid = 1.0e-5;
|
RealD resid = 1.0e-5;
|
||||||
@ -227,6 +228,7 @@ int main(int argc, char** argv) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
mass=LanParams.mass;
|
mass=LanParams.mass;
|
||||||
|
resid=LanParams.resid;
|
||||||
|
|
||||||
|
|
||||||
while ( mass > - 5.0){
|
while ( mass > - 5.0){
|
||||||
@ -235,16 +237,16 @@ while ( mass > - 5.0){
|
|||||||
//SchurDiagTwoOperator<FermionOp,FermionField> HermOp(WilsonOperator);
|
//SchurDiagTwoOperator<FermionOp,FermionField> HermOp(WilsonOperator);
|
||||||
// Gamma5HermitianLinearOperator <FermionOp,LatticeFermion> HermOp2(WilsonOperator); /// <-----
|
// Gamma5HermitianLinearOperator <FermionOp,LatticeFermion> HermOp2(WilsonOperator); /// <-----
|
||||||
|
|
||||||
std::vector<double> Coeffs{0, 1.};
|
std::vector<double> Coeffs{0, 0, 1.};
|
||||||
Polynomial<FermionField> PolyX(Coeffs);
|
Polynomial<FermionField> PolyX(Coeffs);
|
||||||
// Chebyshev<FermionField> Cheby(LanParams.ChebyLow,LanParams.ChebyHigh,LanParams.ChebyOrder);
|
Chebyshev<FermionField> Cheby(LanParams.ChebyLow,LanParams.ChebyHigh,LanParams.ChebyOrder);
|
||||||
|
|
||||||
// FunctionHermOp<FermionField> OpCheby(Cheby,HermOp);
|
FunctionHermOp<FermionField> OpCheby(Cheby,HermOp);
|
||||||
// InvHermOp<FermionField> Op(WilsonOperator,HermOp);
|
// InvHermOp<FermionField> Op(WilsonOperator,HermOp);
|
||||||
PlainHermOp<FermionField> Op (HermOp);
|
PlainHermOp<FermionField> Op (HermOp);
|
||||||
// PlainHermOp<FermionField> Op2 (HermOp2);
|
// PlainHermOp<FermionField> Op2 (HermOp2);
|
||||||
|
|
||||||
ImplicitlyRestartedLanczos<FermionField> IRL(Op, Op, Nstop, Nk, Nm, resid, MaxIt);
|
ImplicitlyRestartedLanczos<FermionField> IRL(OpCheby, Op, Nstop, Nk, Nm, resid, MaxIt);
|
||||||
|
|
||||||
std::vector<RealD> eval(Nm);
|
std::vector<RealD> eval(Nm);
|
||||||
FermionField src(FGrid);
|
FermionField src(FGrid);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user