source: issm/trunk/src/m/qmu/postqmu.m

Last change on this file was 25836, checked in by Mathieu Morlighem, 4 years ago

merged trunk-jpl and trunk for revision 25834

File size: 2.0 KB
Line 
1function md=postqmu(md)
2%POSTQMU - Deal with Dakota output results in files
3%
4% Usage:
5% md = postqmu(md)
6
7% check to see if dakota returned errors in the err file
8qmuerrfile=[md.miscellaneous.name '.qmu.err'];
9
10if exist(qmuerrfile,'file')
11 fide=fopen(qmuerrfile,'r');
12 fline=fgetl(fide);
13 if ischar(fline)
14 while ischar(fline)
15 disp(sprintf('%s',fline));
16 fline=fgetl(fide);
17 end
18 warning(['Dakota returned error in ''' qmuerrfile ''' file. QMU directory retained.'])
19 end
20 status=fclose(fide);
21end
22
23%parse inputs and results from dakota
24qmuinfile=[md.miscellaneous.name '.qmu.in'];
25qmuoutfile=[md.miscellaneous.name '.qmu.out'];
26[method,dresp_out,scm,pcm,srcm,prcm]=dakota_out_parse(qmuoutfile);
27dakotaresults.dresp_out=dresp_out;
28dakotaresults.scm =scm;
29dakotaresults.pcm =pcm;
30dakotaresults.srcm =srcm;
31dakotaresults.prcm =prcm;
32
33if exist('dakota_tabular.dat','file')
34 [method,dresp_dat ]=dakota_out_parse('dakota_tabular.dat');
35 dakotaresults.dresp_dat=dresp_dat;
36end
37
38if md.qmu.output & strcmpi(md.qmu.statistics.method(1).name,'None'),
39 if strcmpi(md.qmu.method.method,'nond_sampling'),
40 dakotaresults.modelresults={};
41 md2=md;
42 md2.qmu.isdakota=0;
43 for i=1:md2.qmu.method.params.samples,
44 disp(['Reading qmu file ' md2.miscellaneous.name '.outbin.' num2str(i)]);
45 md2=loadresultsfromdisk(md2,[md2.miscellaneous.name '.outbin.' num2str(i)]);
46 dakotaresults.modelresults{end+1}=md2.results;
47 end
48 end
49end
50if ~strcmpi(md.qmu.statistics.method(1).name,'None'),
51 md.qmu.isdakota=0;
52 md=loadresultsfromdisk(md,[md.miscellaneous.name,'.stats']);
53 md.qmu.isdakota=1;
54end
55
56%put dakotaresults in their right location.
57md.results.dakota=dakotaresults;
58
59% move all the individual function evalutations into zip files
60if ~md.qmu.isdakota,
61 system('zip -mq params.in.zip params.in.[1-9]*');
62 system('zip -mq results.out.zip results.out.[1-9]*');
63 system('zip -mq matlab.out.zip matlab*.out.[1-9]*');
64end
Note: See TracBrowser for help on using the repository browser.