GRASS 8 Programmer's Manual
8.5.0(2026)-8d6ceba290
Toggle main menu visibility
Loading...
Searching...
No Matches
utrncm.c
Go to the documentation of this file.
1
/* utrncm.c CCMATH mathematics library source code.
2
*
3
* Copyright (C) 2000 Daniel A. Atkinson All rights reserved.
4
* This code may be redistributed under the terms of the GNU library
5
* public license (LGPL). ( See the lgpl.license file for details.)
6
* ------------------------------------------------------------------------
7
*/
8
9
#include <stdlib.h>
10
#include "
ccmath.h
"
11
12
void
utrncm
(
Cpx
*cm,
Cpx
*a,
Cpx
*
b
,
int
n)
13
{
14
Cpx
z, *q0, *p, *s, *
t
;
15
16
int
i, j, k;
17
18
q0 = (
Cpx
*)calloc(n,
sizeof
(
Cpx
));
19
for
(i = 0; i < n; ++i, ++cm) {
20
for
(j = 0,
t
=
b
; j < n; ++j) {
21
z.
re
= z.
im
= 0.;
22
for
(k = 0, s = a + i * n; k < n; ++k, ++s, ++
t
) {
23
z.
re
+=
t
->re * s->re +
t
->im * s->im;
24
z.
im
+=
t
->im * s->re -
t
->re * s->im;
25
}
26
q0[j] = z;
27
}
28
for
(j = 0, p = cm,
t
= a; j < n; ++j, p += n) {
29
z.
re
= z.
im
= 0.;
30
for
(k = 0, s = q0; k < n; ++k, ++
t
, ++s) {
31
z.
re
+=
t
->re * s->re -
t
->im * s->im;
32
z.
im
+=
t
->im * s->re +
t
->re * s->im;
33
}
34
*p = z;
35
}
36
}
37
free(q0);
38
}
ccmath.h
Cpx
struct complex Cpx
Definition
ccmath.h:41
b
double b
Definition
driver/set_window.c:5
t
double t
Definition
driver/set_window.c:5
complex::re
double re
Definition
ccmath.h:39
complex::im
double im
Definition
ccmath.h:39
utrncm
void utrncm(Cpx *cm, Cpx *a, Cpx *b, int n)
Definition
utrncm.c:12
external
ccmath
utrncm.c
Generated on
for GRASS 8 Programmer's Manual by
1.17.0