📄 optim_private_display1.c
字号:
"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 + -