Procedure | Location | Procedure Type | Description |
---|---|---|---|
ActivateLogger | LoggingModule | Subroutine | Activate the logger. |
AddSparseVectors | SVectorModule | Interface | |
AppendToTripletList | TripletListModule | Interface | |
AppendToVector | CholeskyModule | Interface | |
BroadcastVector | CholeskyModule | Interface | |
CGSolver | LinearSolversModule | Subroutine | Solve the matrix equation AX = B using the conjugate gradient method. |
CheckAllocError | ErrorModule | Function | Routine to call if an alloc error has occurred. |
CheckMemoryPoolValidity | PMatrixMemoryPoolModule | Interface | |
CheckMemoryPoolValidity | MatrixMemoryPoolModule | Interface | |
CheckMPIError | ErrorModule | Function | Routine to call to check if an MPI error has occurred. |
CholeskyDecomposition | LinearSolversModule | Subroutine | Compute The Cholesky Decomposition of a Hermitian Positive Definite matrix. This is a really naive implementation, that might be worth revisiting. |
Cleanup | ErrorModule | Subroutine | As a last case resort, this will print an error message and quit. |
CommSplitMatrix | PSMatrixModule | Interface | |
CompareTriplets | TripletModule | Interface | |
ComposeMatrix | SMatrixModule | Interface | |
ComposeMatrix | DMatrixModule | Interface | |
ComposeMatrixColumns | SMatrixModule | Interface | |
Compute | ChebyshevSolversModule | Interface | |
Compute | HermiteSolversModule | Interface | |
Compute | PolynomialSolversModule | Interface | |
ComputeExponential | ExponentialSolversModule | Subroutine | Compute the exponential of a matrix. |
ComputeExponentialPade | ExponentialSolversModule | Subroutine | Compute the exponential of a matrix using a pade approximation. Be warned, the pade method can result in a lot of intermediate fill. |
ComputeExponentialTaylor | ExponentialSolversModule | Subroutine | Compute the exponential of a matrix using a taylor series expansion. This is only really useful if you have a very small spectrum, because quite a bit of scaling is required. |
ComputeInverseRoot | RootSolversModule | Subroutine | Compute a general inverse matrix root. |
ComputeLogarithm | ExponentialSolversModule | Subroutine | Compute the logarithm of a matrix. |
ComputeLogarithmTaylor | ExponentialSolversModule | Subroutine | Compute the logarithm of a matrix using a taylor series expansion. |
ComputeRoot | RootSolversModule | Subroutine | Compute a general matrix root. |
ConjugateMatrix | SMatrixModule | Interface | |
ConjugateMatrix | PSMatrixModule | Interface | |
ConstructDefaultPermutation | PermutationModule | Subroutine | Constructs a permutation that preserves the original order. |
ConstructDiag | CholeskyModule | Interface | |
ConstructEmptyMatrix | SMatrixModule | Interface | |
ConstructEmptyMatrix | DMatrixModule | Interface | |
ConstructEmptyMatrix | PSMatrixModule | Interface | |
ConstructError | ErrorModule | Subroutine | Default constructor for an error type. |
ConstructLimitedRandomPermutation | PermutationModule | Subroutine | Constructs a permutation that has a random order, but there is no permutation from beyond the actual matrix dimension. |
ConstructMatrixDFromS | DMatrixModule | Interface | |
ConstructMatrixFromBinary | PSMatrixModule | Interface | |
ConstructMatrixFromFile | SMatrixModule | Interface | |
ConstructMatrixFromMatrixMarket | PSMatrixModule | Interface | |
ConstructMatrixFromTripletList | SMatrixModule | Interface | |
ConstructMatrixMemoryPool | MatrixMemoryPoolModule | Interface | |
ConstructMatrixSFromD | DMatrixModule | Interface | |
ConstructNewProcessGrid | ProcessGridModule | Interface | |
ConstructPolynomial | ChebyshevSolversModule | Interface | |
ConstructPolynomial | HermiteSolversModule | Interface | |
ConstructPolynomial | PolynomialSolversModule | Interface | |
ConstructProcessGrid | ProcessGridModule | Interface | |
ConstructRandomPermutation | PermutationModule | Subroutine | Constructs a permutation that has a random order. Implements Knuth shuffle. |
ConstructRankLookup | CholeskyModule | Subroutine | Construct a lookup for columns |
ConstructReversePermutation | PermutationModule | Subroutine | Constructs a permutation that reverses the original order. |
ConstructTripletList | TripletListModule | Interface | |
ConvertMatrixToComplex | PSMatrixModule | Subroutine | Converts the current matrix to a complex type matrix. |
ConvertMatrixToReal | PSMatrixModule | Subroutine | Converts the current matrix to a real type matrix. |
ConvertMatrixType | SMatrixModule | Interface | |
ConvertTripletListType | TripletListModule | Interface | |
ConvertTripletType | TripletModule | Interface | |
CopyMatrix | SMatrixModule | Interface | |
CopyMatrix | DMatrixModule | Interface | |
CopyMatrix | PSMatrixModule | Interface | |
CopyProcessGrid | ProcessGridModule | Subroutine | Copy a process grid. Note that this makes a complete and independent copy of the process grid. Which of course means that whatever is currently stored in new_grid will be destroyed, so do not leave any matrices pointing to it. |
Cosine | TrigonometrySolversModule | Subroutine | Compute the cosine of a matrix. |
DeactivateLogger | LoggingModule | Subroutine | Deactivate the logger. |
DestructMatrix | SMatrixModule | Interface | |
DestructMatrix | DMatrixModule | Interface | |
DestructMatrix | PSMatrixModule | Interface | |
DestructMatrixMemoryPool | PMatrixMemoryPoolModule | Interface | |
DestructMatrixMemoryPool | MatrixMemoryPoolModule | Interface | |
DestructPermutation | PermutationModule | Subroutine | Destruct a permutation object. |
DestructPolynomial | ChebyshevSolversModule | Interface | |
DestructPolynomial | HermiteSolversModule | Interface | |
DestructPolynomial | PolynomialSolversModule | Interface | |
DestructProcessGrid | ProcessGridModule | Subroutine | Destruct a process grid. Be careful about doing this. Matrices have pointers to process grids. If you destruct a process grid without destructing the matrices pointing to it, they will become unusable. |
DestructSolverParameters | SolverParametersModule | Subroutine | Cleanup the solver parameters datastructure. |
DestructTripletList | TripletListModule | Interface | |
DotAllHelper | CholeskyModule | Interface | |
DotAllPivoted | CholeskyModule | Interface | |
DotMatrix | SMatrixAlgebraModule | Interface | |
DotMatrix | PSMatrixAlgebraModule | Interface | |
DotSparseVectors | SVectorModule | Interface | |
EnergyDensityMatrix | DensityMatrixSolversModule | Subroutine | Compute the energy-weighted density matrix. |
EnterSubLog | LoggingModule | Subroutine | Call this subroutine when you enter into a section with verbose output |
ErrorOccurred | ErrorModule | Function | Check if an error has occurred or not. |
ExitSubLog | LoggingModule | Subroutine | Call this subroutine when you exit a section with verbose output |
ExtractMatrixColumn | SMatrixModule | Interface | |
ExtractMatrixRow | SMatrixModule | Interface | |
FactorizedCompute | ChebyshevSolversModule | Interface | |
FactorizedCompute | PolynomialSolversModule | Interface | |
FillMatrixFromTripletList | PSMatrixModule | Interface | |
FillMatrixIdentity | PSMatrixModule | Interface | |
FillMatrixPermutation | PSMatrixModule | Interface | |
FilterMatrix | PSMatrixModule | Interface | |
GatherMatrixColumn | CholeskyModule | Interface | |
GatherMatrixToProcess | PSMatrixModule | Interface | |
GershgorinBounds | EigenBoundsModule | Subroutine | Compute a bounds on the minimum and maximum eigenvalue of a matrix. Uses the Gershgorin theorem. |
GetMatrixActualDimension | PSMatrixModule | Interface | |
GetMatrixBlock | PSMatrixModule | Interface | |
GetMatrixColumns | SMatrixModule | Interface | |
GetMatrixLoadBalance | PSMatrixModule | Interface | |
GetMatrixLogicalDimension | PSMatrixModule | Interface | |
GetMatrixRows | SMatrixModule | Interface | |
GetMatrixSize | PSMatrixModule | Interface | |
GetMatrixSlice | PSMatrixModule | Subroutine | Copy an arbitrary slice from a matrix into a new smaller matrix. NTPoly only works with square matrices, so if the number of rows and columns is different the matrix is resized to the maximum size. |
GetMatrixTripletList | PSMatrixModule | Interface | |
GetMPITripletType_c | TripletModule | Function | Returns an MPI Derived Data Type For A Triplet. We statically store this derived type so that we do not have to recreate it every time this function is called. Thus this functional call should add very little overhead. |
GetMPITripletType_r | TripletModule | Function | Returns an MPI Derived Data Type For A Triplet. We statically store this derived type so that we do not have to recreate it every time this function is called. Thus this functional call should add very little overhead. |
GetMyColumn | ProcessGridModule | Function | Get the column of the current process. |
GetMyRow | ProcessGridModule | Function | Get the row of the current process. |
GetMySlice | ProcessGridModule | Function | Get the slice of the current process. |
GetPivot | CholeskyModule | Interface | |
GetTripletAt | TripletListModule | Interface | |
GetTripletListSize | TripletListModule | Interface | |
GetTripletValues | TripletModule | Interface | |
HPCP | DensityMatrixSolversModule | Subroutine | Compute the density matrix from a Hamiltonian using the HPCP method. Based on the algorithm presented in \cite truflandier2016communication. |
IncrementMatrix | SMatrixAlgebraModule | Interface | |
IncrementMatrix | DMatrixModule | Interface | |
IncrementMatrix | PSMatrixAlgebraModule | Interface | |
InverseSquareRoot | SquareRootSolversModule | Subroutine | Compute the inverse square root of a matrix. |
Invert | InverseSolversModule | Subroutine | Compute the inverse of a matrix. An implementation of the method of Hotelling \cite palser1998canonical. |
IsRoot | ProcessGridModule | Function | Check if the current process is the root process. |
LowdinExtrapolate | GeometryOptimizationModule | Subroutine | Create a new guess at the Density Matrix after updating the geometry. Based on the lowdin algorithm in \cite exner2002comparison . |
MapMatrix_psc | MatrixMapsModule | Subroutine | Given a distributed matrix, apply this procedure to each element (complex). |
MapMatrix_psr | MatrixMapsModule | Subroutine | Given a distributed matrix, apply this procedure to each element (real). |
MapTripletList | MatrixMapsModule | Interface | |
Matrix_ldc | DMatrixModule | Interface | |
Matrix_ldr | DMatrixModule | Interface | |
Matrix_lsc | SMatrixModule | Interface | |
Matrix_lsr | SMatrixModule | Interface | |
MatrixColumnNorm | SMatrixAlgebraModule | Interface | |
MatrixGrandSum | SMatrixAlgebraModule | Interface | |
MatrixGrandSum | PSMatrixAlgebraModule | Interface | |
MatrixMemoryPool_lc | MatrixMemoryPoolModule | Interface | |
MatrixMemoryPool_lr | MatrixMemoryPoolModule | Interface | |
MatrixMemoryPool_p | PMatrixMemoryPoolModule | Interface | |
MatrixMultiply | SMatrixAlgebraModule | Interface | |
MatrixMultiply | PSMatrixAlgebraModule | Interface | |
MatrixNorm | SMatrixAlgebraModule | Interface | |
MatrixNorm | DMatrixModule | Interface | |
MatrixNorm | PSMatrixAlgebraModule | Interface | |
MatrixSigma | PSMatrixAlgebraModule | Interface | |
MatrixToTripletList | SMatrixModule | Interface | |
MatrixTrace | PSMatrixAlgebraModule | Interface | |
MergeMatrixLocalBlocks | PSMatrixModule | Interface | |
MultiplyMatrix | DMatrixModule | Interface | |
PairwiseMultiplyMatrix | SMatrixAlgebraModule | Interface | |
PairwiseMultiplyMatrix | PSMatrixAlgebraModule | Interface | |
PairwiseMultiplyVectors | SVectorModule | Interface | |
ParseMMHeader | MatrixMarketModule | Function | Parse a matrix market header. |
PermuteMatrix | LoadBalancerModule | Subroutine | Apply a permutation to a matrix. |
PivotedCholeskyDecomposition | AnalysisModule | Subroutine | Compute The Pivoted Cholesky Decomposition of a Hermitian Semi-Definite matrix. This is one way to generate localized orbitals. |
PM | DensityMatrixSolversModule | Subroutine | Compute the density matrix from a Hamiltonian using the PM method. Based on the PM algorithm presented in \cite palser1998canonical |
PolarDecomposition | SignSolversModule | Subroutine | Computes the polar decomposition of a matrix Mat = U*H. |
PowerBounds | EigenBoundsModule | Subroutine | Compute a bounds on the maximum eigenvalue of a matrix. Uses The Power Method. |
PrintAllTimers | TimerModule | Subroutine | Print out the elapsed time for each timer on this process. |
PrintAllTimersDistributed | TimerModule | Subroutine | Print out the elapsed time for each timer based on the max value across processes. |
PrintError | ErrorModule | Subroutine | Print out that an error has occurred. |
PrintMatrix | SMatrixModule | Interface | |
PrintMatrix | PSMatrixModule | Interface | |
PrintMatrixInformation | PSMatrixModule | Interface | |
PrintParameters | SolverParametersModule | Subroutine | Print out the iterative solver parameter values. |
PrintTimer | TimerModule | Subroutine | Print out the elapsed time for a given timer. |
PseudoInverse | InverseSolversModule | Subroutine | Compute the pseudoinverse of a matrix. An implementation of the method of Hotelling \cite palser1998canonical. |
PurificationExtrapolate | GeometryOptimizationModule | Subroutine | Create a new guess at the Density Matrix after updating the geometry. Based on the purification algorithm in \cite niklasson2010trace . |
RedistributeTripletLists | TripletListModule | Interface | |
ReduceAndComposeMatrix | MatrixReduceModule | Interface | |
ReduceAndComposeMatrixCleanup | MatrixReduceModule | Interface | |
ReduceAndComposeMatrixData | MatrixReduceModule | Interface | |
ReduceAndComposeMatrixSizes | MatrixReduceModule | Interface | |
ReduceAndSumMatrix | MatrixReduceModule | Interface | |
ReduceAndSumMatrixCleanup | MatrixReduceModule | Interface | |
ReduceAndSumMatrixData | MatrixReduceModule | Interface | |
ReduceAndSumMatrixSizes | MatrixReduceModule | Interface | |
RegisterTimer | TimerModule | Subroutine | Register a timer with the timer module. Call this before using that timer. |
ResizeMatrix | PSMatrixModule | Subroutine | Change the size of a matrix. If the new size is smaller, then values outside that range are deleted. IF the new size is bigger, zero padding is applied. Warning: this requires a full data redistribution. |
ResizeTripletList | TripletListModule | Interface | |
ScaleAndFold | DensityMatrixSolversModule | Subroutine | Compute the density matrix from a Hamiltonian using the Scale and Fold method. Based on the method of \cite rubensson2011nonmonotonic . Note that for this method, you must provide the value of the homo and lumo gap. It is not necessary for these to be accurate, but give a conservative value. |
ScaleMatrix | SMatrixAlgebraModule | Interface | |
ScaleMatrix | PSMatrixAlgebraModule | Interface | |
ScaleSquareTrigonometryTaylor | TrigonometrySolversModule | Subroutine | Compute trigonometric functions of a matrix using a taylor series. |
SetCoefficient | ChebyshevSolversModule | Interface | |
SetCoefficient | HermiteSolversModule | Interface | |
SetCoefficient | PolynomialSolversModule | Interface | |
SetGenericError | ErrorModule | Subroutine | Routine to call if a generic error has occurred. |
SetInitialOffset | LoggingModule | Subroutine | Set a manual initial offset spacing. |
SetMatrixProcessGrid | PSMatrixModule | Subroutine | When you want to change the process grid of a matrix, you can call this routine with the new process grid value. Data will be automatically redistributed. |
SetParametersBeVerbose | SolverParametersModule | Subroutine | Set the value of the verbosity. |
SetParametersConvergeDiff | SolverParametersModule | Subroutine | Set the value of the convergence difference. |
SetParametersLoadBalance | SolverParametersModule | Subroutine | Set the value of the load balance. |
SetParametersMaxIterations | SolverParametersModule | Subroutine | Set the value of the max iterations. |
SetParametersThreshold | SolverParametersModule | Subroutine | Set the value of the threshold. |
SetPoolSparsity | MatrixMemoryPoolModule | Interface | |
SetTriplet | TripletModule | Interface | |
SetTripletAt | TripletListModule | Interface | |
ShiftTripletList | TripletListModule | Interface | |
SignFunction | SignSolversModule | Subroutine | Computes the matrix sign function. |
Sine | TrigonometrySolversModule | Subroutine | Compute the sine of a matrix. |
SnapMatrixToSparsityPattern | MatrixConversionModule | Subroutine | Some codes use a fixed sparsity pattern for a matrix instead of filtering small values. Using this routine, the matrix is filled to have the same pattern as the second matrix argument. Zeros of the sparsity pattern are left in, whereas values outside the sparsity are removed. This can faciliate conversion between formats. |
SolverParameters_t | SolverParametersModule | Interface | |
SortTripletList | TripletListModule | Interface | |
SplitMatrix | SMatrixModule | Interface | |
SplitMatrix | DMatrixModule | Interface | |
SplitMatrixColumns | SMatrixModule | Interface | |
SplitMatrixToLocalBlocks | PSMatrixModule | Interface | |
SplitProcessGrid | ProcessGridModule | Subroutine | Given a process grid, this splits it into two grids of even size |
SquareRoot | SquareRootSolversModule | Subroutine | Compute the square root of a matrix. |
StartTimer | TimerModule | Subroutine | Start the clock running for a given timer. |
StopTimer | TimerModule | Subroutine | Stop the clock for a given timer. |
SymmetrizeTripletList | TripletListModule | Interface | |
TestReduceDataRequest | MatrixReduceModule | Function | Test if a request for the data of the matrices is complete. |
TestReduceInnerRequest | MatrixReduceModule | Function | Test if a request for the inner indices of the matrices is complete. |
TestReduceSizeRequest | MatrixReduceModule | Function | Test if a request for the size of the matrices is complete. |
TransposeMatrix | SMatrixModule | Interface | |
TransposeMatrix | DMatrixModule | Interface | |
TransposeMatrix | PSMatrixModule | Interface | |
TripletList_c | TripletListModule | Interface | |
TripletList_r | TripletListModule | Interface | |
TRS2 | DensityMatrixSolversModule | Subroutine | Compute the density matrix from a Hamiltonian using the TRS2 method. Based on the TRS2 algorithm presented in \cite niklasson2002. |
TRS4 | DensityMatrixSolversModule | Subroutine | Compute the density matrix from a Hamiltonian using the TRS4 method. Based on the TRS4 algorithm presented in \cite niklasson2002 |
UndoPermuteMatrix | LoadBalancerModule | Subroutine | Undo a permutation applied to a matrix. |
UnpackCholesky | CholeskyModule | Interface | |
WriteElement | LoggingModule | Interface | |
WriteHeader | LoggingModule | Subroutine | Write out a header to the log. |
WriteListElement | LoggingModule | Interface | |
WriteMatrixToBinary | PSMatrixModule | Interface | |
WriteMatrixToMatrixMarket | PSMatrixModule | Interface | |
WriteMMLine | MatrixMarketModule | Interface | |
WriteMMLine_f | MatrixMarketModule | Subroutine | Write a single line that would correspond to a matrix market entry. |
WriteMMLine_ff | MatrixMarketModule | Subroutine | Write a single line that would correspond to a matrix market entry. |
WriteMMLine_ii | MatrixMarketModule | Subroutine | Write a single line that would correspond to a matrix market entry. |
WriteMMLine_iif | MatrixMarketModule | Subroutine | Write a single line that would correspond to a matrix market entry. |
WriteMMLine_iiff | MatrixMarketModule | Subroutine | Write a single line that would correspond to a matrix market entry. |
WriteMMSize | MatrixMarketModule | Subroutine | Write the line describing the size of the matrix |