aboutsummaryrefslogtreecommitdiff
path: root/octave/Mat2Hrows.m
diff options
context:
space:
mode:
Diffstat (limited to 'octave/Mat2Hrows.m')
-rw-r--r--octave/Mat2Hrows.m28
1 files changed, 28 insertions, 0 deletions
diff --git a/octave/Mat2Hrows.m b/octave/Mat2Hrows.m
new file mode 100644
index 0000000..6cbd1d5
--- /dev/null
+++ b/octave/Mat2Hrows.m
@@ -0,0 +1,28 @@
+function [Hrows Hcols] = Mat2Hrows(HRA, RAmode);
+
+H = full(HRA);
+[Nr Nc] = size(H);
+
+if nargin==1, RAmode = 1; end;
+
+if RAmode==1
+ H= H(:,1:Nc-Nr);
+ [Nr Nc] = size(H);
+end
+
+Max_colwt = max(sum(H));
+Max_rowwt = max(sum(H'));
+Hcols = zeros(Nc, Max_colwt);
+Hrows = zeros(Nr, Max_rowwt);
+
+for i = 1:Nr
+ nz = find(H(i,:));
+ Hrows(i,1:length(nz)) = nz;
+end
+
+H = H';
+for i = 1:Nc
+ nz = find(H(i,:));
+ Hcols(i,1:length(nz)) = nz;
+end
+