annotate structArray.m @ 1347:ac54767ae1fb feature/poroelastic tip

Add interface, not fully compatible.
author Martin Almquist <martin.almquist@it.uu.se>
date Tue, 30 Apr 2024 14:58:35 +0200
parents b723495cdb2f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
817
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 % % Usage example:
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 % c = structArray({'a','b'}, {
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 % 1, 2;
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 % 3, 4;
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 % });
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 function c = structArray(fields, values)
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 assert(length(fields) == size(values, 2), 'Number of fields and number of colums of ''values'' must be equal');
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 c = struct();
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 for i = 1:size(values, 1)
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 for j = 1:length(fields)
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 c(i).(fields{j}) = values{i,j};
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 end
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 end
b723495cdb2f Add functions for easily creating struct arrays and struct cell arrays
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 end