#include <KineticFE.h>


Public Types | |
| using | ValueType = linearAlgebra::blasLapack::scalar_type< ValueTypeBasisData, ValueTypeBasisCoeff > |
| using | RealType = linearAlgebra::blasLapack::real_type< ValueType > |
| using | Storage = utils::MemoryStorage< ValueTypeBasisData, memorySpace > |
Public Member Functions | |
| KineticFE (std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace > > feBasisDataStorage, std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > linAlgOpContext, const size_type maxCellBlock, const size_type waveFuncBatchSize) | |
| Constructor. More... | |
| ~KineticFE () | |
| void | reinit (std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace > > feBasisDataStorage) |
| void | getLocal (Storage &cellWiseStorage) const override |
| void | evalEnergy (const std::vector< RealType > &occupation, const basis::FEBasisManager< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim > &feBMPsi, const linearAlgebra::MultiVector< ValueTypeBasisCoeff, memorySpace > &waveFunc) |
| RealType | getEnergy () const override |
| void | applyNonLocal (linearAlgebra::MultiVector< ValueTypeBasisCoeff, memorySpace > &X, linearAlgebra::MultiVector< ValueTypeBasisCoeff, memorySpace > &Y, bool updateGhostX, bool updateGhostY) const override |
| bool | hasLocalComponent () const override |
| bool | hasNonLocalComponent () const override |
Public Member Functions inherited from dftefe::ksdft::Hamiltonian< ValueTypeBasisData, memorySpace > | |
| virtual | ~Hamiltonian ()=default |
| virtual void | getLocal (utils::MemoryStorage< ValueTypeBasisData, memorySpace > &cellWiseStorage) const=0 |
| virtual void | applyNonLocal (linearAlgebra::MultiVector< ValueTypeBasisData, memorySpace > &X, linearAlgebra::MultiVector< ValueTypeBasisData, memorySpace > &Y, bool updateGhostX, bool updateGhostY) const=0 |
| virtual bool | hasLocalComponent () const=0 |
| virtual bool | hasNonLocalComponent () const=0 |
Public Member Functions inherited from dftefe::ksdft::Energy< linearAlgebra::blasLapack::real_type< linearAlgebra::blasLapack::scalar_type< ValueTypeBasisData, ValueTypeBasisCoeff > > > | |
| virtual | ~Energy ()=default |
| virtual linearAlgebra::blasLapack::real_type< linearAlgebra::blasLapack::scalar_type< ValueTypeBasisData, ValueTypeBasisCoeff > > | getEnergy () const=0 |
Private Attributes | |
| std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace > > | d_feBasisDataStorage |
| std::shared_ptr< basis::FEBasisOperations< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim > > | d_feBasisOp |
| RealType | d_energy |
| const size_type | d_maxCellBlock |
| const size_type | d_waveFuncBatchSize |
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | d_linAlgOpContext |
| quadrature::QuadratureValuesContainer< ValueType, memorySpace > * | d_gradPsi |
| Storage | d_cellWiseStorageKineticEnergy |
| std::shared_ptr< linearAlgebra::MultiVector< ValueType, memorySpace > > | d_psiBatchSmall |
| std::shared_ptr< linearAlgebra::MultiVector< ValueType, memorySpace > > | d_psiBatch |
| std::shared_ptr< const utils::mpi::MPIPatternP2P< memorySpace > > | d_mpiPatternP2P |
| using dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::RealType = linearAlgebra::blasLapack::real_type<ValueType> |
| using dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::Storage = utils::MemoryStorage<ValueTypeBasisData, memorySpace> |
| using dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::ValueType = linearAlgebra::blasLapack::scalar_type<ValueTypeBasisData, ValueTypeBasisCoeff> |
| dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::KineticFE | ( | std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace > > | feBasisDataStorage, |
| std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > | linAlgOpContext, | ||
| const size_type | maxCellBlock, | ||
| const size_type | waveFuncBatchSize | ||
| ) |
Constructor.

| dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::~KineticFE |
|
override |

| void dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::evalEnergy | ( | const std::vector< RealType > & | occupation, |
| const basis::FEBasisManager< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim > & | feBMPsi, | ||
| const linearAlgebra::MultiVector< ValueTypeBasisCoeff, memorySpace > & | waveFunc | ||
| ) |

|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
| void dftefe::ksdft::KineticFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim >::reinit | ( | std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace > > | feBasisDataStorage | ) |


|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |