Class : AbstractArchitecture
~AbstractArchitecture :
prototype: virtual ~AbstractArchitecture ()
description:destructor
GetTypicalRange :
prototype: virtual void GetTypicalRange (long& , long& maxIndex )
description:get typical range of indices on which the local architecture acts
input parameters:
minIndex = reference on the minimum index on which the local architecture can act
maxIndex = reference on the maximum index on which the local architecture can act (= minIndex is the
architecture doesn't support this feature)
GetNewRealVector :
prototype: virtual RealVector* GetNewRealVector ()
description:get a new real vector with memory alloaction depending on the architecture
input parameters:
return value: pointer to the requested vector (zero if an error occurs)
GetNewRealVector :
prototype: virtual RealVector* GetNewRealVector (long , bool zeroFlag = false )
description:get a new real vector with memory alloaction depending on the architecture
input parameters:
dimension = dimension of the requested vector
zeroFlag = true if all vector entries has to be set to zero
return value: pointer to the requested vector (zero if an error occurs)
GetNewComplexVector :
prototype: virtual ComplexVector* GetNewComplexVector ()
description:get a new complex vector with memory alloaction depending on the architecture
input parameters:
return value: pointer to the requested vector (zero if an error occurs)
GetNewComplexVector :
prototype: virtual ComplexVector* GetNewComplexVector (long , bool zeroFlag = false )
description:get a new complex vector with memory alloaction depending on the architecture
input parameters:
dimension = dimension of the requested vector
zeroFlag = true if all vector entries has to be set to zero
return value: pointer to the requested vector (zero if an error occurs)
Multiply :
prototype: virtual void Multiply (AbstractHamiltonian* , Vector& , Vector& vDestination )
description:multiply a vector by an hamiltonian and store the result in another vector
input parameters:
hamiltonian = pointer to the hamiltonian to use
vSource = vector to multiply
vDestination = vector where result has to be stored
ExecuteOperation :
prototype: virtual bool ExecuteOperation (AbstractArchitectureOperation* operation )
description:execute an architecture-dependent operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (VectorHamiltonianMultiplyOperation* operation )
description:execute an architecture-dependent vector hamiltonian multiplication operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (AddRealLinearCombinationOperation* operation )
description:execute an architecture-dependent add real linear combination operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (AddComplexLinearCombinationOperation* operation )
description:execute an architecture-dependent add complex linear combination operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (MultipleRealScalarProductOperation* operation )
description:execute an architecture-dependent multiple real scalar product operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (MultipleComplexScalarProductOperation* operation )
description:execute an architecture-dependent multiple complex scalar product operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (MatrixMatrixMultiplyOperation* operation )
description:execute an architecture-dependent matrix matrix multiplication operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
ExecuteOperation :
prototype: virtual bool ExecuteOperation (AbstractPrecalculationOperation* operation )
description:execute an architecture-dependent abstract hamiltonian precalculation operation
input parameters:
operation = pointer to the operation to execute
return value: true if operation has been completed successfully
New :
prototype: friend Type*& New (AbstractArchitecture& , Type*& , unsigned long size )
description:request a given amount of memory for an array of Type element
input parameters:
architecture = reference on the architecture to which memory will be asked
pointer = reference on pointer that will be used for the memory allocation
size = number of elements of type Type
return value: reference on the pointer
Delete :
prototype: friend void Delete (AbstractArchitecture& , Type*& pointer )
description:delete an array that has been requested by the New function
input parameters:
architecture = reference on the architecture to which memory has been asked
pointer = reference on pointer that of the memory allocation
Back to index.