亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pivotgolf.m

?? 《MATLAB數值計算》最新版本的全部代碼Numerical.Computing.With.MATLAB
?? M
字號:
function scoreout = pivotgolf(course,pivotstrat)
% PIVOTGOLF  Pivot Pickin' Golf.
%    Your goal is to use LUGUI to compute the LU decompositions of nine
%    matrices with as little roundoff error as possible.  Your score for
%    each hole is norm(R,inf)+norm(Leps,inf)+norm(Ueps,inf) where
%    R = L*U - A(p,q) is the residual and Leps and Ueps are the nonzeros
%    that should be zero in L and U.
%
%    The six golf courses include:
%       magic -- magic squares and Golub matrices, some are rank deficient.
%       testmats -- various test matrices, Pascal, Hilbert, gallery, etc.
%       rand #s -- random integer matrices initialized by rand('state',s).
%
%    The four pivot strategies are:
%       pick -- use the mouse to pick the pivots.
%       diagonal -- pivot on the diagonal, it is possible to divide by zero.
%       partial -- pivot is the largest element in the current column.
%       complete -- pivot is the largest element in the unreduced matrix.
%
%    PIVOTGOLF(course,pivotstrat) bypasses the initial screen.
%       course = 'magic', 'testmats', or a numeric s to set rand('state',s).
%       pivotstrat = 'pick','diagonal','partial', or 'complete'.
%
%    Try to pick pivot elements that divide into the other elements exactly.
%    If you can choose a pivot element that is a power of two, there will
%    be no roundoff error at that step.  But if the pivot is small, the
%    elements in the unreduced matrix might grow larger and subsequent steps
%    might have larger roundoff errors.
%
%    You should know that "mulligan" is golf terminology for "OOPS, I want
%    to take that shot over".  Good luck!
%
%    See also LUGUI.

if nargin == 0

   % Initial screen

   shg
   clf
   axes('pos',[0 0 1 1]);
   axis off
   set(gcf,'double','on','name','Pivot Pickin'' Golf', ...
      'menu','none','numbertitle','off','color','white')
   text('units','norm','pos',[.25,.75],'color',[0 0.65 0], ...
      'fontweight','bold','fontsize',16, ...
      'string',sprintf('Welcome to Pivot Pickin'' Golf'))
   text('units','norm','pos',[.03 .60],'fontweight','bold','string','Course:')
   for k = 1:6
      switch k
         case 1, 
            str = 'magic';
         case 2, 
            str = 'testmats';
         otherwise,
            str = ['rand #' int2str(k-2)];
      end
      b(k) = uicontrol('units','norm','pos',[.14*k .57 .12 .06], ...
         'style','toggle','string',str,'back','w');
   end
   text('units','norm','pos',[.03 .45],'fontweight','bold','string','Strategy:')
   str = {'pick','diagonal','partial','complete'};
   for k = 1:4
      b(k+6) = uicontrol('units','norm','pos',[.14*k .42 .12 .06], ...
         'style','toggle','string',str{k},'back','w');
   end
   stop = uicontrol('style','toggle','string','X','fontweight','bold', ...
      'back','white','units','norm','pos',[.96 .96 .04 .04]);
   uicontrol('units','norm','pos',[.02 .02 .10 .05], ...
      'string','help','back','white','callback','helpwin pivotgolf')
   bvals = [];
   while sum(bvals) < 2
      if get(stop,'val'), break, end
      pause(.05)
      bvals = cell2mat(get(b,'val'));
   end
   if get(stop,'val')
      close(gcf)
      return
   end
   for k = find(bvals)'
      switch k
         case 1, course = 'magic';
         case 2, course = 'testmats';
         case {3,4,5,6}, course = k-2;
         otherwise, pivotstrat = get(b(k),'string');
      end
   end
elseif nargin == 1
   pivotstrat = 'pick';
end

if isnumeric(course)
   rand('state',course)
else
   course = lower(course);
end

% Loop over nine holes (matrices).

score = 0;
h = 1;
A = [];
while h <= 9
   if isempty(A)
      
      % Generate the matrix.

      switch course
         case 'magic'
            n = 2+ceil(2/3*h);
            switch h
               case {3,6,9}
                  A = golub(n);
               otherwise
                  A = magic(n);
            end
         case 'testmats'
            n = h;
            switch h
               case 1
                  n = 7;
                  e = ones(n,1);
                  A = full(spdiags([e (-3:3)' e],[-1 0 1],n,n));
               case 2
                  n = 5;
                  A = vander((-2:2)');
               case 3
                  A = gallery(n);
               case 4
                  A = hadamard(n);
               case 5
                  A = gallery(n);
               case 6
                  A = pascal(n);
               case 7
                  n = 6;
                  A = pascal(n);
                  A(n,n) = A(n,n)-1;
               case 8
                  n = 5;
                  A = 27720*hilb(n);
               case 9
                  n = 6;
                  U = eye(n,n) - triu(ones(n,n),1);
                  A = U'*U;
            end
         otherwise
            n = ceil(2+3*rand);
            A = round(10*(2*rand(n,n)-1));
      end
   end

   % Use LUGUI to compute the LU decomposition

   [L,U,p,q] = lugui(A,pivotstrat);
   pause(2);

   % Score

   R = (L*U - A(p,q));
   Leps = L.*(abs(L)<1000*norm(L,1)*eps);
   Ueps = U.*(abs(U)<1000*norm(U,1)*eps);
   show(abs(R)+abs(Leps)+abs(Ueps));
   if all(isfinite(R(:)))
      s = ceil(4*(norm(R(:),1)+norm(Leps(:),1)+norm(Ueps(:),1))/eps)/4;
   else
      s = Inf;
   end

   % Report the score and decide what to do next.

   set(gcf,'name','Pivot Pickin'' Golf')
   text('units','pixels','pos',[20+50*n,20+(n+2)*30], ...
      'fontweight','bold','fontsize',12, ...
      'color',[0 0.65 0],'string',sprintf('hole #%d',h))
   text('units','pixels','pos',[50*(n-1)+25,55], ...
      'fontweight','bold','fontsize',12,'color',[0 0 0.90], ...
      'string',sprintf('score = %s, total = %s',sph(s),sph(score+s)))
   stop = uicontrol('style','toggle','string','X','fontweight','bold', ...
      'back','w','pos',[100*n+75 30*n+65 25 25]);
   if isequal(pivotstrat,'pick')
      next = uicontrol('units','pixels','pos',[50*(n-1) 10 90 20], ...
         'style','toggle','fontweight','bold', ...
         'background','white','string','next');
         if h==9, set(next,'string','finish'), end
      mulligan = uicontrol('units','pixels','pos',[50*(n+1) 10 90 20], ...
         'style','toggle','fontweight','bold', ...
         'background','white','string','mulligan');
      uics = [stop next mulligan];
      while all(cell2mat(get(uics,'val'))==0)
         drawnow
      end
      if get(mulligan,'val'), continue, end
   else
      pause(3)
   end
   score = score + s;
   if get(stop,'val'), break, end
   h = h + 1;
   A = [];
end

% Final screen

clf
set(gcf,'double','on','name','Pivot Pickin'' Golf', ...
   'pos','default','menu','none','numbertitle','off','color','white')
axes('pos',[0 0 1 1]);
axis off
text('units','norm','pos',[.15,.60], ...
   'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
   'string',sprintf('Thanks for playing Pivot Pickin'' Golf.'))
if score == 0
   text('units','norm','pos',[.15,.50],...
      'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
      'string','Perfect score.  Congratulations!')
elseif score == Inf
   text('units','norm','pos',[.15,.50], ...
      'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
      'color',[0 0.65 0],'string','Your score was infinite.')
   text('units','norm','pos',[.15,.40], ...
      'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
      'color',[0 0.65 0],'string','You have to avoid dividing by zero.')
else
   text('units','norm','pos',[.15,.50], ...
      'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
      'string',sprintf('Your score was %s eps.',sph(score)))
   if score > 100
      text('units','norm','pos',[.15,.40], ...
         'fontweight','bold','fontsize',16,'color',[0 0.65 0], ...
         'string','Better luck next time.')
   end
end
uicontrol('style','toggle','units','norm','pos',[.96 .96 .04 .04], ...
   'string','X','fontweight','bold','callback','close(gcf)')
if nargout > 0
   scoreout = score;
   pause(3)
end


%------------------------------------------------------------

function show(A)
% Same code as LUGUI.
clf
axes('pos',[0 0 1 1]);
axis off
[m,n] = size(A);
dx = 100;
dy = 30;
Acolor = [0 0 0];
for j = 1:n
   for i = 1:m
      t(i,j) = text('units','pixels','string',spf(A(i,j)), ...
         'fontname','courier','fontweight','bold','fontsize',14, ...
         'horiz','right','color',Acolor, ...
         'pos',[20+j*dx 20+(m+2-i)*dy]);
   end
end

%------------------------------------------------------------

function s = spf(aij)
% Subfunction to format text strings
if aij == 0
   f = '%10.0f';
elseif (abs(aij) < 1.e-4) | (abs(aij) >= 1.e4) 
   f = '%10.1e';
else
   f = '%10.4f';
end
s = sprintf(f,aij);

%------------------------------------------------------------

function s = sph(x)
% Format text strings that are integer multiples of 1/4.
if x == 0
   f = '%d';
elseif x == round(x);
   f = '%1.0f';
elseif x == round(2*x)/2;
   f = '%2.1f';
else
   f = '%3.2f';
end
s = sprintf(f,x);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产综合91精品麻豆| 欧美浪妇xxxx高跟鞋交| 91视频观看视频| 在线播放日韩导航| 日本一区二区三区在线观看| 亚洲一区二区三区美女| 国产精品白丝av| 欧美日韩国产不卡| 中文字幕在线一区| 国产一区不卡精品| 91精品国产欧美日韩| 亚洲精品国产第一综合99久久| 激情五月婷婷综合网| 51午夜精品国产| 亚洲日本丝袜连裤袜办公室| 激情综合色综合久久| 欧美精品自拍偷拍| 亚洲乱码日产精品bd| 国产电影精品久久禁18| 8v天堂国产在线一区二区| 亚洲六月丁香色婷婷综合久久| 久久99蜜桃精品| 777久久久精品| 亚洲高清视频的网址| 91蜜桃在线免费视频| 国产精品免费免费| 成人在线视频一区| 国产欧美一区二区精品仙草咪| 国产精品一区在线观看乱码| 精品欧美一区二区三区精品久久| 日本不卡一区二区三区| 欧美精品三级在线观看| 亚洲午夜精品网| 欧美日韩一区二区在线观看 | 韩国欧美国产1区| 日韩一区二区精品葵司在线| 视频一区二区中文字幕| 91精品国产免费久久综合| 日本欧美在线观看| 91精品国产丝袜白色高跟鞋| 日韩av电影一区| 日韩午夜精品视频| 紧缚捆绑精品一区二区| 精品国产乱码久久久久久久| 国产中文一区二区三区| 国产欧美一区二区精品秋霞影院| 成人午夜伦理影院| 中文字幕中文字幕在线一区| 色伊人久久综合中文字幕| 亚洲午夜精品网| 欧美一区二区三区四区视频| 国产一区二区网址| 国产精品家庭影院| 在线免费观看成人短视频| 亚洲第一狼人社区| 欧美大片一区二区| 粉嫩一区二区三区性色av| 亚洲人妖av一区二区| 欧美亚洲国产bt| 蓝色福利精品导航| 欧美经典一区二区| 欧美亚洲动漫制服丝袜| 狠狠网亚洲精品| 国产精品盗摄一区二区三区| 777a∨成人精品桃花网| 国产伦精品一区二区三区在线观看| 国产精品理论片在线观看| 在线免费不卡视频| 国产在线播精品第三| 亚洲天堂a在线| 欧美一区二区人人喊爽| 国产精品538一区二区在线| 一区二区三区电影在线播| 精品国精品自拍自在线| 99精品视频在线免费观看| 日本女人一区二区三区| 中文字幕一区二区三区蜜月| 欧美理论片在线| 99久久99久久久精品齐齐| 天堂影院一区二区| 国产精品高清亚洲| 日韩欧美一二三四区| 97精品久久久久中文字幕| 美女尤物国产一区| 亚洲一区免费视频| 久久青草国产手机看片福利盒子| 日本电影欧美片| 国产91精品一区二区麻豆网站 | 免费久久精品视频| 亚洲乱码国产乱码精品精98午夜| 精品国产百合女同互慰| 欧美色男人天堂| 99久久99久久久精品齐齐| 精品一区二区在线免费观看| 亚洲综合区在线| 国产精品嫩草影院av蜜臀| 精品国产一区二区亚洲人成毛片 | 成人一区二区视频| 日韩黄色免费网站| 亚洲尤物在线视频观看| 中文字幕一区二区三区色视频| 久久久久久电影| 日韩色视频在线观看| 欧美精品v国产精品v日韩精品| www.欧美日韩| 99精品国产一区二区三区不卡| 国产成人免费视频一区| 国产一区二区三区久久悠悠色av| 亚洲va韩国va欧美va精品| 亚洲激情av在线| 亚洲特级片在线| 国产精品久久久久影院色老大 | 99久久久国产精品| 久久精品国产免费看久久精品| 久久日一线二线三线suv| 一本在线高清不卡dvd| 一区二区三区日韩欧美精品| 在线电影欧美成精品| 不卡在线视频中文字幕| 男男视频亚洲欧美| 一区二区三区日韩精品| 久久精品视频网| 欧美视频一区二区在线观看| 久久国产精品99久久久久久老狼| 欧美不卡一区二区三区四区| 国产成人精品综合在线观看| 日韩欧美一区在线观看| 在线免费观看成人短视频| 久久国产日韩欧美精品| 欧美二区乱c少妇| 日韩精品一二三| 乱中年女人伦av一区二区| 日本午夜精品一区二区三区电影| 亚洲国产成人在线| 日韩一区二区影院| 欧美日韩精品一区二区天天拍小说 | 欧美日韩久久不卡| 黄一区二区三区| 激情图区综合网| 国产精品亚洲午夜一区二区三区 | 国产精品萝li| 精品欧美久久久| 精品福利视频一区二区三区| 欧美日韩一区二区三区视频 | 亚洲一区二区av电影| 中文字幕一区二区三区不卡在线| 男人的j进女人的j一区| 一区二区三区四区在线播放 | 欧美日韩视频在线观看一区二区三区| 久久不见久久见免费视频7| 不卡高清视频专区| 日韩专区欧美专区| 亚洲欧洲日韩在线| 91精品久久久久久久久99蜜臂| 92国产精品观看| 这里是久久伊人| 久久品道一品道久久精品| 一区二区三区小说| 加勒比av一区二区| 欧美中文字幕亚洲一区二区va在线 | 国产传媒日韩欧美成人| 大美女一区二区三区| 欧洲人成人精品| 欧美xxxxx牲另类人与| 亚洲国产你懂的| 国产一区亚洲一区| 在线视频国内自拍亚洲视频| 日韩欧美中文字幕公布| 日本不卡在线视频| 国产精品福利av| 欧美日韩一区三区四区| 久久久久久毛片| 色中色一区二区| 99久久精品免费| 国产精品自在欧美一区| 免费在线观看一区| 亚洲精品国产视频| ●精品国产综合乱码久久久久| 欧洲国内综合视频| 一区二区三区小说| eeuss国产一区二区三区| 亚洲三级电影全部在线观看高清| 久久精品99国产国产精| 欧美精品色一区二区三区| 人人超碰91尤物精品国产| 97精品视频在线观看自产线路二| 午夜精品久久久久久久| 亚洲精品成人天堂一二三| 国产九色精品成人porny| 91精品在线麻豆| 亚洲夂夂婷婷色拍ww47| 91啪九色porn原创视频在线观看| 久久色.com| 国内精品久久久久影院薰衣草| 欧美视频一区二区三区四区| 成人欧美一区二区三区| 日韩一二在线观看| 五月天亚洲婷婷| 欧美巨大另类极品videosbest| 亚洲线精品一区二区三区八戒|