[其他] minmax已回收

看板MATLAB作者 (咕咕貓)時間14年前 (2011/06/29 13:35), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
請問一下 我現再者個minimax的code下面這一段 if length(a)==1,a=a*ones(size(x)); end if length(b)==1,b=b*ones(size(x)); end 請問是設定x要在a和b範圍內的意思嗎 謝謝 ------ % MINMAX Minimax transformation for solving NCP as rootfinding problem % USAGE % [fhatval,fhatjac] = minmax(x,a,b,fval,fjac) % INPUTS % x : n by 1 vector, evaluation point % a : n by 1 vector, left bound on x % b : n by 1 vector, right bound on x % fval : function value at x % fjac : function Jacobian at x % OUTPUTS % fhatval : transformed function value at x % fhatjac : transformed function Jacobian at x % % See also: smooth % Copyright (c) 1997-2000, Paul L. Fackler & Mario J. Miranda % paul_fackler@ncsu.edu, miranda.4@osu.edu function [fhatval,fhatjac] = minmax(x,a,b,fval,fjac) if length(a)==1,a=a*ones(size(x)); end if length(b)==1,b=b*ones(size(x)); end da = a-x; db = b-x; fhatval = min(max(fval,da),db); if nargout==2 fhatjac = -eye(length(x)); i = find(fval>da & fval<db); fhatjac(i,:) = fjac(i,:); end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.63.176

06/29 16:43, , 1F
不是
06/29 16:43, 1F

06/29 16:44, , 2F
是說如果a只有一個值的話 他就變出一串nby1的陣列當bound
06/29 16:44, 2F

07/01 08:57, , 3F
那請問原PO問的那段有甚麼功用呢
07/01 08:57, 3F

07/01 19:27, , 4F
a/b的長度==1的話,把a/b變成和x一樣大的1矩陣
07/01 19:27, 4F

07/01 19:43, , 5F
不是一串1 是一串a或是一串b
07/01 19:43, 5F
文章代碼(AID): #1E2hcZXD (MATLAB)