NeoPZ
|
Implements Sparse Structural Matrices. Structural Matrix. More...
#include <TPZSSpStructMatrix.h>
Public Member Functions | |
TPZSymetricSpStructMatrix (TPZCompMesh *) | |
virtual TPZMatrix< STATE > * | Create () |
virtual TPZMatrix< STATE > * | SetupMatrixData (TPZStack< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex) |
virtual TPZMatrix< STATE > * | CreateAssemble (TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) |
virtual TPZStructMatrix * | Clone () |
Public Member Functions inherited from TPZStructMatrixOR | |
TPZStructMatrixOR () | |
TPZStructMatrixOR (TPZCompMesh *) | |
TPZStructMatrixOR (TPZAutoPointer< TPZCompMesh > cmesh) | |
TPZStructMatrixOR (const TPZStructMatrixOR ©) | |
virtual | ~TPZStructMatrixOR () |
virtual TPZMatrix< STATE > * | CreateAssemble (TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface, unsigned numthreads_assemble, unsigned numthreads_decompose) |
virtual void | Assemble (TPZMatrix< STATE > &mat, TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) override |
Assemble the global system of equations into the matrix which has already been created. More... | |
virtual void | Assemble (TPZMatrix< STATE > &mat, TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface, unsigned numthreads_assemble, unsigned numthreads_decompose) |
virtual void | Assemble (TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) override |
Assemble the global right hand side. More... | |
int | ClassId () const override |
Define the class id associated with the class. More... | |
void | Read (TPZStream &buf, void *context) override |
read objects from the stream More... | |
void | Write (TPZStream &buf, int withclassid) const override |
Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More... | |
Public Member Functions inherited from TPZStructMatrixBase | |
virtual void | SetMesh (TPZCompMesh *) |
virtual void | SetMesh (TPZAutoPointer< TPZCompMesh >) |
virtual void | FilterEquations (TPZVec< int64_t > &origindex, TPZVec< int64_t > &destindex) const |
Filter out the equations which are out of the range. More... | |
virtual void | SetMaterialIds (const std::set< int > &materialids) |
Set the set of material ids which will be considered when assembling the system. More... | |
virtual void | SetNumThreads (int n) |
virtual int | GetNumThreads () const |
virtual void | SetEquationRange (int64_t mineq, int64_t maxeq) |
virtual bool | HasRange () const |
Verify if a range has been specified. More... | |
virtual TPZEquationFilter & | EquationFilter () |
access method for the equation filter More... | |
virtual int64_t | NReducedEquations () const |
number of equations after applying the filter More... | |
virtual TPZCompMesh * | Mesh () const |
Access method for the mesh pointer. More... | |
virtual bool | ShouldCompute (int matid) const |
Establish whether the element should be computed. More... | |
virtual const std::set< int > & | MaterialIds () |
Returns the material ids. More... | |
int | ClassId () const override |
Define the class id associated with the class. More... | |
void | Read (TPZStream &buf, void *context) override |
read objects from the stream More... | |
void | Write (TPZStream &buf, int withclassid) const override |
Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More... | |
virtual | ~TPZStructMatrixBase () |
Public Member Functions inherited from TPZSavable | |
TPZSavable () | |
virtual | ~TPZSavable () |
virtual std::list< std::map< std::string, uint64_t > > | VersionHistory () const |
virtual std::pair< std::string, uint64_t > | Version () const |
virtual bool | Compare (TPZSavable *copy, bool override=false) |
Compares the object for identity with the object pointed to, eventually copy the object. More... | |
virtual bool | Compare (TPZSavable *copy, bool override=false) const |
Compares the object for identity with the object pointed to, eventually copy the object. More... | |
Public Member Functions inherited from TPZRegisterClassId | |
template<typename T > | |
TPZRegisterClassId (int(T::*)() const) | |
TPZRegisterClassId ()=default | |
Static Public Member Functions | |
static int | main () |
Static Public Member Functions inherited from TPZSavable | |
static std::set< TPZRestoreClassBase * > & | RestoreClassSet () |
This static function guarantees that the gMap object is available when needed. More... | |
static std::map< int, TPZRestore_t > & | ClassIdMap () |
This static function guarantees that the gMap object is available when needed. More... | |
static std::pair< std::string, uint64_t > | NeoPZVersion () |
static void | Register (TPZRestoreClassBase *restore) |
static void | RegisterClassId (int classid, TPZRestore_t fun) |
static TPZSavable * | CreateInstance (const int &classId) |
Private Member Functions | |
TPZSymetricSpStructMatrix () | |
Private Attributes | |
friend | TPZPersistenceManager |
Additional Inherited Members | |
Protected Member Functions inherited from TPZStructMatrixOR | |
virtual void | Serial_Assemble (TPZMatrix< STATE > &mat, TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) |
Assemble the global system of equations into the matrix which has already been created. More... | |
virtual void | Serial_Assemble (TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) |
Assemble the global right hand side. More... | |
virtual void | MultiThread_Assemble (TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) |
Assemble the global right hand side. More... | |
virtual void | MultiThread_Assemble (TPZMatrix< STATE > &mat, TPZFMatrix< STATE > &rhs, TPZAutoPointer< TPZGuiInterface > guiInterface) |
Assemble the global system of equations into the matrix which has already been created. More... | |
Protected Member Functions inherited from TPZStructMatrixBase | |
TPZStructMatrixBase () | |
TPZStructMatrixBase (const TPZStructMatrixBase &) | |
TPZStructMatrixBase (TPZCompMesh *) | |
TPZStructMatrixBase (TPZAutoPointer< TPZCompMesh >) | |
Protected Attributes inherited from TPZStructMatrixBase | |
TPZCompMesh * | fMesh |
Pointer to the computational mesh from which the matrix will be generated. More... | |
TPZAutoPointer< TPZCompMesh > | fCompMesh |
Autopointer control of the computational mesh. More... | |
TPZEquationFilter | fEquationFilter |
Object which will determine which equations will be assembled. More... | |
std::set< int > | fMaterialIds |
Set of material ids to be considered. It is a private attribute. More... | |
int | fNumThreads |
Number of threads in Assemble process. More... | |
Implements Sparse Structural Matrices. Structural Matrix.
Definition at line 23 of file TPZSSpStructMatrix.h.
TPZSymetricSpStructMatrix::TPZSymetricSpStructMatrix | ( | TPZCompMesh * | mesh | ) |
Definition at line 266 of file TPZSSpStructMatrix.cpp.
|
private |
Definition at line 262 of file TPZSSpStructMatrix.cpp.
|
virtual |
Reimplemented from TPZStructMatrixOR.
Definition at line 34 of file TPZSSpStructMatrix.cpp.
|
virtual |
Longhin implementation
Reimplemented from TPZStructMatrixOR.
Definition at line 77 of file TPZSSpStructMatrix.cpp.
|
virtual |
Reimplemented from TPZStructMatrixBase.
Definition at line 37 of file TPZSSpStructMatrix.cpp.
References TPZSYsmpMatrix< TVar >::ComputeDiagonal(), LOGPZ_DEBUG, TPZFMatrix< TVar >::Redim(), TPZTimer::start(), and TPZTimer::stop().
|
static |
Used only for testing
Definition at line 272 of file TPZSSpStructMatrix.cpp.
References TPZAdmChunkVector< T, EXP >::AllocateNewElement(), TPZCompMesh::AutoBuild(), TPZGeoMesh::BuildConnectivity(), TPZMaterial::CreateBC(), TPZGeoMesh::CreateGeoElement(), DebugStop, EQuadrilateral, TPZCompMesh::InitializeBlock(), TPZCompMesh::InsertMaterialObject(), TPZGeoMesh::NodeVec(), TPZAnalysis::Run(), TPZCompMesh::SetDefaultOrder(), TPZStepSolver< TVar >::SetJacobi(), TPZMat2dLin::SetMaterial(), TPZAnalysis::SetSolver(), and TPZAnalysis::SetStructuralMatrix().
|
virtual |
Creates a element graph
converts an element graph structure into a node graph structure those vectors have size ZERO !!!
vector sizes
Definition at line 90 of file TPZSSpStructMatrix.cpp.
References DebugStop, TPZVec< T >::NElements(), TPZSYsmpMatrix< TVar >::SetData(), and TPZVec< T >::size().
Referenced by PYBIND11_MODULE().
|
private |
Definition at line 46 of file TPZSSpStructMatrix.h.