Skip to content

Commit 678e0b2

Browse files
committed
New continuous design variable
1 parent 38e777c commit 678e0b2

File tree

2 files changed

+41
-1
lines changed

2 files changed

+41
-1
lines changed

src/m/qmu/postqmu.m

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,17 @@
4646
dakotaresults.modelresults{end+1}=md2.results;
4747
end
4848
end
49+
if strcmpi(md.qmu.method.method,'list_parameter_study'),
50+
dakotaresults.modelresults={};
51+
md2=md;
52+
md2.qmu.isdakota=0;
53+
for i=md.qmu.method.params.list_of_points,
54+
disp(['Reading qmu file ' md2.miscellaneous.name '.outbin.' num2str(i)]);
55+
md2=loadresultsfromdisk(md2,[md2.miscellaneous.name '.outbin.' num2str(i)]);
56+
dakotaresults.modelresults{end+1}=md2.results;
57+
end
58+
end
59+
4960
end
5061
if ~strcmpi(md.qmu.statistics.method(1).name,'None'),
5162
md.qmu.isdakota=0;

src/m/qmu/setupdesign/QmuSetupVariables.m

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,17 @@
3737
if (nstddev ~= nt || nmean ~=nt),
3838
error('QmuSetupVariables error message: stddev and mean fields should have the same number of cols as the number of time steps');
3939
end
40-
40+
elseif isa(variables,'continuous_design'),
41+
nupper=size(variables.upper,1);
42+
nlower=size(variables.lower,1);
43+
if (nupper ~= npart || nlower ~=npart),
44+
error('QmuSetupVariables error message: upper and lower fields should have the same number of rows as the number of partitions');
45+
end
46+
nupper=size(variables.upper,2);
47+
nlower=size(variables.lower,2);
48+
if (nupper ~= nt || nlower ~=nt),
49+
error('QmuSetupVariables error message: upper and lower fields should have the same number of cols as the number of time steps');
50+
end
4151
end
4252

4353
%ok, dealing with semi-discrete distributed variable. Distribute according to how many
@@ -52,6 +62,10 @@
5262
elseif isa(variables,'normal_uncertain'),
5363
dvar(end ).stddev=variables.stddev(j);
5464
dvar(end ).mean=variables.mean(j);
65+
elseif isa(variables,'continuous_design'),
66+
dvar(end ).upper=variables.upper(j);
67+
dvar(end ).lower=variables.lower(j);
68+
dvar(end ).initpt=variables.initpt(j);
5569
end
5670
end
5771
else
@@ -65,6 +79,10 @@
6579
elseif isa(variables,'normal_uncertain'),
6680
dvar(end ).stddev=variables.stddev(j,k);
6781
dvar(end ).mean=variables.mean(j,k);
82+
elseif isa(variables,'continuous_design'),
83+
dvar(end ).upper=variables.upper(j,k);
84+
dvar(end ).lower=variables.lower(j,k);
85+
dvar(end ).initpt=variables.initpt(j,k);
6886
end
6987
end
7088
end
@@ -90,6 +108,12 @@
90108
if (nstddev ~= npart || nmean ~=npart),
91109
error('QmuSetupVariables error message: stddev and mean fields should have the same number of rows as the number of partitions');
92110
end
111+
elseif isa(variables,'continuous_design'),
112+
nupper=size(variables.upper,1);
113+
nlower=size(variables.lower,1);
114+
if (nupper ~= npart || nlower ~=npart),
115+
error('QmuSetupVariables error message: upper and lower fields should have the same number of rows as the number of partitions');
116+
end
93117
elseif isa(variables,'histogram_bin_uncertain'),
94118
ncounts=length(variables.counts);
95119
npairs=length(variables.pairs_per_variable);
@@ -118,6 +142,11 @@
118142
dvar(end ).stddev=variables.stddev(j);
119143
dvar(end ).mean=variables.mean(j);
120144
dvar(end ).partition=[];
145+
elseif isa(variables,'continuous_design'),
146+
dvar(end ).upper=variables.upper(j);
147+
dvar(end ).lower=variables.lower(j);
148+
dvar(end ).initpt=variables.initpt(j);
149+
dvar(end ).partition=[];
121150
elseif isa(variables,'histogram_bin_uncertain'),
122151
dvar(end).pairs_per_variable=variables.pairs_per_variable(j);
123152
dvar(end).abscissas=variables.abscissas{j};

0 commit comments

Comments
 (0)