FEI Version of the Day
|ProcEqns *||deepCopy ()|
|std::vector< int > &||procsPtr ()|
|std::vector< int > &||eqnsPerProcPtr ()|
|std::vector< std::vector< int > * > &||procEqnNumbersPtr ()|
|std::vector< std::vector< int > * > &||procEqnLengthsPtr ()|
|void||addEqn (int eqnNumber, int proc)|
|void||addEqn (int eqnNumber, int eqnLength, int proc)|
|void||setProcEqnLengths (int *eqnNumbers, int *eqnLengths, int len)|
Internal implementation class. A class for keeping equation numbers grouped according to processor. This is useful when a set of equations is to be exchanged among processors. This class holds a table of equation numbers, and optionally a companion table with the lengths of those equations, organized such that each row of the table contains equations that are associated with a remote processor. (They are to be sent to that proc, or they are to be received from that proc.) A list of those processors is also maintained, of course.
Usage of this class is intended to consist of adding equations and associated processors using the addEqn member, and then later retrieving the list of processors and the associated table (list of lists) of equations, and their lengths (if length data was supplied).
|ProcEqns * ProcEqns::deepCopy||(||)|
|void ProcEqns::setProcEqnLengths||(||int *||eqnNumbers,|
Replace the 'procEqnLengthsPtr()' table with these lengths. There is a large potential for user error here. The number of equation/length pairs being provided here should equal the total number of equations already identified to this object. The internal table of lengths will be destroyed if it already exists, and replaced by this incoming data.
|eqnNumbers||Equations for which lengths are being provided. These equations must already have been identified and associated with procs.|
|len||The number of equations and lengths.|