Mercurial > repos > public > sbplib
comparison +sbp/+implementations/d2_variable_periodic_2.m @ 801:bbf303c1f0cf feature/poroelastic
Rename spdaigsVariablePeriodic spdiagsPeriodic
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Thu, 26 Jul 2018 18:04:29 -0700 |
parents | 5ccf6aaf6d6b |
children |
comparison
equal
deleted
inserted
replaced
800:87ea9cac3287 | 801:bbf303c1f0cf |
---|---|
25 D1 = stripeMatrixPeriodic(stencil, diags, m); | 25 D1 = stripeMatrixPeriodic(stencil, diags, m); |
26 D1 = D1/h; | 26 D1 = D1/h; |
27 | 27 |
28 scheme_width = 3; | 28 scheme_width = 3; |
29 scheme_radius = (scheme_width-1)/2; | 29 scheme_radius = (scheme_width-1)/2; |
30 | 30 |
31 r = 1:m; | 31 r = 1:m; |
32 offset = scheme_width; | 32 offset = scheme_width; |
33 r = r + offset; | 33 r = r + offset; |
34 | 34 |
35 function D2 = D2_fun(c) | 35 function D2 = D2_fun(c) |
39 M0 = c(r-1)/2 + c(r) + c(r+1)/2; | 39 M0 = c(r-1)/2 + c(r) + c(r+1)/2; |
40 Mp1 = -c(r)/2 - c(r+1)/2; | 40 Mp1 = -c(r)/2 - c(r+1)/2; |
41 | 41 |
42 vals = [Mm1,M0,Mp1]; | 42 vals = [Mm1,M0,Mp1]; |
43 diags = -scheme_radius : scheme_radius; | 43 diags = -scheme_radius : scheme_radius; |
44 M = spdiagsVariablePeriodic(vals,diags); | 44 M = spdiagsPeriodic(vals,diags); |
45 | 45 |
46 M=M/h; | 46 M=M/h; |
47 D2=HI*(-M ); | 47 D2=HI*(-M ); |
48 end | 48 end |
49 D2 = @D2_fun; | 49 D2 = @D2_fun; |