⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 optim_private_display1.c

📁 ASUFIT-Matlab-全局拟合程序
💻 C
📖 第 1 页 / 共 5 页
字号:
                  "set(findobj(gcf,'Userdata','LSOT frame'),'Value',1);"),
                NULL));
            /*
             * 'String','STOP Execution',...
             * 'Callback', ...
             * 'set(findobj(gcf,''Userdata'',''LSOT frame''),''Value'',1);');
             * ParamTitlHdln = findobj(figtr,'Userdata','Report Progress');
             */
            mlfAssign(
              &ParamTitlHdln,
              mlfFindobj(
                figtr,
                mxCreateString("Userdata"),
                mxCreateString("Report Progress"),
                NULL));
            /*
             * 
             * % Erase the axes and start the plots again
             * n = length(x) ;
             */
            mlfAssign(&n, mlfLength(x));
            /*
             * delete(findobj(figtr,'type','axes')) ;
             */
            mlfDelete(
              mlfFindobj(
                figtr, mxCreateString("type"), mxCreateString("axes"), NULL),
              NULL);
            /*
             * xtrack(x,g,l,u,'init') ;
             */
            mlfOptim_private_xtrack(x, g, l, u, mxCreateString("init"));
        /*
         * end ;
         */
        }
    /*
     * else
     */
    } else {
        /*
         * 
         * % Produce small figure window
         * 
         * figtr = findobj('Type','figure','Name','Progress Information') ;
         */
        mlfAssign(
          &figtr,
          mlfFindobj(
            mxCreateString("Type"),
            mxCreateString("figure"),
            mxCreateString("Name"),
            mxCreateString("Progress Information"),
            NULL));
        /*
         * % Have to check if it has the right size, for that purpose see 
         * % how many axes there are.
         * if ~isempty(figtr) 
         */
        if (mlfTobool(mlfNot(mlfIsempty(figtr)))) {
            /*
             * axx = findobj(figtr,'type','axes') ;
             */
            mlfAssign(
              &axx,
              mlfFindobj(
                figtr, mxCreateString("type"), mxCreateString("axes"), NULL));
            /*
             * if sum(size(axx)) >= 4 % is big
             */
            if (mlfTobool(
                  mlfGe(
                    mlfSum(mlfSize(mclValueVarargout(), axx, NULL), NULL),
                    mlfScalar(4.0)))) {
                /*
                 * close(figtr) ;
                 */
                mclAssignAns(&ans, mlfNClose(0, figtr, NULL));
                /*
                 * figtr = [] ;
                 */
                mlfAssign(&figtr, mclCreateEmptyArray());
            /*
             * end ;
             */
            }
        /*
         * end ;
         */
        }
        /*
         * if isempty(figtr)
         */
        if (mlfTobool(mlfIsempty(figtr))) {
            /*
             * % Have to create the whole figure
             * 
             * screensize = get(0,'ScreenSize') ;
             */
            mlfAssign(
              &screensize,
              mlfGet(mlfScalar(0.0), mxCreateString("ScreenSize"), NULL));
            /*
             * xpos = floor((screensize(3) - 360)/2) ;
             */
            mlfAssign(
              &xpos,
              mlfFloor(
                mlfMrdivide(
                  mlfMinus(
                    mlfIndexRef(screensize, "(?)", mlfScalar(3.0)),
                    mlfScalar(360.0)),
                  mlfScalar(2.0))));
            /*
             * ypos = floor((screensize(4) - 300)/2) ;
             */
            mlfAssign(
              &ypos,
              mlfFloor(
                mlfMrdivide(
                  mlfMinus(
                    mlfIndexRef(screensize, "(?)", mlfScalar(4.0)),
                    mlfScalar(300.0)),
                  mlfScalar(2.0))));
            /*
             * 
             * figtr=figure( ...
             */
            mlfAssign(
              &figtr,
              mlfNFigure(
                1,
                mxCreateString("NumberTitle"),
                mxCreateString("off"),
                mxCreateString("Name"),
                mxCreateString("Progress Information"),
                mxCreateString("position"),
                mlfHorzcat(
                  xpos, ypos, mlfScalar(360.0), mlfScalar(300.0), NULL),
                NULL));
            /*
             * 'NumberTitle','off', ...        
             * 'Name', 'Progress Information', ...
             * 'position',[xpos ypos 360 300]);
             * 
             * 
             * uicontrol(figtr,...
             */
            mclAssignAns(
              &ans,
              mlfNUicontrol(
                0,
                figtr,
                mxCreateString("Style"),
                mxCreateString("frame"),
                mxCreateString("Units"),
                mxCreateString("normalized"),
                mxCreateString("Position"),
                mlfDoubleMatrix(1, 4, __Array5_r, NULL),
                mxCreateString("Value"),
                mlfScalar(0.0),
                mxCreateString("Userdata"),
                mxCreateString("LSOT frame"),
                NULL));
            /*
             * 'Style','frame',...
             * 'Units','normalized',...
             * 'Position',[.25 .05 .5 .21],...
             * 'Value',0,...
             * 'Userdata','LSOT frame');
             * uicontrol(figtr,...
             */
            mclAssignAns(
              &ans,
              mlfNUicontrol(
                0,
                figtr,
                mxCreateString("Style"),
                mxCreateString("text"),
                mxCreateString("Units"),
                mxCreateString("normalized"),
                mxCreateString("Position"),
                mlfDoubleMatrix(1, 4, __Array6_r, NULL),
                mxCreateString("Userdata"),
                mxCreateString("lsotlabel"),
                mxCreateString("String"),
                mxCreateString("RUNNING"),
                NULL));
            /*
             * 'Style','text', ...
             * 'Units','normalized', ...
             * 'Position',[.26 .16 .48 .1], ...
             * 'Userdata','lsotlabel',...
             * 'String', 'RUNNING');
             * uicontrol(figtr, ...
             */
            mclAssignAns(
              &ans,
              mlfNUicontrol(
                0,
                figtr,
                mxCreateString("Style"),
                mxCreateString("pushbutton"),
                mxCreateString("Units"),
                mxCreateString("Normalized"),
                mxCreateString("Position"),
                mlfDoubleMatrix(1, 4, __Array7_r, NULL),
                mxCreateString("String"),
                mxCreateString("STOP Execution"),
                mxCreateString("Userdata"),
                mxCreateString("stop button"),
                mxCreateString("Callback"),
                mxCreateString(
                  "set(findobj(gcf,'Userdata','LSOT frame'),'Value',1);"),
                NULL));
            /*
             * 'Style','pushbutton',...
             * 'Units','Normalized',...
             * 'Position',[.26 .06 .48 .1],...
             * 'String','STOP Execution',...
             * 'Userdata','stop button',...
             * 'Callback','set(findobj(gcf,''Userdata'',''LSOT frame''),''Value'',1);') ;
             * 
             * %   'HorizontalAlignment','left',...
             * ParamTitlHdln = uicontrol( ...
             */
            mlfAssign(
              &ParamTitlHdln,
              mlfNUicontrol(
                1,
                mxCreateString("Style"),
                mxCreateString("text"),
                mxCreateString("Max"),
                mlfScalar(10.0),
                mxCreateString("Units"),
                mxCreateString("normalized"),
                mxCreateString("Position"),
                mlfDoubleMatrix(1, 4, __Array8_r, NULL),
                mxCreateString("Background"),
                mlfDoubleMatrix(1, 3, __Array9_r, NULL),
                mxCreateString("Foreground"),
                mlfDoubleMatrix(1, 3, __Array10_r, NULL),
                mxCreateString("UserData"),
                mxCreateString("Report Progress"),
                NULL));
        /*
         * 'Style','text',...
         * 'Max',10, ...
         * 'Units','normalized', ...
         * 'Position',[0 0.3 1 .7], ...
         * 'Background',[.0 .0 .0], ...
         * 'Foreground',[1 1 1],...
         * 'UserData','Report Progress');
         * 
         * else
         */
        } else {
            /*
             * figure(figtr) ;
             */
            mclAssignAns(&ans, mlfNFigure(0, figtr, NULL));
            /*
             * set(findobj(figtr,'Userdata','LSOT frame'),'Value',0) ;
             */
            mclAssignAns(
              &ans,
              mlfNSet(
                0,
                mlfFindobj(
                  figtr,
                  mxCreateString("Userdata"),
                  mxCreateString("LSOT frame"),
                  NULL),
                mxCreateString("Value"),
                mlfScalar(0.0),
                NULL));
            /*
             * set(findobj(figtr,'Userdata','lsotlabel'),'String','RUNNING') ;
             */
            mclAssignAns(
              &ans,
              mlfNSet(
                0,
                mlfFindobj(
                  figtr,
                  mxCreateString("Userdata"),
                  mxCreateString("lsotlabel"),
                  NULL),
                mxCreateString("String"),
                mxCreateString("RUNNING"),
                NULL));
            /*
             * set(findobj(figtr,'Userdata','stop button'),...
             */
            mclAssignAns(
              &ans,
              mlfNSet(
                0,
                mlfFindobj(
                  figtr,
                  mxCreateString("Userdata"),
                  mxCreateString("stop button"),
                  NULL),
                mxCreateString("String"),
                mxCreateString("STOP Execution"),
                mxCreateString("Callback"),
                mxCreateString(
                  "set(findobj(gcf,'Userdata','LSOT frame'),'Value',1);"),
                NULL));
            /*
             * 'String','STOP Execution',...
             * 'Callback',...
             * 'set(findobj(gcf,''Userdata'',''LSOT frame''),''Value'',1);') ;
             * ParamTitlHdln = findobj(figtr,'Userdata','Report Progress');
             */
            mlfAssign(
              &ParamTitlHdln,
              mlfFindobj(
                figtr,
                mxCreateString("Userdata"),
                mxCreateString("Report Progress"),
                NULL));
        /*
         * end 
         */
        }
    /*
     * end
     */
    }
    /*
     * ParamTitl = str2mat([], ...
     */
    mlfAssign(
      &ParamTitl,
      mlfStr2mat(
        mclCreateEmptyArray(),
        mlfSprintf(
          NULL,
          mxCreateString(" Effective dimension of problem = %-4.0f"),
          mlfLength(x),
          NULL),
        mlfSprintf(
          NULL,
          mxCreateString(" Maximum number of iterations = %-4.0f"),
          itbnd,
          NULL),
        mlfSprintf(
          NULL, mxCreateString(" Termination Tolerance =  %-6.2e"), tol, NULL),
        mlfSprintf(
          NULL,
          mxCreateString(" Output display level =   %-4.0f"),
          showstat,
          NULL),
        NULL));
    /*
     * sprintf(' Effective dimension of problem = %-4.0f', ...
     * length(x)), ...
     * sprintf(' Maximum number of iterations = %-4.0f', ...
     * itbnd), ...
     * sprintf(' Termination Tolerance =  %-6.2e',tol), ...
     * sprintf(' Output display level =   %-4.0f',showstat)) ;
     * set(ParamTitlHdln,'String',ParamTitl) ;
     */
    mclAssignAns(
      &ans,
      mlfNSet(0, ParamTitlHdln, mxCreateString("String"), ParamTitl, NULL));
    /*
     * 
     * % Create log file and write the same thing to it
     * % temporarily disable this feature
     * if 0
     */
    if (mlfTobool(mlfScalar(0.0))) {
        /*
         * logfile = fopen('lsot.log','wt') ;
         */
        mlfAssign(
          &logfile,
          mlfFopen(
            NULL,
            NULL,
            mxCreateString("lsot.log"),
            mxCreateString("wt"),
            NULL));
        /*
         * clk = clock ;
         */
        mlfAssign(&clk, mlfClock());
        /*
         * fprintf(logfile,'** LSOT log file. Produced %d-%d-%d at %d:%d:%d \n\n',...
         */
        mclAssignAns(
          &ans,
          mlfFprintf(
            logfile,
            mxCreateString(
              "** LSOT log file. Produced %d-%d-%d at %d:%d:%d \\n\\n"),
            mlfIndexRef(
              clk, "(?)", mlfColon(mlfScalar(2.0), mlfScalar(3.0), NULL)),
            mlfIndexRef(clk, "(?)", mlfScalar(1.0)),
            mlfIndexRef(
              clk, "(?)", mlfColon(mlfScalar(4.0), mlfScalar(5.0), NULL)),
            mlfFloor(mlfIndexRef(clk, "(?)", mlfScalar(6.0))),

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -