comparison +scheme/Utux.m @ 1100:27aaf8646a80 feature/timesteppers

Merge with default
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 09 Apr 2019 21:48:30 +0200
parents 0c504a21432d
children 433c89bf19e0
comparison
equal deleted inserted replaced
1099:d4fe089b2c4a 1100:27aaf8646a80
70 penalty = -obj.Hi*tau*neighbour_scheme.e_l'; 70 penalty = -obj.Hi*tau*neighbour_scheme.e_l';
71 end 71 end
72 72
73 end 73 end
74 74
75 % Returns the boundary operator op for the boundary specified by the string boundary.
76 % op -- string
77 % boundary -- string
78 function o = getBoundaryOperator(obj, op, boundary)
79 assertIsMember(op, {'e'})
80 assertIsMember(boundary, {'l', 'r'})
81
82 o = obj.([op, '_', boundary]);
83 end
84
85 % Returns square boundary quadrature matrix, of dimension
86 % corresponding to the number of boundary points
87 %
88 % boundary -- string
89 % Note: for 1d diffOps, the boundary quadrature is the scalar 1.
90 function H_b = getBoundaryQuadrature(obj, boundary)
91 assertIsMember(boundary, {'l', 'r'})
92
93 H_b = 1;
94 end
95
75 function N = size(obj) 96 function N = size(obj)
76 N = obj.m; 97 N = obj.m;
77 end 98 end
78 99
79 end 100 end
80
81 methods(Static)
82 % Calculates the matrices needed for the inteface coupling between boundary bound_u of scheme schm_u
83 % and bound_v of scheme schm_v.
84 % [uu, uv, vv, vu] = inteface_coupling(A,'r',B,'l')
85 function [uu, uv, vv, vu] = interface_coupling(schm_u,bound_u,schm_v,bound_v)
86 [uu,uv] = schm_u.interface(bound_u,schm_v,bound_v);
87 [vv,vu] = schm_v.interface(bound_v,schm_u,bound_u);
88 end
89 end
90 end 101 end