From 94da049a53423a9aca04d8376b75347ca7eadcbe Mon Sep 17 00:00:00 2001 From: Calvin Date: Tue, 26 Mar 2013 13:21:36 -0400 Subject: moved FEAST Libraries --- FEAST/MIToolbox/cmi.m | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 FEAST/MIToolbox/cmi.m (limited to 'FEAST/MIToolbox/cmi.m') diff --git a/FEAST/MIToolbox/cmi.m b/FEAST/MIToolbox/cmi.m new file mode 100644 index 0000000..30e4bb0 --- /dev/null +++ b/FEAST/MIToolbox/cmi.m @@ -0,0 +1,31 @@ +function output = cmi(X,Y,Z) +%function output = cmi(X,Y,Z) +%X, Y & Z can be matrices which are converted into a joint variable +%before computation +% +%expects variables to be column-wise +% +%returns the mutual information between X and Y conditioned on Z, I(X;Y|Z) + +if nargin == 3 + if (size(X,2)>1) + mergedFirst = MIToolboxMex(3,X); + else + mergedFirst = X; + end + if (size(Y,2)>1) + mergedSecond = MIToolboxMex(3,Y); + else + mergedSecond = Y; + end + if (size(Z,2)>1) + mergedThird = MIToolboxMex(3,Z); + else + mergedThird = Z; + end + [output] = MIToolboxMex(8,mergedFirst,mergedSecond,mergedThird); +elseif nargin == 2 + output = mi(X,Y); +else + output = 0; +end -- cgit v1.2.3