MFEM  v3.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | List of all members
mfem::STable Class Reference

#include <table.hpp>

Inheritance diagram for mfem::STable:
[legend]
Collaboration diagram for mfem::STable:
[legend]

Public Member Functions

 STable (int dim, int connections_per_row=3)
 Creates table with fixed number of connections. More...
 
int operator() (int i, int j) const
 
int Push (int i, int j)
 
 ~STable ()
 Destroys STable. More...
 
- Public Member Functions inherited from mfem::Table
 Table ()
 Creates an empty table. More...
 
 Table (int dim, int connections_per_row=3)
 Create a table with a fixed number of connections. More...
 
 Table (int nrows, int *partitioning)
 
void MakeI (int nrows)
 Next 7 methods are used together with the default constructor. More...
 
void AddAColumnInRow (int r)
 
void AddColumnsInRow (int r, int ncol)
 
void MakeJ ()
 
void AddConnection (int r, int c)
 
void AddConnections (int r, const int *c, int nc)
 
void ShiftUpI ()
 
void SetSize (int dim, int connections_per_row)
 Set the size and the number of connections for the table. More...
 
void SetDims (int rows, int nnz)
 
int Size () const
 Returns the number of TYPE I elements. More...
 
int Size_of_connections () const
 
int operator() (int i, int j) const
 
void GetRow (int i, Array< int > &row) const
 Return row i in array row (the Table must be finalized) More...
 
int RowSize (int i) const
 
const int * GetRow (int i) const
 
int * GetRow (int i)
 
int * GetI ()
 
int * GetJ ()
 
const int * GetI () const
 
const int * GetJ () const
 
void SetIJ (int *newI, int *newJ, int newsize=-1)
 
int Push (int i, int j)
 
void Finalize ()
 
int Width () const
 Returns the number of TYPE II elements (after Finalize() is called). More...
 
void LoseData ()
 Call this if data has been stolen. More...
 
void Print (std::ostream &out=std::cout, int width=4) const
 Prints the table to stream out. More...
 
void PrintMatlab (std::ostream &out) const
 
void Save (std::ostream &out) const
 
void Copy (Table &copy) const
 
void Swap (Table &other)
 
void Clear ()
 
 ~Table ()
 Destroys Table. More...
 

Additional Inherited Members

- Protected Attributes inherited from mfem::Table
int size
 size is the number of TYPE I elements. More...
 
int * I
 
int * J
 

Detailed Description

Data type STable. STable is similar to Table, but it's for symmetric connectivity, i.e. TYPE I is equivalent to TYPE II. In the first dimension we put the elements with smaller index.

Definition at line 144 of file table.hpp.

Constructor & Destructor Documentation

mfem::STable::STable ( int  dim,
int  connections_per_row = 3 
)

Creates table with fixed number of connections.

Definition at line 425 of file table.cpp.

mfem::STable::~STable ( )
inline

Destroys STable.

Definition at line 163 of file table.hpp.

Member Function Documentation

int mfem::STable::operator() ( int  i,
int  j 
) const

Returns index of the connection between element i of TYPE I and element j of TYPE II. If there is no connection between element i and element j established in the table, then the return value is -1.

Definition at line 429 of file table.cpp.

int mfem::STable::Push ( int  i,
int  j 
)

Establish connection between element i and element j in the table. The return value is the index of the connection. It returns -1 if it fails to establish the connection. Possibilities are there is not enough memory on row i to establish connection to j, an attempt to establish new connection after calling Finalize().

Definition at line 437 of file table.cpp.


The documentation for this class was generated from the following files: