Mercurial > repos > public > sbplib
annotate assertSize.m @ 1031:2ef20d00b386 feature/advectionRV
For easier comparison, return both the first order and residual viscosity when evaluating the residual. Add the first order and residual viscosity to the state of the RungekuttaRV time steppers
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Thu, 17 Jan 2019 10:25:06 +0100 |
parents | dec0447cbf2c |
children | a72038b1f709 |
rev | line source |
---|---|
766
afd20f023928
Rename assert_size to assertSize
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 % Assert that array A has the size s. |
768
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
2 function assertSize(A,varargin) |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
3 if length(varargin) == 1 |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
4 s = varargin{1}; |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
5 errmsg = sprintf('Expected %s to have size %s, got: %s',inputname(1), toString(s), toString(size(A))); |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
6 assert(all(size(A) == s), errmsg); |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
7 elseif length(varargin) == 2 |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
8 dim = varargin{1}; |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
9 s = varargin{2}; |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
10 |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
11 errmsg = sprintf('Expected %s to have size %d along dimension %d, got: %d',inputname(1), s, dim, size(A,dim)); |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
12 assert(size(A,dim) == s, errmsg); |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
13 else |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
14 error('Expected 2 or 3 arguments to assertSize()'); |
dec0447cbf2c
Make assertSize more general, allow picking dimensions
Jonatan Werpers <jonatan@werpers.com>
parents:
767
diff
changeset
|
15 end |
766
afd20f023928
Rename assert_size to assertSize
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
16 end |