NAG CL Interface
c06gsc (withdraw_​convert_​herm2complex_​sep)

Note: this function is deprecated and will be withdrawn at Mark 30.2. There is no replacement for this function.
Settings help

CL Name Style:


1 Purpose

c06gsc takes m Hermitian sequences, each containing n data values, and forms the real and imaginary parts of the m corresponding complex sequences.

2 Specification

#include <nag.h>
void  c06gsc (Integer m, Integer n, const double x[], double u[], double v[], NagError *fail)
The function may be called by the names: c06gsc, nag_sum_withdraw_convert_herm2complex_sep or nag_multiple_hermitian_to_complex.

3 Description

This is a utility function for use in conjunction with c06fpc and c06fqc.

4 References

None.

5 Arguments

1: m Integer Input
On entry: the number of Hermitian sequences, m , to be converted into complex form.
Constraint: m1 .
2: n Integer Input
On entry: the number of data values, n , in each sequence.
Constraint: n1 .
3: x[m×n] const double Input
On entry: the m data sequences must be stored in x consecutively. If the n data values z j p are written as x j p + iy j p , p = 1 , 2 , , m , then for 0 j n / 2 , x j p is contained in x[ (p-1) × n + j ] , and for 1 j (n-1) / 2 , y j p is contained in x[ (p-1) × n + n-j ] .
4: u[m×n] double Output
5: v[m×n] double Output
On exit: the real and imaginary parts of the m sequences of length n are stored consecutively in u and v respectively. If the real parts of the p th sequence are denoted by x j p , for j=0,1,,n - 1, then the mn elements of the array u contain the values
x 0 1 , x 1 1 , , x n-1 1 , x 0 2 , x 1 2 , , x n-1 2 , , x 0 m , x 1 m , , x n-1 m .  
The imaginary parts must be ordered similarly in v.
6: fail NagError * Input/Output
The NAG error argument (see Section 7 in the Introduction to the NAG Library CL Interface).

6 Error Indicators and Warnings

NE_INT_ARG_LT
On entry, m=value.
Constraint: m1.
On entry, n=value.
Constraint: n1.

7 Accuracy

Exact.

8 Parallelism and Performance

Background information to multithreading can be found in the Multithreading documentation.
c06gsc is not threaded in any implementation.

9 Further Comments

None.

10 Example

This program reads in sequences of real data values which are assumed to be Hermitian sequences of complex data stored in Hermitian form. The sequences are then expanded into full complex form using c06gsc and printed.

10.1 Program Text

Program Text (c06gsce.c)

10.2 Program Data

Program Data (c06gsce.d)

10.3 Program Results

Program Results (c06gsce.r)