Mercurial > repos > public > sbplib
comparison +noname/convergence.m @ 217:fc07ebc49412 feature/beams
noname: Changed convergence to use grids in the representation of the solutions.
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Mon, 27 Jun 2016 13:23:46 +0200 |
| parents | 7bb2ef637142 |
| children | 3e1d8051e68e |
comparison
equal
deleted
inserted
replaced
| 216:8b10476b9bb7 | 217:fc07ebc49412 |
|---|---|
| 28 % Get the solution to be compared | 28 % Get the solution to be compared |
| 29 v = v_repr.v; | 29 v = v_repr.v; |
| 30 | 30 |
| 31 % Get the reference solution vector | 31 % Get the reference solution vector |
| 32 if isa(reference,'function_handle'); | 32 if isa(reference,'function_handle'); |
| 33 x = v_repr.x; | 33 x = v_repr.grid.Points(); |
| 34 v_ref = reference(x,T); | 34 v_ref = reference(x,T); |
| 35 else | 35 else |
| 36 % Downsample the reference solution | 36 % Downsample the reference solution |
| 37 x = v_repr.x; | 37 v_ref = reference.grid.restrictFunc(reference.v, v_repr.grid); |
| 38 x_ref = reference.x; | |
| 39 | |
| 40 [~,I] = ismember(x,x_ref,'rows'); | |
| 41 if any(I == 0) | |
| 42 error('Solution and reference solution seem to be on different grids.'); | |
| 43 end | |
| 44 v_ref = reference.v(I); | |
| 45 end | 38 end |
| 46 | 39 |
| 47 e = errorFunc(discr,v, v_ref); | 40 e = errorFunc(discr,v, v_ref); |
| 48 h = discr.h; | 41 h = discr.h; |
| 49 end | 42 end |
