|
Grid 0.7.0
|
#include <Aggregates.h>
Public Types | |
| typedef iVector< CComplex, nbasis > | siteVector |
| typedef Lattice< siteVector > | CoarseVector |
| typedef Lattice< iMatrix< CComplex, nbasis > > | CoarseMatrix |
| typedef Lattice< CComplex > | CoarseScalar |
| typedef Lattice< Fobj > | FineField |
Public Member Functions | |
| constexpr int | Nbasis (void) |
| int | Checkerboard (void) |
| Aggregation (GridBase *_CoarseGrid, GridBase *_FineGrid, int _checkerboard) | |
| void | Orthogonalise (void) |
| void | ProjectToSubspace (CoarseVector &CoarseVec, const FineField &FineVec) |
| void | PromoteFromSubspace (const CoarseVector &CoarseVec, FineField &FineVec) |
| virtual void | CreateSubspaceRandom (GridParallelRNG &RNG) |
| virtual void | CreateSubspace (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, int nn=nbasis) |
| virtual void | CreateSubspaceGCR (GridParallelRNG &RNG, LinearOperatorBase< FineField > &DiracOp, int nn=nbasis) |
| virtual void | CreateSubspaceChebyshev (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, int nn, double hi, double lo, int orderfilter, int ordermin, int orderstep, double filterlo) |
| virtual void | CreateSubspacePolyCheby (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, int nn, double hi, double lo1, int orderfilter, double lo2, int orderstep) |
| virtual void | CreateSubspaceChebyshev (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, int nn, double hi, double lo, int orderfilter) |
| virtual void | CreateSubspaceChebyshevPowerLaw (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, int nn, double hi, int orderfilter) |
| virtual void | CreateSubspaceChebyshevNew (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, double hi) |
| virtual void | CreateSubspaceMultishift (GridParallelRNG &RNG, LinearOperatorBase< FineField > &hermop, double Lo, double tol, int maxit) |
| virtual void | RefineSubspace (LinearOperatorBase< FineField > &hermop, double Lo, double tol, int maxit) |
| virtual void | RefineSubspaceHDCG (LinearOperatorBase< FineField > &hermop, TwoLevelADEF2mrhs< FineField, CoarseVector > &theHDCG, int nrhs) |
Data Fields | |
| GridBase * | CoarseGrid |
| GridBase * | FineGrid |
| std::vector< Lattice< Fobj > > | subspace |
| int | checkerboard |
Definition at line 45 of file Aggregates.h.
| typedef iVector<CComplex,nbasis > Aggregation< Fobj, CComplex, nbasis >::siteVector |
Definition at line 49 of file Aggregates.h.
| typedef Lattice<siteVector> Aggregation< Fobj, CComplex, nbasis >::CoarseVector |
Definition at line 50 of file Aggregates.h.
| typedef Lattice<iMatrix<CComplex,nbasis > > Aggregation< Fobj, CComplex, nbasis >::CoarseMatrix |
Definition at line 51 of file Aggregates.h.
| typedef Lattice< CComplex > Aggregation< Fobj, CComplex, nbasis >::CoarseScalar |
Definition at line 53 of file Aggregates.h.
| typedef Lattice<Fobj > Aggregation< Fobj, CComplex, nbasis >::FineField |
Definition at line 54 of file Aggregates.h.
|
inline |
Definition at line 61 of file Aggregates.h.
References checkerboard, CoarseGrid, FineGrid, and subspace.
|
inlineconstexpr |
Definition at line 47 of file Aggregates.h.
|
inline |
Definition at line 60 of file Aggregates.h.
References checkerboard.
|
inline |
Definition at line 70 of file Aggregates.h.
References blockOrthogonalise(), CoarseGrid, and subspace.
|
inline |
Definition at line 75 of file Aggregates.h.
References blockProject(), and subspace.
Referenced by TwoLevelADEF2< Field, CoarseField, Aggregation >::PcgM1(), and TwoLevelADEF2< Field, CoarseField, Aggregation >::Vstart().
|
inline |
Definition at line 78 of file Aggregates.h.
References blockPromote(), LatticeAccelerator< vobj >::Checkerboard(), and subspace.
Referenced by TwoLevelADEF2< Field, CoarseField, Aggregation >::PcgM1(), and TwoLevelADEF2< Field, CoarseField, Aggregation >::Vstart().
|
inlinevirtual |
Definition at line 83 of file Aggregates.h.
References FineGrid, gaussian(), norm2(), and subspace.
|
inlinevirtual |
Definition at line 95 of file Aggregates.h.
References FineGrid, gaussian(), GridLogMessage, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 129 of file Aggregates.h.
References FineGrid, gaussian(), GridLogMessage, innerProduct(), norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 181 of file Aggregates.h.
References accelerator_for, AcceleratorWrite, LinearOperatorBase< Field >::AdjOp(), autoView, FineGrid, gaussian(), GridLogMessage, LinearOperatorBase< Field >::HermOp(), innerProduct(), norm2(), LinearOperatorBase< Field >::Op(), subspace, T0, T1, and T2.
|
inlinevirtual |
Definition at line 299 of file Aggregates.h.
References FineGrid, gaussian(), GridLogMessage, innerProduct(), norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 361 of file Aggregates.h.
References AggregatePowerLaw(), FineGrid, gaussian(), GridLogMessage, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 408 of file Aggregates.h.
References AggregatePowerLaw(), FineGrid, gaussian(), GridLogMessage, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 444 of file Aggregates.h.
References FineGrid, gaussian(), GridLogMessage, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 504 of file Aggregates.h.
References FineGrid, gaussian(), GridLogMessage, MultiShiftFunction::norm, norm2(), LinearOperatorBase< Field >::Op(), MultiShiftFunction::order, MultiShiftFunction::poles, MultiShiftFunction::residues, subspace, and MultiShiftFunction::tolerances.
|
inlinevirtual |
Definition at line 555 of file Aggregates.h.
References FineGrid, GridLogMessage, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
|
inlinevirtual |
Definition at line 571 of file Aggregates.h.
References FineGrid, GridLogMessage, MIN, norm2(), LinearOperatorBase< Field >::Op(), and subspace.
| GridBase* Aggregation< Fobj, CComplex, nbasis >::CoarseGrid |
Definition at line 56 of file Aggregates.h.
Referenced by Aggregation(), Orthogonalise(), and TwoLevelADEF2< Field, CoarseField, Aggregation >::TwoLevelADEF2().
| GridBase* Aggregation< Fobj, CComplex, nbasis >::FineGrid |
Definition at line 57 of file Aggregates.h.
Referenced by Aggregation(), MultiGeneralCoarsenedMatrix< Fobj, CComplex, nbasis >::CoarsenOperator(), CreateSubspace(), CreateSubspaceChebyshev(), CreateSubspaceChebyshev(), CreateSubspaceChebyshevNew(), CreateSubspaceChebyshevPowerLaw(), CreateSubspaceGCR(), CreateSubspaceMultishift(), CreateSubspacePolyCheby(), CreateSubspaceRandom(), RefineSubspace(), and RefineSubspaceHDCG().
| std::vector<Lattice<Fobj> > Aggregation< Fobj, CComplex, nbasis >::subspace |
Definition at line 58 of file Aggregates.h.
Referenced by Aggregation(), CoarsenedMatrix< Fobj, CComplex, nbasis >::CoarsenOperator(), GeneralCoarsenedMatrix< Fobj, CComplex, nbasis >::CoarsenOperator(), MultiGeneralCoarsenedMatrix< Fobj, CComplex, nbasis >::CoarsenOperator(), CreateSubspace(), CreateSubspaceChebyshev(), CreateSubspaceChebyshev(), CreateSubspaceChebyshevNew(), CreateSubspaceChebyshevPowerLaw(), CreateSubspaceGCR(), CreateSubspaceMultishift(), CreateSubspacePolyCheby(), CreateSubspaceRandom(), Orthogonalise(), ProjectToSubspace(), PromoteFromSubspace(), RefineSubspace(), and RefineSubspaceHDCG().
| int Aggregation< Fobj, CComplex, nbasis >::checkerboard |
Definition at line 59 of file Aggregates.h.
Referenced by Aggregation(), and Checkerboard().