Mercurial > repos > public > sbplib
comparison +multiblock/DiffOp.m @ 202:e2fefb6f0746 feature/grids
multiblock.DiffOp: Fleshed out boundary_condition() a bit more
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 14 Jun 2016 15:45:28 +0200 |
parents | 38f203f00f3a |
children | 39b7dcb2c724 |
comparison
equal
deleted
inserted
replaced
201:38f203f00f3a | 202:e2fefb6f0746 |
---|---|
100 % Splits a matrix operator into a cell-matrix of matrix operators for | 100 % Splits a matrix operator into a cell-matrix of matrix operators for |
101 % each grid. | 101 % each grid. |
102 ops = sparse2cell(op, obj.NNN); | 102 ops = sparse2cell(op, obj.NNN); |
103 end | 103 end |
104 | 104 |
105 function m = boundary_condition(obj,boundary,type,data) | 105 % Creates the closere and penalty matrix for a given boundary condition, |
106 % boundary -- the name of the boundary on the form [id][name] where | |
107 % id is the number of a block and name is the name of a | |
108 % boundary of that block example: 1s or 3w | |
109 function [closure, penalty] = boundary_condition(obj,boundary,type,data) | |
110 I = boundary(1) | |
111 name = boundary(2:end); | |
112 | |
113 [c, p] = obj.diffOps{I}.boundary_condition(name, type, data); | |
114 end | |
115 | |
116 function [closure, penalty] = interface(obj,boundary,neighbour_scheme,neighbour_boundary) | |
106 | 117 |
107 end | 118 end |
108 | |
109 function m = interface(obj,boundary,neighbour_scheme,neighbour_boundary) | |
110 | |
111 end | |
112 | |
113 | 119 |
114 % Size returns the number of degrees of freedom | 120 % Size returns the number of degrees of freedom |
115 function N = size(obj) | 121 function N = size(obj) |
116 N = 0; | 122 N = 0; |
117 for i = 1:length(obj.diffOps) | 123 for i = 1:length(obj.diffOps) |