# NAG Library Routine Document

## 1Purpose

f06tff performs the matrix-copy operation
 $B←A$
where $A$ and $B$ are $m$ by $n$ complex general or trapezoidal matrices.

## 2Specification

Fortran Interface
 Subroutine f06tff ( m, n, a, lda, b, ldb)
 Integer, Intent (In) :: m, n, lda, ldb Complex (Kind=nag_wp), Intent (In) :: a(lda,*) Complex (Kind=nag_wp), Intent (Inout) :: b(ldb,*) Character (1), Intent (In) :: matrix
#include <nagmk26.h>
 void f06tff_ (const char *matrix, const Integer *m, const Integer *n, const Complex a[], const Integer *lda, Complex b[], const Integer *ldb, const Charlen length_matrix)

None.

None.

## 5Arguments

1:     $\mathbf{matrix}$ – Character(1)Input
On entry: the matrix type.
${\mathbf{matrix}}=\text{'G'}$
General matrix.
${\mathbf{matrix}}=\text{'U'}$
Upper trapezoidal matrix (upper triangular if $m=n$).
${\mathbf{matrix}}=\text{'L'}$
Lower trapezoidal matrix (lower triangular if $m=n$).
Constraint: ${\mathbf{matrix}}=\text{'G'}$, $\text{'U'}$ or $\text{'L'}$.
2:     $\mathbf{m}$ – IntegerInput
On entry: $m$, the number of rows of the matrices $A$ and $B$.
Constraint: ${\mathbf{m}}\ge 0$.
3:     $\mathbf{n}$ – IntegerInput
On entry: $n$, the number of columns of the matrices $A$ and $B$.
Constraint: ${\mathbf{n}}\ge 0$.
4:     $\mathbf{a}\left({\mathbf{lda}},*\right)$ – Complex (Kind=nag_wp) arrayInput
Note: the second dimension of the array a must be at least ${\mathbf{n}}$.
On entry: the $m$ by $n$ general or trapezoidal matrix $A$.
• If ${\mathbf{matrix}}=\text{'U'}$, $A$ is upper trapezoidal and the elements of the array below the diagonal are not referenced.
• If ${\mathbf{matrix}}=\text{'L'}$, $A$ is lower trapezoidal and the elements of the array above the diagonal are not referenced.
5:     $\mathbf{lda}$ – IntegerInput
On entry: the first dimension of the array a as declared in the (sub)program from which f06tff is called.
Constraint: ${\mathbf{lda}}\ge \mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,{\mathbf{m}}\right)$.
6:     $\mathbf{b}\left({\mathbf{ldb}},*\right)$ – Complex (Kind=nag_wp) arrayOutput
Note: the second dimension of the array b must be at least ${\mathbf{n}}$.
On exit: the $m$ by $n$ general or trapezoidal matrix $B$.
• If ${\mathbf{matrix}}=\text{'U'}$, $B$ is upper trapezoidal and the elements of the array below the diagonal are not referenced.
• If ${\mathbf{matrix}}=\text{'L'}$, $B$ is lower trapezoidal and the elements of the array above the diagonal are not referenced.
7:     $\mathbf{ldb}$ – IntegerInput
On entry: the first dimension of the array b as declared in the (sub)program from which f06tff is called.
Constraint: ${\mathbf{ldb}}\ge \mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,{\mathbf{m}}\right)$.

None.

Not applicable.

## 8Parallelism and Performance

f06tff is not threaded in any implementation.