Mercurial > repos > public > sbplib
annotate dealStruct.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 | b7ec26da3d77 |
children |
rev | line source |
---|---|
874
95993ad2bd70
Add function to deal the fields of a struct to variables
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
1 function varargout = dealStruct(s, fields) |
892
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
2 default_arg('fields', []); |
874
95993ad2bd70
Add function to deal the fields of a struct to variables
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
3 |
892
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
4 if isempty(fields) |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
5 out = dealFields(s, fieldnames(s)); |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
6 varargout = out(1:nargout); |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
7 else |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
8 assert(nargout == length(fields), 'Number of output arguements must match the number of fieldnames provided'); |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
9 varargout = dealFields(s, fields); |
874
95993ad2bd70
Add function to deal the fields of a struct to variables
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
10 end |
95993ad2bd70
Add function to deal the fields of a struct to variables
Jonatan Werpers <jonatan@werpers.com>
parents:
diff
changeset
|
11 end |
892
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
12 |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
13 function out = dealFields(s, fields) |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
14 out = cell(1, length(fields)); |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
15 for i = 1:length(fields) |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
16 out{i} = s.(fields{i}); |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
17 end |
b7ec26da3d77
Handle default arguments better in dealStruct()
Jonatan Werpers <jonatan@werpers.com>
parents:
874
diff
changeset
|
18 end |