Mercurial > repos > public > sbplib
diff +time/CdiffNonlin.m @ 30:cd2e28c5ecd2
Corrected parameter treatment in nonlin timesteppers.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Mon, 28 Sep 2015 13:23:52 +0200 |
parents | b18d3d201a71 |
children | d1f9dd55a2b0 |
line wrap: on
line diff
--- a/+time/CdiffNonlin.m Mon Sep 28 08:47:28 2015 +0200 +++ b/+time/CdiffNonlin.m Mon Sep 28 13:23:52 2015 +0200 @@ -14,8 +14,16 @@ methods function obj = CdiffNonlin(D, E, S, k, t0,n0, v, v_prev) m = size(D(v),1); - default_arg('E',@(v)sparse(m,m)); - default_arg('S',@(v,t)sparse(m,1)); + default_arg('E',0); + default_arg('S',0); + + if isnumeric(S) + S = @(v,t)S; + end + + if isnumeric(E) + E = @(v)E; + end % m = size(D,1); @@ -45,7 +53,7 @@ function obj = step(obj) D = obj.D(obj.v); E = obj.E(obj.v); - S = obj.S(obj.v); + S = obj.S(obj.v,obj.t); m = size(D,1); I = speye(m);