blob: e28696a133e22b0271aed49470250d7ac8aea2a2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# IN_RMS -- Compute rms of points which have a non-zero weight.
real procedure in_rmsr (y, fit, wts, npts)
real y[npts] # function
real fit[npts] # fit
real wts[npts] # weights
int npts # number of points
int i, ndata
real resid, rms
begin
rms = real (0.0)
ndata = 0
do i = 1, npts {
if (wts[i] == real (0.0))
next
resid = y[i] - fit[i]
rms = rms + resid * resid
ndata = ndata + 1
}
if (ndata > 0)
rms = sqrt (rms / ndata)
else
rms = real (0.0)
return (rms)
end
|