N
AG Library Manual, Mark 30.3
Interfaces:
FL
CL
CPP
AD
PY
MB
N
AG CL Interface Introduction
F01 (Matop) Chapter Contents
F01 (Matop) Chapter Introduction
f01vg:
FL
CL
CPP
AD
PY
MB
N
AG CL Interface
f01vgc (dtfttr)
Keyword Search:
N
AG Library Manual, Mark 30.3
Interfaces:
FL
CL
CPP
AD
PY
MB
N
AG CL Interface Introduction
F01 (Matop) Chapter Contents
F01 (Matop) Chapter Introduction
f01vg:
FL
CL
CPP
AD
PY
MB
▸
▿
Contents
1
Purpose
2
Specification
3
Description
4
References
5
Arguments
6
Error Indicators and Warnings
7
Accuracy
8
Parallelism and Performance
9
Further Comments
▸
▿
10
Example
10.1
Program Text
10.2
Program Data
10.3
Program Results
Copyright
N
AG 2024
Settings help
CL Name Style:
Short (
a00aac
)
Long (
impl_details
)
Full (
nag_info_impl_details
)
1
Purpose
f01vgc
unpacks a real triangular matrix, stored in a Rectangular Full Packed (RFP) format array, to a full format array.
2
Specification
copy
#include <nag.h>
void
f01vgc
(
Nag_OrderType
order
,
Nag_RFP_Store
transr
,
Nag_UploType
uplo
,
Integer
n
,
const double
ar
[],
double
a
[],
Integer
pda
,
NagError *
fail
)
The function may be called by the names:
f01vgc
,
nag_matop_dtfttr
or
nag_dtfttr
.
3
Description
f01vgc
unpacks a real
n
×
n
triangular matrix
A
, stored in RFP format to conventional storage in a full format array. This function is intended for possible use in conjunction with functions from
Chapters
F06
,
F07
and
F16
where some functions that use triangular matrices store them in RFP format. The RFP storage format is described in
Section 3.4.3
in the
F07
Chapter Introduction.
4
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
5
Arguments
1:
order
–
Nag_OrderType
Input
On entry
: the
order
argument specifies the two-dimensional storage scheme being used, i.e., row-major ordering or column-major ordering. C language defined storage is specified by
order
=
Nag_RowMajor
. See
Section 3.1.3
in the Introduction to the
N
AG Library CL Interface for a more detailed explanation of the use of this argument.
Constraint
:
order
=
Nag_RowMajor
or
Nag_ColMajor
.
2:
transr
–
Nag_RFP_Store
Input
On entry
: specifies whether the normal RFP representation of
A
or its transpose is stored.
transr
=
Nag_RFP_Normal
The RFP representation of the matrix
A
is stored.
transr
=
Nag_RFP_Trans
The transpose of the RFP representation of the matrix
A
is stored.
Constraint
:
transr
=
Nag_RFP_Normal
or
Nag_RFP_Trans
.
3:
uplo
–
Nag_UploType
Input
On entry
: specifies whether
A
is upper or lower triangular.
uplo
=
Nag_Upper
A
is upper triangular.
uplo
=
Nag_Lower
A
is lower triangular.
Constraint
:
uplo
=
Nag_Upper
or
Nag_Lower
.
4:
n
–
Integer
Input
On entry
:
n
, the order of the matrix
A
.
Constraint
:
n
≥
0
.
5:
ar
[
n
×
(
n
+
1
)
/
2
]
–
const double
Input
On entry
: the upper or lower
n
×
n
triangular matrix
A
(as specified by
uplo
) in either normal or transposed RFP format (as specified by
transr
). The storage format is described in
Section 3.4.3
in the
F07
Chapter Introduction.
6:
a
[
dim
]
–
double
Output
Note:
the dimension,
dim
, of the array
a
must be at least
pda
×
n
.
On exit
: the triangular matrix
A
.
If
order
=
Nag_ColMajor
,
A
i
j
is stored in
a
[
(
j
-
1
)
×
pda
+
i
-
1
]
.
If
order
=
Nag_RowMajor
,
A
i
j
is stored in
a
[
(
i
-
1
)
×
pda
+
j
-
1
]
.
If
uplo
=
Nag_Upper
,
A
is upper triangular and the elements of the array below the diagonal are not set.
If
uplo
=
Nag_Lower
,
A
is lower triangular and the elements of the array above the diagonal are not set.
7:
pda
–
Integer
Input
On entry
: the stride separating row or column elements (depending on the value of
order
) of the matrix
A
in the array
a
.
Constraint
:
pda
≥
max
(
1
,
n
)
.
8:
fail
–
NagError *
Input/Output
The
N
AG error argument (see
Section 7
in the Introduction to the
N
AG Library CL Interface).
6
Error Indicators and Warnings
NE_ALLOC_FAIL
Dynamic memory allocation failed.
See
Section 3.1.2
in the Introduction to the
N
AG Library CL Interface for further information.
NE_BAD_PARAM
On entry, argument
⟨
value
⟩
had an illegal value.
NE_INT
On entry,
n
=
⟨
value
⟩
.
Constraint:
n
≥
0
.
NE_INT_2
On entry,
pda
=
⟨
value
⟩
and
n
=
⟨
value
⟩
.
Constraint:
pda
≥
max
(
1
,
n
)
.
NE_INTERNAL_ERROR
An internal error has occurred in this function. Check the function call and any array sizes. If the call is correct then please contact
N
AG
for assistance.
See
Section 7.5
in the Introduction to the
N
AG Library CL Interface for further information.
NE_NO_LICENCE
Your licence key may have expired or may not have been installed correctly.
See
Section 8
in the Introduction to the
N
AG Library CL Interface for further information.
7
Accuracy
Not applicable.
8
Parallelism and Performance
Background information to multithreading can be found in the
Multithreading
documentation.
f01vgc
is not threaded in any implementation.
9
Further Comments
None.
10
Example
This example reads in a triangular matrix in RFP format and unpacks it to full format.
10.1
Program Text
Program Text (f01vgce.c)
10.2
Program Data
Program Data (f01vgce.d)
10.3
Program Results
Program Results (f01vgce.r)
N
AG Library Manual, Mark 30.3
Interfaces:
FL
CL
CPP
AD
PY
MB
N
AG CL Interface Introduction
F01 (Matop) Chapter Contents
F01 (Matop) Chapter Introduction
f01vg:
FL
CL
CPP
AD
PY
MB
Copyright
N
AG 2024