PDF version (NAG web site
, 64-bit version, 64-bit version)
NAG Toolbox: nag_matop_ztrttf (f01vf)
Purpose
nag_matop_ztrttf (f01vf) copies a complex triangular matrix, stored in a full format array, to a Rectangular Full Packed (RFP) format array.
Syntax
Description
nag_matop_ztrttf (f01vf) packs a complex
by
triangular matrix
, stored conventionally in a full format array, into RFP format. This function is intended for possible use in conjunction with functions from
Chapters F07 and
F16 where some functions that use triangular matrices store them in RFP format.
The RFP storage format is described in
Rectangular Full Packed (RFP) Storage in the F07 Chapter Introduction.
References
Gustavson F G, Waśniewski J, Dongarra J J and Langou J (2010) Rectangular full packed format for Cholesky's algorithm: factorization, solution, and inversion ACM Trans. Math. Software 37, 2
Parameters
Compulsory Input Parameters
- 1:
– string (length ≥ 1)
-
Specifies whether the normal RFP representation of
or its conjugate transpose is stored.
- The RFP representation of the matrix is stored.
- The conjugate transpose of the RFP representation of the matrix is stored.
Constraint:
or .
- 2:
– string (length ≥ 1)
-
Specifies whether
is upper or lower triangular.
- is upper triangular.
- is lower triangular.
Constraint:
or .
- 3:
– complex array
-
The first dimension of the array
a must be at least
.
The second dimension of the array
a must be at least
.
The triangular matrix
.
- If , is upper triangular and the elements of the array below the diagonal are not referenced.
- If , is lower triangular and the elements of the array above the diagonal are not referenced.
Optional Input Parameters
- 1:
– int64int32nag_int scalar
-
Default:
the first dimension of the array
a.
, the order of the matrix .
Constraint:
.
Output Parameters
- 1:
– complex array
-
The upper or lower
by
triangular matrix
(as specified by
uplo) in either normal or transposed RFP format (as specified by
transr). The storage format is described in
Rectangular Full Packed (RFP) Storage in the F07 Chapter Introduction.
- 2:
– int64int32nag_int scalar
unless the function detects an error (see
Error Indicators and Warnings).
Error Indicators and Warnings
-
If , argument had an illegal value. An explanatory message is output, and execution of the program is terminated.
Accuracy
Not applicable.
Further Comments
None.
Example
This example reads in a triangular matrix and copies it to RFP format.
Open in the MATLAB editor:
f01vf_example
function f01vf_example
fprintf('f01vf example results\n\n');
uplo = 'u';
transr = 'n';
a = [1.1000 + 1.1000i, 1.2000 + 1.2000i, 1.3000 + 1.3000i, 1.4000 + 1.4000i;
0, 2.2000 + 2.2000i, 2.3000 + 2.3000i, 2.4000 + 2.4000i;
0, 0, 3.3000 + 3.3000i, 3.4000 + 3.4000i;
0, 0, 0, 4.4000 + 4.4000i];
fprintf('\n');
[ifail] = x04db(uplo, 'n', a, 'b', 'f5.2', 'Unpacked matrix a:', 'i', ...
'i', int64(80), int64(0));
[ar, info] = f01vf(transr, uplo, a);
fprintf('\n');
[ifail] = x04db('g', 'x', ar, 'b', 'f5.2', 'RFP Packed Array ar:', 'i', ...
'n', int64(80), int64(0));
n = int64(size(a,1));
k = int64(n/2);
q = n - k;
if transr=='N' || transr=='n'
lar1 = 2*k + 1;
lar2 = q;
else
lar1 = q;
lar2 = 2*k + 1;
end
ar = reshape(ar,lar1,lar2);
fprintf('\n');
[ifail] = x04db('g', 'x', ar, 'b', 'f5.2', ...
'RFP Packed Array ar (graphical representation):', 'i', ...
'i', int64(80), int64(0), 'm', lar1, 'n', lar2);
f01vf example results
Unpacked matrix a:
1 2 3 4
1 ( 1.10, 1.10) ( 1.20, 1.20) ( 1.30, 1.30) ( 1.40, 1.40)
2 ( 2.20, 2.20) ( 2.30, 2.30) ( 2.40, 2.40)
3 ( 3.30, 3.30) ( 3.40, 3.40)
4 ( 4.40, 4.40)
RFP Packed Array ar:
1 ( 1.30, 1.30)
2 ( 2.30, 2.30)
3 ( 3.30, 3.30)
4 ( 1.10,-1.10)
5 ( 1.20,-1.20)
6 ( 1.40, 1.40)
7 ( 2.40, 2.40)
8 ( 3.40, 3.40)
9 ( 4.40, 4.40)
10 ( 2.20,-2.20)
RFP Packed Array ar (graphical representation):
1 2
1 ( 1.30, 1.30) ( 1.40, 1.40)
2 ( 2.30, 2.30) ( 2.40, 2.40)
3 ( 3.30, 3.30) ( 3.40, 3.40)
4 ( 1.10,-1.10) ( 4.40, 4.40)
5 ( 1.20,-1.20) ( 2.20,-2.20)
PDF version (NAG web site
, 64-bit version, 64-bit version)
© The Numerical Algorithms Group Ltd, Oxford, UK. 2009–2015