Class : AbstractLanczosAlgorithm

~AbstractLanczosAlgorithm :

prototype: virtual ~AbstractLanczosAlgorithm ()

description:destructor



SetHamiltonian :

prototype: virtual void SetHamiltonian (AbstractHamiltonian* hamiltonian )

description:Set Hamiltonian on which Lanczos algorithm will be applied


input parameters:
hamiltonian = Hamiltonian to use



InitializeLanczosAlgorithm :

prototype: virtual void InitializeLanczosAlgorithm ()

description:initialize Lanczos algorithm with a random vector



InitializeLanczosAlgorithm :

prototype: virtual void InitializeLanczosAlgorithm (const Vector& vector )

description:initialize Lanczos algorithm with a given vector


input parameters:
vector = reference to the vector used as first step vector



ResumeLanczosAlgorithm :

prototype: virtual void ResumeLanczosAlgorithm ()

description:resume Lanczos algorithm from disk datas in current directory



GetGroundState :

prototype: virtual Vector& GetGroundState ()

description:get ground state


input parameters:


return value: reference on ground state



GetGroundStateEnergy :

prototype: virtual double GetGroundStateEnergy ()

description:get ground state energy


input parameters:


return value: ground state energy



GetEigenstates :

prototype: virtual Vector* GetEigenstates (int nbrEigenstates )

description:get the n first eigenstates


input parameters:
nbrEigenstates = number of needed eigenstates


return value: array containing the eigenstates



RunLanczosAlgorithm :

prototype: virtual void RunLanczosAlgorithm (int nbrIter )

description:run current Lanczos algorithm (continue from previous results if Lanczos algorithm has already been run)


input parameters:
nbrIter = number of iteration to do



GetDiagonalizedMatrix :

prototype: virtual RealTriDiagonalSymmetricMatrix& GetDiagonalizedMatrix ()

description:get current diagonalized matrix


input parameters:


return value: reference on current diagonalized matrix



TestConvergence :

prototype: virtual bool TestConvergence ()

description:test if convergence has been reached


input parameters:


return value: true if convergence has been reached



SetEigenvaluePrecision :

prototype: virtual void SetEigenvaluePrecision (double precision )

description:set precision needed for eigenvalues


input parameters:
precision = precision needed for eigenvalues



SetEigenvectorPrecision :

prototype: virtual void SetEigenvectorPrecision (double precision )

description:set precision needed for eigenvectors


input parameters:
precision = precision needed for eigenvectors



Back to index.