comparison +blockmatrix/getDivision.m @ 886:8894e9c49e40 feature/timesteppers

Merge with default for latest changes
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Thu, 15 Nov 2018 16:36:21 -0800
parents a5f1b0267dba
children
comparison
equal deleted inserted replaced
816:b5e5b195da1e 886:8894e9c49e40
1 function div = getDivision(bm)
2 if ~blockmatrix.isBlockmatrix(bm)
3 error('blockmatrix:getDivision:NotABlockmatrix', 'Input is not a blockmatrix');
4 end
5
6 if isempty(bm)
7 div = {[],[]};
8 return
9 end
10
11 div = {row_height(bm),col_width(bm)};
12 end
13
14
15 function m = col_width(C)
16 m = zeros(1,size(C,2));
17 for j = 1:size(C,2)
18 for i = 1:size(C,1)
19 if isNullMatrix(C{i,j})
20 continue
21 end
22 m(j) = size(C{i,j},2);
23 end
24 end
25 end
26
27 function n = row_height(C)
28 n = zeros(1,size(C,1));
29 for i = 1:size(C,1)
30 for j = 1:size(C,2)
31 if isNullMatrix(C{i,j})
32 continue
33 end
34 n(i) = size(C{i,j},1);
35 end
36 end
37 end
38
39 function b = isNullMatrix(A)
40 [n, m] = size(A);
41 b = n == 0 && m == 0;
42 end