Mercurial > repos > public > sbplib
diff +multiblock/DiffOp.m @ 233:b8ee5212f651 feature/beams
multiblock: Added a function to return number of points in each block for a mbGrid. Fixed a bug in DiffOp.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 12 Jul 2016 17:08:15 +0200 |
parents | 5df8d20281fe |
children | 0fc1de5cd85b |
line wrap: on
line diff
--- a/+multiblock/DiffOp.m Tue Jul 12 16:32:36 2016 +0200 +++ b/+multiblock/DiffOp.m Tue Jul 12 17:08:15 2016 +0200 @@ -50,7 +50,8 @@ % Build the differentiation matrix - D = cell(nBlocks, nBlocks); + obj.blockmatrixDiv = {grid.Ns, grid.Ns}; + D = blockmatrix.zero(obj.blockmatrixDiv); for i = 1:nBlocks D{i,i} = obj.diffOps{i}.D; end @@ -64,16 +65,15 @@ [ii, ij] = obj.diffOps{i}.interface(intf{1}, obj.diffOps{j}, intf{2}); D{i,i} = D{i,i} + ii; - D{i,j} = ij; + D{i,j} = D{i,j} + ij; [jj, ji] = obj.diffOps{j}.interface(intf{2}, obj.diffOps{i}, intf{1}); D{j,j} = D{j,j} + jj; - D{j,i} = ji; + D{j,i} = D{j,i} + ji; end end obj.D = blockmatrix.toMatrix(D); - obj.blockmatrixDiv = blockmatrix.getDivision(D); function [getHand, getParam] = parseInput(doHand, grid, doParam) if ~isa(grid, 'multiblock.Grid')