The Set_Values_ELL_Matrix procedure sets the values for the ELL Matrix. It may be called five different ways.
The single value form for Set_Value replaces a single matrix entry. If this form is used, then the same number of procedure calls must take place on every processor - this is required by internal verification calls that use global communication. If a different number of values are to be set on each processor, then one of the other calling forms should be used.
The single value form for Set_Value (also with an assignment interface) sets all the values of a matrix to a single scalar value (often zero). It only sets values which have nonzero column indices, and it does not alter the sparsity pattern or any of the other matrix internals.
The vector form, with the Rows variable, can be used to replace selected values, one per row, in the ELL Matrix. Only the rows listed in the Rows vector are modified.
The array form, with the Rows variable, can be used to replace selected values in the ELL Matrix. Only the rows listed in the Rows vector are modified.
The array form, without the Rows variable, can be used to replace the entire contents of the ELL Matrix. The Values and Columns variables must be exactly the same size as the ELL Matrix variables with the same name.
|ELLM = Value||,|
|call Set_Value (ELLM, Value)||,|
|call Set_Values (ELLM, Value, Row, Column, Global)||,|
|call Set_Values (ELLM, Values, Rows, Columns, Global)||or|
|call Set_Values (ELLM, Values, Columns)|
|Values||A vector or an array of values for the ELL_Matrix object. If the Rows variable is not present, Values must be the same size as the ELL_Matrix. Otherwise, Values must have a size smaller than or equal to the size of the ELL_Matrix.|
|Rows||An integer vector of rows to be replaced. This vector may be sized smaller than the row size of the ELL_Matrix object. [optional]|
|Columns||A vector or an array of columns for the ELL_Matrix object. If the Rows variable is not present, Columns must be the same size as the ELL_Matrix. Otherwise, Columns must have a size smaller than or equal to the size of the ELL_Matrix.|
|Global||A toggle between using global or local (on this PE) indices for the Rows variables. Default is true (use global). Note that the Columns variables are always global.|
|Value||A single value for the ELL_Matrix object. The Row and Column variables must be present for the Set_Values form of the procedure. For the Set_Value or assignment form, all matrix values are set to the same input value (often zero).|
|Row||The row index for the Value variable.|
|Column||The column index for the Value variable.|
|ELLM||The ELL_Matrix object to be set.|
The Set_Values_ELL_Matrix code listing contains additional documentation.
Michael L. Hall