annotate +sbp/+implementations/d4_variable_4.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 4b9e82eab88a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
1 function [H, HI, D1, D2, D4, e_l, e_r, M4, d2_l, d2_r, d3_l, d3_r, d1_l, d1_r] = d4_variable_4(m,h)
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
3 %%% 4:de ordn. SBP Finita differens %%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
4 %%% %%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
5 %%% H (Normen) %%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
6 %%% D1=H^(-1)Q (approx f?rsta derivatan) %%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
7 %%% D2 (approx andra derivatan) %%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
8 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
9
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
10
267
f7ac3cd6eeaa Sparsified all implementation files, removed all matlab warnings, fixed small bugs on minimum grid points.
Martin Almquist <martin.almquist@it.uu.se>
parents: 266
diff changeset
11 BP = 6;
266
bfa130b7abf6 Added error message for too few grid points to all implementation files.
Martin Almquist <martin.almquist@it.uu.se>
parents: 261
diff changeset
12 if(m<2*BP)
bfa130b7abf6 Added error message for too few grid points to all implementation files.
Martin Almquist <martin.almquist@it.uu.se>
parents: 261
diff changeset
13 error(['Operator requires at least ' num2str(2*BP) ' grid points']);
bfa130b7abf6 Added error message for too few grid points to all implementation files.
Martin Almquist <martin.almquist@it.uu.se>
parents: 261
diff changeset
14 end
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
15
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
16 % Norm
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
17 Hv = ones(m,1);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
18 Hv(1:4) = [17/48 59/48 43/48 49/48];
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
19 Hv(m-3:m) = rot90(Hv(1:4),2);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
20 Hv = h*Hv;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
21 H = spdiag(Hv, 0);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
22 HI = spdiag(1./Hv, 0);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
23
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
24
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
25 % Boundary operators
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
26 e_l = sparse(m,1);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
27 e_l(1) = 1;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
28 e_r = rot90(e_l, 2);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
29
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
30 d1_l = sparse(m,1);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
31 d1_l(1:4) = 1/h*[-11/6 3 -3/2 1/3];
326
b19e142fcae1 Fixed bug in setting of boundary derivative.
Jonatan Werpers <jonatan@werpers.com>
parents: 315
diff changeset
32 d1_r = -rot90(d1_l, 2);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
33
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
34 d2_l = sparse(m,1);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
35 d2_l(1:4) = 1/h^2*[2 -5 4 -1];
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
36 d2_r = rot90(d2_l, 2);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
37
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
38 d3_l = sparse(m,1);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
39 d3_l(1:4) = 1/h^3*[-1 3 -3 1];
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
40 d3_r = -rot90(d3_l, 2);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
41
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
42
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
43 % First derivative SBP operator,
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
44 stencil = [1/12 -2/3 0 2/3 -1/12];
390
4b9e82eab88a Fix bug with D1 in D4Variable.
Jonatan Werpers <jonatan@werpers.com>
parents: 357
diff changeset
45 diags = -2:2;
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
46
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
47 Q_U = [
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
48 0 0.59e2/0.96e2 -0.1e1/0.12e2 -0.1e1/0.32e2;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
49 -0.59e2/0.96e2 0 0.59e2/0.96e2 0;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
50 0.1e1/0.12e2 -0.59e2/0.96e2 0 0.59e2/0.96e2;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
51 0.1e1/0.32e2 0 -0.59e2/0.96e2 0;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
52 ];
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
53
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
54 Q = stripeMatrix(stencil, diags, m);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
55 Q(1:4,1:4)=Q_U;
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
56 Q(m-3:m,m-3:m) = -rot90(Q_U, 2);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
57
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
58 D1 = HI*(Q - 1/2*e_l*e_l' + 1/2*e_r*e_r');
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
59
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
60
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
61 % Second derivative
315
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
62 M = sparse(m,m);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
63
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
64 scheme_width = 5;
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
65 scheme_radius = (scheme_width-1)/2;
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
66 r = (1+scheme_radius):(m-scheme_radius);
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
67
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
68 function D2 = D2_fun(c)
357
19495f126f06 Minor clean up of d4_variable_4.
Jonatan Werpers <jonatan@werpers.com>
parents: 329
diff changeset
69 Mm2 = c(r-2)/0.8e1 - c(r-1)/0.6e1 + c(r) /0.8e1 ;
19495f126f06 Minor clean up of d4_variable_4.
Jonatan Werpers <jonatan@werpers.com>
parents: 329
diff changeset
70 Mm1 = -c(r-2)/0.6e1 - c(r-1)/0.2e1 - c(r) /0.2e1 - c(r+1)/0.6e1 ;
19495f126f06 Minor clean up of d4_variable_4.
Jonatan Werpers <jonatan@werpers.com>
parents: 329
diff changeset
71 M0 = c(r-2)/2.4e1 + c(r-1)/1.2e0 + c(r)*0.3/0.4 + c(r+1)/1.2e0 + c(r+2)/2.4e1;
19495f126f06 Minor clean up of d4_variable_4.
Jonatan Werpers <jonatan@werpers.com>
parents: 329
diff changeset
72 Mp1 = -c(r-1)/0.6e1 - c(r) /0.2e1 - c(r+1)/0.2e1 - c(r+2)/0.6e1;
19495f126f06 Minor clean up of d4_variable_4.
Jonatan Werpers <jonatan@werpers.com>
parents: 329
diff changeset
73 Mp2 = c(r) /0.8e1 - c(r+1)/0.6e1 + c(r+2)/0.8e1;
315
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
74
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
75 M(r,:) = spdiags([Mm2 Mm1 M0 Mp1 Mp2],0:2*scheme_radius,length(r),m);
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
76
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
77 M(1:6,1:6) = [
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
78 0.12e2/0.17e2 * c(1) + 0.59e2/0.192e3 * c(2) + 0.27010400129e11/0.345067064608e12 * c(3) + 0.69462376031e11/0.2070402387648e13 * c(4) -0.59e2/0.68e2 * c(1) - 0.6025413881e10/0.21126554976e11 * c(3) - 0.537416663e9/0.7042184992e10 * c(4) 0.2e1/0.17e2 * c(1) - 0.59e2/0.192e3 * c(2) + 0.213318005e9/0.16049630912e11 * c(4) + 0.2083938599e10/0.8024815456e10 * c(3) 0.3e1/0.68e2 * c(1) - 0.1244724001e10/0.21126554976e11 * c(3) + 0.752806667e9/0.21126554976e11 * c(4) 0.49579087e8/0.10149031312e11 * c(3) - 0.49579087e8/0.10149031312e11 * c(4) -c(4)/0.784e3 + c(3)/0.784e3;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
79 -0.59e2/0.68e2 * c(1) - 0.6025413881e10/0.21126554976e11 * c(3) - 0.537416663e9/0.7042184992e10 * c(4) 0.3481e4/0.3264e4 * c(1) + 0.9258282831623875e16/0.7669235228057664e16 * c(3) + 0.236024329996203e15/0.1278205871342944e16 * c(4) -0.59e2/0.408e3 * c(1) - 0.29294615794607e14/0.29725717938208e14 * c(3) - 0.2944673881023e13/0.29725717938208e14 * c(4) -0.59e2/0.1088e4 * c(1) + 0.260297319232891e15/0.2556411742685888e16 * c(3) - 0.60834186813841e14/0.1278205871342944e16 * c(4) -0.1328188692663e13/0.37594290333616e14 * c(3) + 0.1328188692663e13/0.37594290333616e14 * c(4) -0.8673e4/0.2904112e7 * c(3) + 0.8673e4/0.2904112e7 * c(4);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
80 0.2e1/0.17e2 * c(1) - 0.59e2/0.192e3 * c(2) + 0.213318005e9/0.16049630912e11 * c(4) + 0.2083938599e10/0.8024815456e10 * c(3) -0.59e2/0.408e3 * c(1) - 0.29294615794607e14/0.29725717938208e14 * c(3) - 0.2944673881023e13/0.29725717938208e14 * c(4) c(1)/0.51e2 + 0.59e2/0.192e3 * c(2) + 0.13777050223300597e17/0.26218083221499456e17 * c(4) + 0.564461e6/0.13384296e8 * c(5) + 0.378288882302546512209e21/0.270764341349677687456e21 * c(3) c(1)/0.136e3 - 0.125059e6/0.743572e6 * c(5) - 0.4836340090442187227e19/0.5525802884687299744e19 * c(3) - 0.17220493277981e14/0.89177153814624e14 * c(4) -0.10532412077335e14/0.42840005263888e14 * c(4) + 0.1613976761032884305e19/0.7963657098519931984e19 * c(3) + 0.564461e6/0.4461432e7 * c(5) -0.960119e6/0.1280713392e10 * c(4) - 0.3391e4/0.6692148e7 * c(5) + 0.33235054191e11/0.26452850508784e14 * c(3);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
81 0.3e1/0.68e2 * c(1) - 0.1244724001e10/0.21126554976e11 * c(3) + 0.752806667e9/0.21126554976e11 * c(4) -0.59e2/0.1088e4 * c(1) + 0.260297319232891e15/0.2556411742685888e16 * c(3) - 0.60834186813841e14/0.1278205871342944e16 * c(4) c(1)/0.136e3 - 0.125059e6/0.743572e6 * c(5) - 0.4836340090442187227e19/0.5525802884687299744e19 * c(3) - 0.17220493277981e14/0.89177153814624e14 * c(4) 0.3e1/0.1088e4 * c(1) + 0.507284006600757858213e21/0.475219048083107777984e21 * c(3) + 0.1869103e7/0.2230716e7 * c(5) + c(6)/0.24e2 + 0.1950062198436997e16/0.3834617614028832e16 * c(4) -0.4959271814984644613e19/0.20965546238960637264e20 * c(3) - c(6)/0.6e1 - 0.15998714909649e14/0.37594290333616e14 * c(4) - 0.375177e6/0.743572e6 * c(5) -0.368395e6/0.2230716e7 * c(5) + 0.752806667e9/0.539854092016e12 * c(3) + 0.1063649e7/0.8712336e7 * c(4) + c(6)/0.8e1;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
82 0.49579087e8/0.10149031312e11 * c(3) - 0.49579087e8/0.10149031312e11 * c(4) -0.1328188692663e13/0.37594290333616e14 * c(3) + 0.1328188692663e13/0.37594290333616e14 * c(4) -0.10532412077335e14/0.42840005263888e14 * c(4) + 0.1613976761032884305e19/0.7963657098519931984e19 * c(3) + 0.564461e6/0.4461432e7 * c(5) -0.4959271814984644613e19/0.20965546238960637264e20 * c(3) - c(6)/0.6e1 - 0.15998714909649e14/0.37594290333616e14 * c(4) - 0.375177e6/0.743572e6 * c(5) 0.8386761355510099813e19/0.128413970713633903242e21 * c(3) + 0.2224717261773437e16/0.2763180339520776e16 * c(4) + 0.5e1/0.6e1 * c(6) + c(7)/0.24e2 + 0.280535e6/0.371786e6 * c(5) -0.35039615e8/0.213452232e9 * c(4) - c(7)/0.6e1 - 0.13091810925e11/0.13226425254392e14 * c(3) - 0.1118749e7/0.2230716e7 * c(5) - c(6)/0.2e1;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
83 -c(4)/0.784e3 + c(3)/0.784e3 -0.8673e4/0.2904112e7 * c(3) + 0.8673e4/0.2904112e7 * c(4) -0.960119e6/0.1280713392e10 * c(4) - 0.3391e4/0.6692148e7 * c(5) + 0.33235054191e11/0.26452850508784e14 * c(3) -0.368395e6/0.2230716e7 * c(5) + 0.752806667e9/0.539854092016e12 * c(3) + 0.1063649e7/0.8712336e7 * c(4) + c(6)/0.8e1 -0.35039615e8/0.213452232e9 * c(4) - c(7)/0.6e1 - 0.13091810925e11/0.13226425254392e14 * c(3) - 0.1118749e7/0.2230716e7 * c(5) - c(6)/0.2e1 0.3290636e7/0.80044587e8 * c(4) + 0.5580181e7/0.6692148e7 * c(5) + 0.5e1/0.6e1 * c(7) + c(8)/0.24e2 + 0.660204843e9/0.13226425254392e14 * c(3) + 0.3e1/0.4e1 * c(6);
315
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
84 ];
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
85
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
86 M(m-5:m,m-5:m) = [
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
87 c(m-7)/0.24e2 + 0.5e1/0.6e1 * c(m-6) + 0.5580181e7/0.6692148e7 * c(m-4) + 0.4887707739997e13/0.119037827289528e15 * c(m-3) + 0.3e1/0.4e1 * c(m-5) + 0.660204843e9/0.13226425254392e14 * c(m-2) + 0.660204843e9/0.13226425254392e14 * c(m-1) -c(m-6)/0.6e1 - 0.1618585929605e13/0.9919818940794e13 * c(m-3) - c(m-5)/0.2e1 - 0.1118749e7/0.2230716e7 * c(m-4) - 0.13091810925e11/0.13226425254392e14 * c(m-2) - 0.13091810925e11/0.13226425254392e14 * c(m-1) -0.368395e6/0.2230716e7 * c(m-4) + c(m-5)/0.8e1 + 0.48866620889e11/0.404890569012e12 * c(m-3) + 0.752806667e9/0.539854092016e12 * c(m-2) + 0.752806667e9/0.539854092016e12 * c(m-1) -0.3391e4/0.6692148e7 * c(m-4) - 0.238797444493e12/0.119037827289528e15 * c(m-3) + 0.33235054191e11/0.26452850508784e14 * c(m-2) + 0.33235054191e11/0.26452850508784e14 * c(m-1) -0.8673e4/0.2904112e7 * c(m-2) - 0.8673e4/0.2904112e7 * c(m-1) + 0.8673e4/0.1452056e7 * c(m-3) -c(m-3)/0.392e3 + c(m-2)/0.784e3 + c(m-1)/0.784e3;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
88 -c(m-6)/0.6e1 - 0.1618585929605e13/0.9919818940794e13 * c(m-3) - c(m-5)/0.2e1 - 0.1118749e7/0.2230716e7 * c(m-4) - 0.13091810925e11/0.13226425254392e14 * c(m-2) - 0.13091810925e11/0.13226425254392e14 * c(m-1) c(m-6)/0.24e2 + 0.5e1/0.6e1 * c(m-5) + 0.3896014498639e13/0.4959909470397e13 * c(m-3) + 0.8386761355510099813e19/0.128413970713633903242e21 * c(m-2) + 0.280535e6/0.371786e6 * c(m-4) + 0.3360696339136261875e19/0.171218627618178537656e21 * c(m-1) -c(m-5)/0.6e1 - 0.4959271814984644613e19/0.20965546238960637264e20 * c(m-2) - 0.375177e6/0.743572e6 * c(m-4) - 0.13425842714e11/0.33740880751e11 * c(m-3) - 0.193247108773400725e18/0.6988515412986879088e19 * c(m-1) -0.365281640980e12/0.1653303156799e13 * c(m-3) + 0.564461e6/0.4461432e7 * c(m-4) + 0.1613976761032884305e19/0.7963657098519931984e19 * c(m-2) - 0.198407225513315475e18/0.7963657098519931984e19 * c(m-1) -0.1328188692663e13/0.37594290333616e14 * c(m-2) + 0.2226377963775e13/0.37594290333616e14 * c(m-1) - 0.8673e4/0.363014e6 * c(m-3) c(m-3)/0.49e2 + 0.49579087e8/0.10149031312e11 * c(m-2) - 0.256702175e9/0.10149031312e11 * c(m-1);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
89 -0.368395e6/0.2230716e7 * c(m-4) + c(m-5)/0.8e1 + 0.48866620889e11/0.404890569012e12 * c(m-3) + 0.752806667e9/0.539854092016e12 * c(m-2) + 0.752806667e9/0.539854092016e12 * c(m-1) -c(m-5)/0.6e1 - 0.4959271814984644613e19/0.20965546238960637264e20 * c(m-2) - 0.375177e6/0.743572e6 * c(m-4) - 0.13425842714e11/0.33740880751e11 * c(m-3) - 0.193247108773400725e18/0.6988515412986879088e19 * c(m-1) c(m-5)/0.24e2 + 0.1869103e7/0.2230716e7 * c(m-4) + 0.507284006600757858213e21/0.475219048083107777984e21 * c(m-2) + 0.3e1/0.1088e4 * c(m) + 0.31688435395e11/0.67481761502e11 * c(m-3) + 0.27769176016102795561e20/0.712828572124661666976e21 * c(m-1) -0.125059e6/0.743572e6 * c(m-4) + c(m)/0.136e3 - 0.23099342648e11/0.101222642253e12 * c(m-3) - 0.4836340090442187227e19/0.5525802884687299744e19 * c(m-2) + 0.193950157930938693e18/0.5525802884687299744e19 * c(m-1) 0.260297319232891e15/0.2556411742685888e16 * c(m-2) - 0.59e2/0.1088e4 * c(m) - 0.106641839640553e15/0.1278205871342944e16 * c(m-1) + 0.26019e5/0.726028e6 * c(m-3) -0.1244724001e10/0.21126554976e11 * c(m-2) + 0.3e1/0.68e2 * c(m) + 0.752806667e9/0.21126554976e11 * c(m-1);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
90 -0.3391e4/0.6692148e7 * c(m-4) - 0.238797444493e12/0.119037827289528e15 * c(m-3) + 0.33235054191e11/0.26452850508784e14 * c(m-2) + 0.33235054191e11/0.26452850508784e14 * c(m-1) -0.365281640980e12/0.1653303156799e13 * c(m-3) + 0.564461e6/0.4461432e7 * c(m-4) + 0.1613976761032884305e19/0.7963657098519931984e19 * c(m-2) - 0.198407225513315475e18/0.7963657098519931984e19 * c(m-1) -0.125059e6/0.743572e6 * c(m-4) + c(m)/0.136e3 - 0.23099342648e11/0.101222642253e12 * c(m-3) - 0.4836340090442187227e19/0.5525802884687299744e19 * c(m-2) + 0.193950157930938693e18/0.5525802884687299744e19 * c(m-1) 0.564461e6/0.13384296e8 * c(m-4) + 0.470299699916357e15/0.952302618316224e15 * c(m-3) + 0.550597048646198778781e21/0.1624586048098066124736e22 * c(m-1) + c(m)/0.51e2 + 0.378288882302546512209e21/0.270764341349677687456e21 * c(m-2) -0.59e2/0.408e3 * c(m) - 0.29294615794607e14/0.29725717938208e14 * c(m-2) - 0.2234477713167e13/0.29725717938208e14 * c(m-1) - 0.8673e4/0.363014e6 * c(m-3) -0.59e2/0.3136e4 * c(m-3) - 0.13249937023e11/0.48148892736e11 * c(m-1) + 0.2e1/0.17e2 * c(m) + 0.2083938599e10/0.8024815456e10 * c(m-2);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
91 -0.8673e4/0.2904112e7 * c(m-2) - 0.8673e4/0.2904112e7 * c(m-1) + 0.8673e4/0.1452056e7 * c(m-3) -0.1328188692663e13/0.37594290333616e14 * c(m-2) + 0.2226377963775e13/0.37594290333616e14 * c(m-1) - 0.8673e4/0.363014e6 * c(m-3) 0.260297319232891e15/0.2556411742685888e16 * c(m-2) - 0.59e2/0.1088e4 * c(m) - 0.106641839640553e15/0.1278205871342944e16 * c(m-1) + 0.26019e5/0.726028e6 * c(m-3) -0.59e2/0.408e3 * c(m) - 0.29294615794607e14/0.29725717938208e14 * c(m-2) - 0.2234477713167e13/0.29725717938208e14 * c(m-1) - 0.8673e4/0.363014e6 * c(m-3) 0.9258282831623875e16/0.7669235228057664e16 * c(m-2) + 0.3481e4/0.3264e4 * c(m) + 0.228389721191751e15/0.1278205871342944e16 * c(m-1) + 0.8673e4/0.1452056e7 * c(m-3) -0.6025413881e10/0.21126554976e11 * c(m-2) - 0.59e2/0.68e2 * c(m) - 0.537416663e9/0.7042184992e10 * c(m-1);
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
92 -c(m-3)/0.392e3 + c(m-2)/0.784e3 + c(m-1)/0.784e3 c(m-3)/0.49e2 + 0.49579087e8/0.10149031312e11 * c(m-2) - 0.256702175e9/0.10149031312e11 * c(m-1) -0.1244724001e10/0.21126554976e11 * c(m-2) + 0.3e1/0.68e2 * c(m) + 0.752806667e9/0.21126554976e11 * c(m-1) -0.59e2/0.3136e4 * c(m-3) - 0.13249937023e11/0.48148892736e11 * c(m-1) + 0.2e1/0.17e2 * c(m) + 0.2083938599e10/0.8024815456e10 * c(m-2) -0.6025413881e10/0.21126554976e11 * c(m-2) - 0.59e2/0.68e2 * c(m) - 0.537416663e9/0.7042184992e10 * c(m-1) 0.3e1/0.3136e4 * c(m-3) + 0.27010400129e11/0.345067064608e12 * c(m-2) + 0.234566387291e12/0.690134129216e12 * c(m-1) + 0.12e2/0.17e2 * c(m);
315
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
93 ];
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
94
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
95 M = M/h;
329
bf801c3709be Bug fixes in operators.
Jonatan Werpers <jonatan@werpers.com>
parents: 326
diff changeset
96 D2 = HI*(-M - c(1)*e_l*d1_l' + c(m)*e_r*d1_r');
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
97 end
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
98 D2 = @D2_fun;
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
99
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
100
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
101 % Fourth derivative
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
102 stencil = [-1/6,2,-13/2, 28/3,-13/2,2,-1/6];
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
103 diags = -3:3;
267
f7ac3cd6eeaa Sparsified all implementation files, removed all matlab warnings, fixed small bugs on minimum grid points.
Martin Almquist <martin.almquist@it.uu.se>
parents: 266
diff changeset
104 M4 = stripeMatrix(stencil, diags, m);
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
105
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
106 M4_U = [
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
107 0.5762947e7/0.2316384e7 -0.6374287e7/0.1158192e7 0.573947e6/0.165456e6 -0.124637e6/0.289548e6 0.67979e5/0.2316384e7 -0.60257e5/0.1158192e7;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
108 -0.6374287e7/0.1158192e7 0.30392389e8/0.2316384e7 -0.2735053e7/0.289548e6 0.273109e6/0.165456e6 0.83767e5/0.1158192e7 0.245549e6/0.2316384e7;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
109 0.573947e6/0.165456e6 -0.2735053e7/0.289548e6 0.5266855e7/0.579096e6 -0.1099715e7/0.289548e6 0.869293e6/0.1158192e7 -0.10195e5/0.144774e6;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
110 -0.124637e6/0.289548e6 0.273109e6/0.165456e6 -0.1099715e7/0.289548e6 0.3259225e7/0.579096e6 -0.324229e6/0.72387e5 0.1847891e7/0.1158192e7;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
111 0.67979e5/0.2316384e7 0.83767e5/0.1158192e7 0.869293e6/0.1158192e7 -0.324229e6/0.72387e5 0.2626501e7/0.330912e6 -0.7115491e7/0.1158192e7;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
112 -0.60257e5/0.1158192e7 0.245549e6/0.2316384e7 -0.10195e5/0.144774e6 0.1847891e7/0.1158192e7 -0.7115491e7/0.1158192e7 0.21383077e8/0.2316384e7;
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
113 ];
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
114
312
9230c056a574 Fixed formatting.
Jonatan Werpers <jonatan@werpers.com>
parents: 311
diff changeset
115 M4(1:6,1:6) = M4_U;
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
116 M4(m-5:m,m-5:m) = rot90(M4_U, 2);
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
117 M4 = 1/h^3*M4;
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
118
314
88584b0cfba1 Corrections and clean up order 4
Jonatan Werpers <jonatan@werpers.com>
parents: 312
diff changeset
119 D4=HI*(M4 - e_l*d3_l'+e_r*d3_r' + d1_l*d2_l'-d1_r*d2_r');
261
6009f2712d13 Moved and renamned all implementations.
Martin Almquist <martin.almquist@it.uu.se>
parents:
diff changeset
120 end
315
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
121
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
122
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
123 % Alternatives for variable 2nd derivative
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
124 % % ALTERNATIVES %%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
125 % % for i=4:m-3
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
126 % % M(i,i-2:i+2)=[-c(i-1)/0.6e1 + c(i-2)/0.8e1 + c(i)/0.8e1 -c(i-2)/0.6e1 - c(i+1)/0.6e1 - c(i-1)/0.2e1 - c(i)/0.2e1 c(i-2)/0.24e2 + 0.5e1/0.6e1 * c(i-1) + 0.5e1/0.6e1 * c(i+1) + c(i+2)/0.24e2 + 0.3e1/0.4e1 * c(i) -c(i-1)/0.6e1 - c(i+2)/0.6e1 - c(i)/0.2e1 - c(i+1)/0.2e1 -c(i+1)/0.6e1 + c(i)/0.8e1 + c(i+2)/0.8e1;];
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
127 % % end
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
128 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
129 % % for i=4:m-3
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
130 % % M(i,i-2:i+2)= [
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
131 % % c(i-2)/0.8e1 - c(i-1)/0.6e1 + c(i) /0.8e1 ,
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
132 % % -c(i-2)/0.6e1 - c(i-1)/0.2e1 - c(i) /0.2e1 - c(i+1)/0.6e1 ,
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
133 % % c(i-2)/2.4e1 + c(i-1)/1.2e0 + c(i) * 0.3/0.4 + c(i+1)/1.2e0 + c(i+2)/2.4e1 ,
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
134 % % -c(i-1)/0.6e1 - c(i) /0.2e1 - c(i+1)/0.2e1 - c(i+2)/0.6e1 ,
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
135 % % c(i) /0.8e1 - c(i+1)/0.6e1 + c(i+2)/0.8e1 ,
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
136 % % ];
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
137 % % end
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
138 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
139 % Mm2 = c(r-2)/0.8e1 - c(r-1)/0.6e1 + c(r) /0.8e1 ;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
140 % Mm1 = -c(r-2)/0.6e1 - c(r-1)/0.2e1 - c(r) /0.2e1 - c(r+1)/0.6e1 ;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
141 % M0 = c(r-2)/2.4e1 + c(r-1)/1.2e0 + c(r) * 0.3/0.4 + c(r+1)/1.2e0 + c(r+2)/2.4e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
142 % Mp1 = -c(r-1)/0.6e1 - c(r) /0.2e1 - c(r+1)/0.2e1 - c(r+2)/0.6e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
143 % Mp2 = c(r) /0.8e1 - c(r+1)/0.6e1 + c(r+2)/0.8e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
144
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
145 % M(r,:) = spdiags([Mm2 Mm1 M0 Mp1 Mp2],0:2*scheme_radius,length(r),m);
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
146 % % M(r,:) = spdiags([Mm2 Mm1 M0 Mp1 Mp2],(-2:2)+scheme_radius,M(r,:)); % This is slower
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
147 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
148 % % %% Somthing is wrong here!!
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
149 % % Mm2 = c(r-2)/0.8e1 - c(r-1)/0.6e1 + c(r) /0.8e1 ;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
150 % % Mm1 = -c(r-2)/0.6e1 - c(r-1)/0.2e1 - c(r) /0.2e1 - c(r+1)/0.6e1 ;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
151 % % M0 = c(r-2)/2.4e1 + c(r-1)/1.2e0 + c(r) * 0.3/0.4 + c(r+1)/1.2e0 + c(r+2)/2.4e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
152 % % Mp1 = -c(r-1)/0.6e1 - c(r) /0.2e1 - c(r+1)/0.2e1 - c(r+2)/0.6e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
153 % % Mp2 = c(r) /0.8e1 - c(r+1)/0.6e1 + c(r+2)/0.8e1;
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
154 % % % printSize(M_diag_ind);
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
155 % % % Mdiags = [Mm2 Mm1 M0 Mp1 Mp2];
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
156 % % % printSize(Mdiags);
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
157 % % M(M_diag_ind) = [Mm2 Mm1 M0 Mp1 Mp2]; % This is slightly faster
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
158 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
159 % % Kan man skriva det som en multiplikation av en 3-dim matris?
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
160 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
161
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
162
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
163
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
164
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
165
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
166
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
167
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
168
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
169
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
170
297d2cbfbe15 Cleaning of variable 2nd deriv in 4th order.
Jonatan Werpers <jonatan@werpers.com>
parents: 314
diff changeset
171