annotate +sbp/Upwind.m @ 238:5f75d7094983 feature/beams

grid: Fixed returns of funcToXXX
author Jonatan Werpers <jonatan@werpers.com>
date Thu, 28 Jul 2016 11:45:02 +0200
parents c56437d097de
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
52
4f5a65f49035 Fixed the upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 47
diff changeset
1 classdef Upwind < sbp.OpSet
47
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 properties
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 norms % Struct containing norm matrices such as H,Q, M
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 boundary % Struct contanging vectors for boundry point approximations
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 derivatives % Struct containging differentiation operators
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 borrowing % Struct with borrowing limits for different norm matrices
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 m % Number of grid points.
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 h % Step size
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 methods
52
4f5a65f49035 Fixed the upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 47
diff changeset
12 function obj = Upwind(m,h,order)
47
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13
119
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
14 switch order
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
15 case 2
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
16 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind2(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
17 case 3
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
18 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind3(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
19 case 4
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
20 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind4(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
21 case 5
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
22 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind5(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
23 case 6
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
24 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind6(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
25 case 7
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
26 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind7(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
27 case 8
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
28 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind8(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
29 case 9
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
30 [H, HI, Dp, Dm, e_1, e_m] = sbp.upwind9(m,h);
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
31 otherwise
c56437d097de I added remaining upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 52
diff changeset
32 error('Invalid operator order %d.',order);
47
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
33 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
34
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35 obj.h = h;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
36 obj.m = m;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
37
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
38 obj.norms.H = H;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
39 obj.norms.HI = HI;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
40
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
41 obj.boundary.e_1 = e_1;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
42 obj.boundary.e_m = e_m;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
43
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
44 obj.derivatives.Dp = Dp;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
45 obj.derivatives.Dm = Dm;
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
46 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
47 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
48
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
49 methods (Static)
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
50 function lambda = smallestGrid(obj)
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
51 error('Not implmented')
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
52 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
53 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
54 end
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
55
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
56
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
57
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
58
ebd25e5a481a Added upwind operators.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
59