aboutsummaryrefslogtreecommitdiff
path: root/octave/Mat2Hrows.m
diff options
context:
space:
mode:
authorAuthor Name <[email protected]>2023-07-07 12:20:59 +0930
committerDavid Rowe <[email protected]>2023-07-07 12:29:06 +0930
commitac7c48b4dee99d4c772f133d70d8d1b38262fcd2 (patch)
treea2d0ace57a9c0e2e5b611c4987f6fed1b38b81e7 /octave/Mat2Hrows.m
shallow zip-file copy from codec2 e9d726bf20
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
+