Mercurial > repos > public > sbplib
annotate dealStruct.m @ 1315:6c308da9dcbc feature/poroelastic
Add new interface method interfaceNormalTangential in Elastic2dCurvilinearAnisotropic.
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Sun, 26 Jul 2020 17:38:28 -0700 |
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 |