Changeset 264


Ignore:
Timestamp:
05/06/09 14:25:17 (16 years ago)
Author:
jschierm
Message:

Modification of parameter writing to Dakota requirements.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/m/classes/@dakota_method/dmeth_params_write.m

    r27 r264  
    283283        end
    284284       
    285     case {'lstsq'}
     285    case {'lsq'}
    286286        switch dm.method
    287287            case {'nl2sol'}
     
    351351                param_write(fid,sbeg,'fixed_seed','','\n',dm.params);
    352352                param_write(fid,sbeg,'samples','          = ','\n',dm.params);
    353                 param_write(fid,sbeg,'sample_type','      = ','\n',dm.params);
     353                param_write(fid,sbeg,'sample_type','        ','\n',dm.params);
    354354                param_write(fid,sbeg,'all_variables','','\n',dm.params);
    355355                param_write(fid,sbeg,'variance_based_decomp','','\n',dm.params);
    356                 param_write(fid,sbeg,'previous_samples',' = ','\n',dm.params);
     356                if strcmp(dm.params.sample_type,'incremental_random') || ...
     357                   strcmp(dm.params.sample_type,'incremental_lhs'   )
     358                    param_write(fid,sbeg,'previous_samples',' = ','\n',dm.params);
     359                end
    357360
    358361            case {'nond_local_reliability'}
     
    361364
    362365                param_write(fid,sbeg,'mpp_search','  = ','\n',dm.params);
    363                 if (dm.params.sqp + ...
    364                     dm.params.nip > 1)
    365                     error('''%s'' method must have only one algorithm.',...
    366                         dm.method);
    367                 end
    368                 param_write(fid,sbeg,'sqp','','\n',dm.params);
    369                 param_write(fid,sbeg,'nip','','\n',dm.params);
    370                 param_write(fid,sbeg,'integration',' = ','\n',dm.params);
    371                 param_write(fid,sbeg,'refinement','  = ','\n',dm.params);
    372                 param_write(fid,sbeg,'samples','     = ','\n',dm.params);
    373                 param_write(fid,sbeg,'seed','        = ','\n',dm.params);
     366                if ischar(dm.params.mpp_search)
     367                    if (dm.params.sqp + ...
     368                        dm.params.nip > 1)
     369                        error('''%s'' method must have only one algorithm.',...
     370                            dm.method);
     371                    end
     372                    param_write(fid,sbeg,'sqp','','\n',dm.params);
     373                    param_write(fid,sbeg,'nip','','\n',dm.params);
     374                    param_write(fid,sbeg,'integration','   ','\n',dm.params);
     375                    param_write(fid,sbeg,'refinement','  = ','\n',dm.params);
     376                    if ischar(dm.params.refinement)
     377                        param_write(fid,sbeg,'samples','     = ','\n',dm.params);
     378                        param_write(fid,sbeg,'seed','        = ','\n',dm.params);
     379                    end
     380                end
    374381
    375382            case {'nond_global_reliability'}
     
    552559if     islogical(params.(pname))
    553560    fprintf(fidi,[sbeg '%s' send],pname);
     561elseif isnumeric(params.(pname))
     562    fprintf(fidi,[sbeg '%s' smid '%g'],pname,params.(pname)(1));
     563    for i=2:numel(params.(pname))
     564        fprintf(fidi,[' %g'],params.(pname)(i));
     565    end
     566    fprintf(fidi,[send]);
    554567elseif ischar   (params.(pname))
    555568    fprintf(fidi,[sbeg '%s' smid '%s' send],pname,params.(pname));
    556 elseif isnumeric(params.(pname))
    557     fprintf(fidi,[sbeg '%s' smid '%g' send],pname,params.(pname));
    558569else
    559570    warning('param_write:param_unrecog',...
Note: See TracChangeset for help on using the changeset viewer.