GRASS 8 Programmer's Manual
8.6.0dev(2026)-ddeab64dbf
Loading...
Searching...
No Matches
otrma.c
Go to the documentation of this file.
1
/* otrma.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
#include <
stdlib.h
>
9
void
otrma
(
double
*c,
double
*a,
double
*
b
,
int
n)
10
{
11
double
z, *
q0
, *p, *s, *
t
;
12
13
int
i,
j
, k;
14
15
q0
= (
double
*)
calloc
(n,
sizeof
(
double
));
16
for
(i = 0; i < n; ++i, ++c) {
17
for
(
j
= 0,
t
=
b
;
j
< n; ++
j
) {
18
for
(k = 0, s = a + i * n, z = 0.; k < n; ++k)
19
z += *
t
++ * *s++;
20
q0
[
j
] = z;
21
}
22
for
(
j
= 0, p = c,
t
= a;
j
< n; ++
j
, p += n) {
23
for
(k = 0, s =
q0
, z = 0.; k < n; ++k)
24
z += *
t
++ * *s++;
25
*p = z;
26
}
27
}
28
free
(
q0
);
29
}
AMI_STREAM
Definition
ami_stream.h:153
otrma
void otrma(double *c, double *a, double *b, int n)
Definition
otrma.c:9
b
double b
Definition
r_raster.c:39
t
double t
Definition
r_raster.c:39
free
void free(void *)
stdlib.h
lib
external
ccmath
otrma.c
Generated on Sun Apr 5 2026 06:59:55 for GRASS 8 Programmer's Manual by
1.9.8