about summary refs log tree commit diff
path: root/sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m
diff options
context:
space:
mode:
Diffstat (limited to 'sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m')
-rw-r--r--sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m15
1 files changed, 15 insertions, 0 deletions
diff --git a/sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m b/sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m
new file mode 100644
index 00000000..246729ae
--- /dev/null
+++ b/sourcecodes/bnt-master/BNT/potentials/@cpot/enter_cts_evidence_pot.m
@@ -0,0 +1,15 @@
+function pot = enter_cts_evidence_pot(pot, Y, y)
+% function pot = enter_cts_evidence_pot(pot, Y, y) (cpot)
+
+ns = sparse(1, max(pot.domain));
+ns(pot.domain) = pot.sizes;
+
+X = mysetdiff(pot.domain, Y);
+[hx, hy, KXX, KXY, KYX, KYY] = partition_matrix_vec(pot.h, pot.K, X, Y, ns);
+pot.g = pot.g + hy'*y - 0.5*y'*KYY*y;
+if ~isempty(X)
+  pot.h = hx - KXY*y;
+  pot.K = KXX;
+end
+
+pot.sizes(find_equiv_posns(Y,pot.domain)) = 0;