Mercurial > repos > public > sbplib
diff spdiagVariable.m @ 681:7368affc8f78 feature/poroelastic
Add D2 variable periodic for second order.
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Wed, 07 Feb 2018 15:42:50 -0800 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/spdiagVariable.m Wed Feb 07 15:42:50 2018 -0800 @@ -0,0 +1,17 @@ +function A = spdiagVariable(a,i) + default_arg('i',0); + + if isrow(a) + a = a'; + end + + n = length(a)+abs(i); + + if i > 0 + a = [sparse(i,1); a]; + elseif i < 0 + a = [a; sparse(abs(i),1)]; + end + + A = spdiags(a,i,n,n); +end \ No newline at end of file