Mercurial > repos > public > sbplib
annotate operator_def/read_stencil.m @ 829:e0913772dc1c feature/operator_files
Add D2 files
author | Ylva Rydin <ylva.rydin@telia.com> |
---|---|
date | Mon, 10 Sep 2018 19:25:41 +0200 |
parents | 95c26000c0ba |
children |
rev | line source |
---|---|
821
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
1 function [stencil_variables] = read_stencil(stencil) |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
2 fileID = fopen(stencil,'r'); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
3 line = fgetl(fileID); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
4 |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
5 |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
6 |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
7 while ~feof(fileID) |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
8 if isempty(line) |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
9 elseif strcmp(line(1),'#') |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
10 else |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
11 varname = genvarname(line); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
12 val = []; |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
13 line = fgetl(fileID); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
14 while ~isempty(str2num(line)) |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
15 val = [val; str2num(line)]; |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
16 line = fgets(fileID); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
17 if line == -1 |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
18 break |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
19 end |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
20 end |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
21 stencil_variables.(varname) = val; |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
22 end |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
23 line = fgetl(fileID); |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
24 end |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
25 |
95c26000c0ba
Add files for parsing operator data stencil file
Ylva Rydin <ylva.rydin@telia.com>
parents:
diff
changeset
|
26 end |