Mercurial > repos > public > sbplib
comparison +sbp/+implementations/d2_noneq_variable_12.m @ 1332:8e9df030a0a5 feature/D2_boundary_opt
Clarify comments
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Wed, 04 May 2022 08:42:13 +0200 |
parents | 855871e0b852 |
children | b4e5e45bd239 |
comparison
equal
deleted
inserted
replaced
1331:60c875c18de3 | 1332:8e9df030a0a5 |
---|---|
345 % Remainder term added to wide second derivative operator | 345 % Remainder term added to wide second derivative operator |
346 R = (1/30735936 / h) * transpose(DD_12) * C1 * DD_12 + (1/6403320 / h) * transpose(DD_11) * C2 * DD_11 + (1/1293600 / h) * transpose(DD_10) * C3 * DD_10 + (1/249480 / h) * transpose(DD_9) * C4 * DD_9 + (1/44352 / h) * transpose(DD_8) * C5 * DD_8 + (1/6468 / h) * transpose(DD_7) * C6 * DD_7; | 346 R = (1/30735936 / h) * transpose(DD_12) * C1 * DD_12 + (1/6403320 / h) * transpose(DD_11) * C2 * DD_11 + (1/1293600 / h) * transpose(DD_10) * C3 * DD_10 + (1/249480 / h) * transpose(DD_9) * C4 * DD_9 + (1/44352 / h) * transpose(DD_8) * C5 * DD_8 + (1/6468 / h) * transpose(DD_7) * C6 * DD_7; |
347 D2 = D1 * C1 * D1 - H \ R; | 347 D2 = D1 * C1 * D1 - H \ R; |
348 end | 348 end |
349 | 349 |
350 % Few additional grid point in interior stencil cmp. to minimal | 350 % Non-minimal 15 point stencil width |
351 function D2 = D2_fun_nonminimal(c) | 351 function D2 = D2_fun_nonminimal(c) |
352 % Here we add variable diffusion | 352 % Here we add variable diffusion |
353 C1 = sparse(diag(c)); | 353 C1 = sparse(diag(c)); |
354 C2 = 1/2 * diag(ones(m - 1, 1), -1) + 1/2 * diag(ones(m, 1), 0); C2(1, 2) = 1/2; | 354 C2 = 1/2 * diag(ones(m - 1, 1), -1) + 1/2 * diag(ones(m, 1), 0); C2(1, 2) = 1/2; |
355 C3 = 5/18 * diag(ones(m - 1, 1), -1) + 5/18 * diag(ones(m - 1, 1), 1) + 4/9 * diag(ones(m, 1), 0); C3(1, 3) = 5/18; C3(m, m - 2) = 5/18; | 355 C3 = 5/18 * diag(ones(m - 1, 1), -1) + 5/18 * diag(ones(m - 1, 1), 1) + 4/9 * diag(ones(m, 1), 0); C3(1, 3) = 5/18; C3(m, m - 2) = 5/18; |