GRASS 8 Programmer's Manual
8.5.0(2026)-8d6ceba290
Toggle main menu visibility
Loading...
Searching...
No Matches
c_ave.c
Go to the documentation of this file.
1
#include <grass/gis.h>
2
#include <grass/raster.h>
3
4
void
c_ave
(DCELL *result, DCELL *values,
int
n,
const
void
*closure G_UNUSED)
5
{
6
DCELL sum;
7
int
count
;
8
int
i;
9
10
sum = 0.0;
11
count
= 0;
12
13
for
(i = 0; i < n; i++) {
14
if
(Rast_is_d_null_value(&values[i]))
15
continue
;
16
17
sum += values[i];
18
count
++;
19
}
20
21
if
(
count
== 0)
22
Rast_set_d_null_value(result, 1);
23
else
24
*result = sum /
count
;
25
}
26
27
void
w_ave
(DCELL *result, DCELL (*values)[2],
int
n,
28
const
void
*closure G_UNUSED)
29
{
30
DCELL sum;
31
DCELL
count
;
32
int
i;
33
34
sum = 0.0;
35
count
= 0.0;
36
37
for
(i = 0; i < n; i++) {
38
if
(Rast_is_d_null_value(&values[i][0]))
39
continue
;
40
41
sum += values[i][0] * values[i][1];
42
count
+= values[i][1];
43
}
44
45
if
(
count
== 0)
46
Rast_set_d_null_value(result, 1);
47
else
48
*result = sum /
count
;
49
}
w_ave
void w_ave(DCELL *result, DCELL(*values)[2], int n, const void *closure)
Definition
c_ave.c:27
c_ave
void c_ave(DCELL *result, DCELL *values, int n, const void *closure)
Definition
c_ave.c:4
count
int count
stats
c_ave.c
Generated on
for GRASS 8 Programmer's Manual by
1.17.0