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
RevLine 
[963]1function md=postqmu(md)
[25836]2%POSTQMU - Deal with Dakota output results in files
3%
4% Usage:
5% md = postqmu(md)
[963]6
7% check to see if dakota returned errors in the err file
[9625]8qmuerrfile=[md.miscellaneous.name '.qmu.err'];
[963]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
[25836]18 warning(['Dakota returned error in ''' qmuerrfile ''' file. QMU directory retained.'])
[24313]19 end
20 status=fclose(fide);
[963]21end
22
23%parse inputs and results from dakota
[9625]24qmuinfile=[md.miscellaneous.name '.qmu.in'];
25qmuoutfile=[md.miscellaneous.name '.qmu.out'];
[963]26[method,dresp_out,scm,pcm,srcm,prcm]=dakota_out_parse(qmuoutfile);
[2051]27dakotaresults.dresp_out=dresp_out;
28dakotaresults.scm =scm;
29dakotaresults.pcm =pcm;
30dakotaresults.srcm =srcm;
31dakotaresults.prcm =prcm;
[963]32
33if exist('dakota_tabular.dat','file')
34 [method,dresp_dat ]=dakota_out_parse('dakota_tabular.dat');
[2051]35 dakotaresults.dresp_dat=dresp_dat;
[963]36end
37
[25836]38if md.qmu.output & strcmpi(md.qmu.statistics.method(1).name,'None'),
[24686]39 if strcmpi(md.qmu.method.method,'nond_sampling'),
40 dakotaresults.modelresults={};
[25836]41 md2=md;
42 md2.qmu.isdakota=0;
[24686]43 for i=1:md2.qmu.method.params.samples,
[25836]44 disp(['Reading qmu file ' md2.miscellaneous.name '.outbin.' num2str(i)]);
[24686]45 md2=loadresultsfromdisk(md2,[md2.miscellaneous.name '.outbin.' num2str(i)]);
46 dakotaresults.modelresults{end+1}=md2.results;
47 end
48 end
49end
[25836]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
[24686]55
[2051]56%put dakotaresults in their right location.
[3038]57md.results.dakota=dakotaresults;
[2051]58
[963]59% move all the individual function evalutations into zip files
[9650]60if ~md.qmu.isdakota,
[963]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.