Mercurial > repos > public > sbplib
comparison +scheme/+bc/forcingSetup.m @ 878:51cc7b05b4ab bcSetupExperiment
Fix bugs in forcingSetup and verifyFormat
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Fri, 02 Nov 2018 11:11:50 +0100 |
parents | 7ceaea27d944 |
children | ba10f24bf476 |
comparison
equal
deleted
inserted
replaced
877:7ceaea27d944 | 878:51cc7b05b4ab |
---|---|
29 end | 29 end |
30 | 30 |
31 % Go through a cell array of boundary condition specifications and return cell arrays | 31 % Go through a cell array of boundary condition specifications and return cell arrays |
32 % of structs for grid and symbolic data. | 32 % of structs for grid and symbolic data. |
33 function [gridData, symbolicData] = parseAndSortData(bcs, penalties, diffOp) | 33 function [gridData, symbolicData] = parseAndSortData(bcs, penalties, diffOp) |
34 gridData = {}; | |
35 symbolicData = {}; | |
34 for i = 1:length(bcs) | 36 for i = 1:length(bcs) |
35 [ok, isSymbolic, data] = parseData(bcs{i}, penalties{i}, diffOp.grid) | 37 [ok, isSymbolic, data] = parseData(bcs{i}, penalties{i}, diffOp.grid); |
36 | 38 |
37 if ~ok | 39 if ~ok |
38 continue % There was no data | 40 continue % There was no data |
39 end | 41 end |
40 | 42 |
41 if isSymbolic | 43 if isSymbolic |
44 symbolicData{end+1} = data; | |
45 else | |
42 gridData{end+1} = data; | 46 gridData{end+1} = data; |
43 else | |
44 symbolicData{end+1} = data; | |
45 end | 47 end |
46 end | 48 end |
47 end | 49 end |
48 | 50 |
49 function [ok, isSymbolic, dataStruct] = parseData(bc, penalty, grid) | 51 function [ok, isSymbolic, dataStruct] = parseData(bc, penalty, grid) |
66 dataStruct.coords = num2cell(coord, 1); | 68 dataStruct.coords = num2cell(coord, 1); |
67 else | 69 else |
68 % Grid data | 70 % Grid data |
69 isSymbolic = false; | 71 isSymbolic = false; |
70 dataStruct.penalty = penalty; | 72 dataStruct.penalty = penalty; |
71 dataStruct.func = bcs{i}.data; | 73 dataStruct.func = bc.data; |
72 end | 74 end |
73 end | 75 end |