annotate +time/SBPInTimeImplicitFormulation.m @ 1031:2ef20d00b386 feature/advectionRV

For easier comparison, return both the first order and residual viscosity when evaluating the residual. Add the first order and residual viscosity to the state of the RungekuttaRV time steppers
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Thu, 17 Jan 2019 10:25:06 +0100
parents 5df7f99206b2
children 47e86b5270ad
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
460
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 classdef SBPInTimeImplicitFormulation < time.Timestepper
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 % The SBP in time method.
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 % Implemented for A*v_t = B*v + f(t), v(0) = v0
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 properties
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 A,B
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 f
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 k % total time step.
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 blockSize % number of points in each block
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 N % Number of components
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 order
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 nodes
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 M,K % System matrices
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 L,U,p,q % LU factorization of M
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18 e_T
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 % Time state
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21 t
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 v
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 n
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
26 methods
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
27 function obj = SBPInTimeImplicitFormulation(A, B, f, k, t0, v0, TYPE, order, blockSize)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
28
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
29 default_arg('TYPE','gauss');
461
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
30 default_arg('f',[]);
460
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
31
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
32 if(strcmp(TYPE,'gauss'))
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
33 default_arg('order',4)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
34 default_arg('blockSize',4)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35 else
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
36 default_arg('order', 8);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
37 default_arg('blockSize',time.SBPInTimeImplicitFormulation.smallestBlockSize(order,TYPE));
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
38 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
39
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
40 obj.A = A;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
41 obj.B = B;
461
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
42
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
43 if ~isempty(f)
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
44 obj.f = f;
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
45 else
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
46 obj.f = @(t)sparse(length(v0),1);
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
47 end
0b010f8de7cb Make f parameter optional.
Jonatan Werpers <jonatan@werpers.com>
parents: 460
diff changeset
48
460
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
49 obj.k = k;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
50 obj.blockSize = blockSize;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
51 obj.N = length(v0);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
52
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
53 obj.n = 0;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
54 obj.t = t0;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
55
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
56 %==== Build the time discretization matrix =====%
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
57 switch TYPE
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
58 case 'equidistant'
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
59 ops = sbp.D2Standard(blockSize,{0,obj.k},order);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
60 case 'optimal'
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
61 ops = sbp.D1Nonequidistant(blockSize,{0,obj.k},order);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
62 case 'minimal'
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
63 ops = sbp.D1Nonequidistant(blockSize,{0,obj.k},order,'minimal');
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
64 case 'gauss'
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
65 ops = sbp.D1Gauss(blockSize,{0,obj.k});
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
66 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
67
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
68 I = speye(size(A));
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
69 I_t = speye(blockSize,blockSize);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
70
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
71 D1 = kron(ops.D1, I);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
72 HI = kron(ops.HI, I);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
73 e_0 = kron(ops.e_l, I);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
74 e_T = kron(ops.e_r, I);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
75 obj.nodes = ops.x;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
76
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
77 % Convert to form M*w = K*v0 + f(t)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
78 tau = kron(I_t, A) * e_0;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
79 M = kron(I_t, A)*D1 + HI*tau*e_0' - kron(I_t, B);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
80
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
81 K = HI*tau;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
82
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
83 obj.M = M;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
84 obj.K = K;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
85 obj.e_T = e_T;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
86
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
87 % LU factorization
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
88 [obj.L,obj.U,obj.p,obj.q] = lu(obj.M, 'vector');
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
89
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
90 obj.v = v0;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
91 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
92
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
93 function [v,t] = getV(obj)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
94 v = obj.v;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
95 t = obj.t;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
96 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
97
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
98 function obj = step(obj)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
99 RHS = zeros(obj.blockSize*obj.N,1);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
100
601
5df7f99206b2 SBPInTimeImplicitFormulation: Fix bug in calculation of forcing function
Jonatan Werpers <jonatan@werpers.com>
parents: 462
diff changeset
101 for i = 1:obj.blockSize
462
7dbdf7390265 Fix bug in argument to f during time stepping
Jonatan Werpers <jonatan@werpers.com>
parents: 461
diff changeset
102 RHS((1 + (i-1)*obj.N):(i*obj.N)) = obj.f(obj.t + obj.nodes(i));
460
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
103 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
104
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
105 RHS = RHS + obj.K*obj.v;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
106
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
107 y = obj.L\RHS(obj.p);
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
108 z = obj.U\y;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
109
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
110 w = zeros(size(z));
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
111 w(obj.q) = z;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
112
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
113 obj.v = obj.e_T'*w;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
114
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
115 obj.t = obj.t + obj.k;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
116 obj.n = obj.n + 1;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
117 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
118 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
119
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
120 methods(Static)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
121 function N = smallestBlockSize(order,TYPE)
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
122 default_arg('TYPE','gauss')
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
123
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
124 switch TYPE
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
125 case 'gauss'
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
126 N = 4;
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
127 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
128 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
129 end
e0caae9ef6ed Add SBPinTime for linear DAE formulations (BUGS!)
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
130 end