Procedure | Location | Procedure Type | Description |
---|---|---|---|
ActivateLogger | LoggingModule | Subroutine | Activate the logger. |
AddSparseVectors | SVectorModule | Interface | |
AppendToTripletList | TripletListModule | 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. |
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. |
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. |
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 | |
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 | |
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. |
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. |
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 | |
ReduceAndComposeMatrixCleanup | MatrixReduceModule | Interface | |
ReduceAndComposeMatrixData | MatrixReduceModule | Interface | |
ReduceAndComposeMatrixSizes | 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. |
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. |
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. |
WriteCitation | LoggingModule | Subroutine | Write out a citation element. |
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 |