annotate +blockmatrix/multiply.m @ 1015:9b7fcd5e4480 feature/advectionRV

Debug ResidualViscosity - Pass exact time derivative to RungeKuttaExteriorRV and use that for evaluating the residual - Start bootstrapping from later time level with higher order bdf
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Thu, 06 Dec 2018 17:03:22 +0100
parents 288138d9586d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
388
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 function C = multiply(A, B)
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 [n_a, m_a] = size(A);
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 [n_b, m_b] = size(B);
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 assert(m_a == n_b, 'Dimensions do not agree.')
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 C = cell(n_a, m_b);
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 for i = 1:n_a
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 for j = 1:m_b
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 C{i,j} = sparse(size(A{i,1},1), size(B{1,j},2));
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 for k = 1:n_b
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 C{i,j} = C{i,j} + A{i,k}*B{k,j};
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 end
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 end
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 end
288138d9586d Add function to multiply blockmatrices.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 end