summaryrefslogtreecommitdiff
path: root/kalman_init.awk
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--kalman_init.awk22
1 files changed, 5 insertions, 17 deletions
diff --git a/kalman_init.awk b/kalman_init.awk
index 331d99a..f1dcac4 100644
--- a/kalman_init.awk
+++ b/kalman_init.awk
@@ -1,4 +1,4 @@
-#!/usr/bin/awk
+#!/usr/bin/awk -f
### kalman.awk
# kalman csv experiemnt
@@ -14,10 +14,7 @@ BEGIN {
NR == 1 {
header_nf = NF
for (n=1; n<=NF; n++) {
- if ($n !~ number)
- header[n] = "d" $n
- else
- header[n] = "col_" n
+ ($n !~ number) ? header[n] = "d" $n : header[n] = "col_" n
}
}
@@ -34,19 +31,13 @@ NF != 0 {
diff[n] = $n - last[n]
diff2[n] = 0.5*($n - 2.0*last[n] + last2[n])
sum[n] = $n + last[n] + last2[n]
- if (count[n])
- mean[n] = sum[n]/count[n]
- else
- mean[n] = sum[n]
+ (count[n]) ? mean[n] = sum[n]/count[n] : mean[n] = sum[n]
delta[n] = $n - mean[n]
delta2[n] = delta[n]*delta[n]
sum_delta[n] = delta[n] + delta_last[n] + delta_last2[n]
sum_delta2[n] = delta2[n] + delta2_last[n] + delta2_last2[n]
- if (count[n] > 1)
- var[n] = sum_delta2[n]/(count[n] - 1)
- else
- var[n] = 0
+ (count[n] > 1) ? var[n] = sum_delta2[n]/(count[n] - 1) : var[n] = 0
if (count[n]) {
meas_err[n] = sqrt(var[n]/count[n])
@@ -57,10 +48,7 @@ NF != 0 {
count[m,n]++
sum_xy[m,n] += 1
delta_xy[m,n] = delta[m]*delta[n]
- if (count[m,n] > 1)
- meas_cov[m,n] = delta[m]*delta[n]/(count[m,n] - 1)
- else
- meas_cov[m,n] = 0
+ (count[m,n] > 1) ? meas_cov[m,n] = delta[m]*delta[n]/(count[m,n] - 1) : meas_cov[m,n] = 0
est_err_last_cov[m,n] = 1
print meas_cov[m,n], est_err_last_cov[m,n]
}