Mercurial > repos > public > sbplib
diff diracDiscrTest.m @ 651:4ee7d15bd8e6 feature/d1_staggered
Fix roundoff bug in diracDiscr and improve test.
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Wed, 15 Nov 2017 14:58:13 -0800 |
parents | 46c40711830f |
children | 5264ce57b573 |
line wrap: on
line diff
--- a/diracDiscrTest.m Wed Nov 15 14:56:52 2017 -0800 +++ b/diracDiscrTest.m Wed Nov 15 14:58:13 2017 -0800 @@ -193,12 +193,39 @@ end end +function testAllGP(testCase) + + orders = [2, 4, 6]; + mom_conds = orders; + + for o = 1:length(orders) + order = orders(o); + mom_cond = mom_conds(o); + [xl, xr, m, h, x, H, fs] = setupStuff(order, mom_cond); + + % Test all grid points + x0s = x; + + for j = 1:length(fs) + f = fs{j}; + fx = f(x); + for i = 1:length(x0s) + x0 = x0s(i); + delta = diracDiscr(x0, x, mom_cond, 0, H); + integral = delta'*H*fx; + err = abs(integral - f(x0)); + testCase.verifyLessThan(err, 1e-12); + end + end + end +end + function [xl, xr, m, h, x, H, fs] = setupStuff(order, mom_cond) % Grid xl = -3; xr = 2; - m = 21; + m = 101; h = (xr-xl)/(m-1); g = grid.equidistant(m, {xl, xr}); x = g.points();