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

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

?? quad_m.m

?? 分別給出利用自適應Simpson積分的數值積分方法(QUAD.m)和自適應Lobatto的數值積分算法(QUADL.m)。
?? M
字號:
function [Q,fcnt] = quad_m(funfcn,a,b,tol,trace,varargin)
%QUAD_M   Numerically evaluate integral, adaptive Simpson quadrature.
%   difference with QUAD: QUAD_M accepts vector arguments
%
%   Q = QUAD(FUN,A,B) tries to approximate the integral of function
%   FUN from A to B to within an error of 1.e-6 using recursive
%   adaptive Simpson quadrature.  The function Y = FUN(X) should
%   accept a column-vector argument X and return a column-vector
%   result Y, the integrand evaluated at each element of X.
%   The function should return a matrix when one of the additional
%   arguments (see below) is a row-vecor. The resulting matrix should
%   have integrand evaluated at each element of X in the column-direction
%   and of the argument in the row-direction.
%
%
%   Q = QUAD(FUN,A,B,TOL) uses an absolute error tolerance of TOL 
%   instead of the default, which is 1.e-6.  Larger values of TOL
%   result in fewer function evaluations and faster computation,
%   but less accurate results.  The QUAD function in MATLAB 5.3 used
%   a less reliable algorithm and a default tolerance of 1.e-3.
%
%   [Q,FCNT] = QUAD(...) returns the number of function evaluations.
%
%   QUAD(FUN,A,B,TOL,TRACE) with non-zero TRACE shows the values
%   of [fcnt a b-a Q] during the recursion.
%
%   QUAD(FUN,A,B,TOL,TRACE,P1,P2,...) provides for additional 
%   arguments P1, P2, ... to be passed directly to function FUN,
%   FUN(X,P1,P2,...).  Pass empty matrices for TOL or TRACE to
%   use the default values.
%   The additional arguments can be vectors.
%
%   Use array operators .*, ./ and .^ in the definition of FUN
%   so that it can be evaluated with a vector argument.
%
%   Function QUADL may be more efficient with high accuracies
%   and smooth integrands.
%
%   Example:
%       FUN can be specified three different ways.
%
%       A string expression involving a single variable:
%          Q = quad('1./(x.^3-2*x-5)',0,2);
%
%       An inline object:
%          F = inline('1./(x.^3-2*x-5)');
%          Q = quad(F,0,2);
%
%       A function handle:
%          Q = quad(@myfun,0,2);
%          where myfun.m is an M-file:
%             function y = myfun(x)
%             y = 1./(x.^3-2*x-5);
%
%   See also QUADL, DBLQUAD, INLINE, @.

%   Based on "adaptsim" by Walter Gander.  
%   Ref: W. Gander and W. Gautschi, "Adaptive Quadrature Revisited", 1998.
%   http://www.inf.ethz.ch/personal/gander
%   Copyright 1984-2001 The MathWorks, Inc. 

%   Based on QUAD. (see above)
%   M.F.P. Tolsma, Signals, Systems and Control Group, Applied Physics, TU Delft
%   http://www.tn.tudelft.nl/mmr
%   copyright remains by author

%   $Revision: 1.4 $  $Date: 2002/01/21 11:45:00 $

mxsize=1;
for cnt=1:length(varargin)
    tval=length(varargin{cnt});
    if (tval>1)
        if mxsize==1
            mxsize=tval;
        else
            if ~(mxsize==tval)
                error('The optional arguments must either be a scalar or an fixed sized row-vector')
            end;
        end;
    end;
end;

f = fcnchk(funfcn);
if nargin < 4 | isempty(tol), tol = 1.e-6; end;
if nargin < 5 | isempty(trace), trace = 0; end;

% Initialize with three unequal subintervals.
h = 0.13579*(b-a);
x = [a a+h a+2*h (a+b)/2 b-2*h b-h b];
y = feval(f, x, varargin{:});
fcnt = 7;

% Fudge endpoints to avoid infinities.
% for each element of vector y
if ~all(isfinite(y(:,1))) | ~all(isfinite(y(:,7))) %check only when there are at least some problems
    for cnt=1:mxsize
        if ~isfinite(y(cnt,1))
            for cnt2=1:length(varargin)
                varsubset{cnt2}=varargin{cnt2}(1);
            end;
            y(cnt,1) = feval(f,a+eps*(b-a),varsubset{:});
            fcnt = fcnt+1;
        end;
        if ~isfinite(y(cnt,7))
            for cnt2=1:length(varargin)
                if length(varargin{cnt2})>1
                    varsubset{cnt2}=varargin{cnt2}(13)
                else
                    varsubset{cnt2}=varargin{cnt2}(1);
                end;
            end;
            y(cnt,13) = feval(f,a+eps*(b-a),varsubset{:});
            fcnt = fcnt+1;
        end;
    end;
end;

% Call the recursive core integrator.
hmin = eps/1024*abs(b-a);
[Q(:,1),fcnt,warn(1)] = ...
   quadstep(f,x(1),x(3),y(:,1),y(:,2),y(:,3),tol,trace,fcnt,hmin,varargin{:});
[Q(:,2),fcnt,warn(2)] = ...
   quadstep(f,x(3),x(5),y(:,3),y(:,4),y(:,5),tol,trace,fcnt,hmin,varargin{:});
[Q(:,3),fcnt,warn(3)] = ...
   quadstep(f,x(5),x(7),y(:,5),y(:,6),y(:,7),tol,trace,fcnt,hmin,varargin{:});
Q = sum(Q,2);
warn = max(warn);

switch warn
   case 1
      warning('Minimum step size reached; singularity possible.')
   case 2
      warning('Maximum function count exceeded; singularity likely.')
   case 3
      warning('Infinite or Not-a-Number function value encountered.')
   otherwise
      if ~all(isfinite(Q))
          warning('Some Infinite or Not-a-Number function values encountered.')
      end
end

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

function [Q,fcnt,warn] = quadstep (f,a,b,fa,fc,fb,tol,trace,fcnt,hmin,varargin)
%QUADSTEP  Recursive core routine for function QUAD.

maxfcnt = 10000;

% Evaluate integrand twice in interior of subinterval [a,b].
h = b - a;
c = (a + b)/2;
if abs(h) < hmin | c == a | c == b
   % Minimum step size reached; singularity possible.
   Q = h*fc;
   warn = 1;
   return
end
x = [(a + c)/2, (c + b)/2];
y = feval(f, x, varargin{:});
fcnt = fcnt + 2;
if fcnt > maxfcnt
   % Maximum function count exceeded; singularity likely.
   Q = h*fc;
   warn = 2;
   return
end
fd = y(:,1);
fe = y(:,2);

% Three point Simpson's rule.
Q1 = (h/6)*(fa + 4*fc + fb);

% Five point double Simpson's rule.
Q2 = (h/12)*(fa + 4*fd + 2*fc + 4*fe + fb);

% One step of Romberg extrapolation.
Q = Q2 + (Q2 - Q1)/15;

if ~any(isfinite(Q))    %all are infinite or NAN (no one is finite)
   % Infinite or Not-a-Number function value encountered.
   warn = 3;
   return
end

% Check accuracy of integral over this subinterval.
if all((abs(Q2 - Q) <= tol))   %all are below than tolerance
   warn = 0;
   return
end;

varlist=find(isfinite(Q) & (abs(Q2 - Q) > tol));    %these must still be done
if ~(length(varlist)==length(fa))             %more arguments as the ones that must be done
    targ=varargin;
    for cnt=1:length(targ)
        if length(targ{cnt})>1
            varargin{cnt}=targ{cnt}(varlist);
        else
            varargin{cnt}=targ{cnt};
        end;
    end;
end;


if trace
   disp(sprintf('%8.0f %16.10f %18.8e %16.10f',fcnt,a,h,Q))
end

% Subdivide into two subintervals.
[Qac,fcnt,warnac] = quadstep(f,a,c,fa(varlist),fd(varlist),fc(varlist),tol,trace,fcnt,hmin,varargin{:});
[Qcb,fcnt,warncb] = quadstep(f,c,b,fc(varlist),fe(varlist),fb(varlist),tol,trace,fcnt,hmin,varargin{:});
Q(varlist) = Qac + Qcb;
warn = max(warnac,warncb);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频一区在线| 国v精品久久久网| 欧美美女直播网站| 亚欧色一区w666天堂| 欧美午夜在线一二页| 丝袜美腿成人在线| 91精品麻豆日日躁夜夜躁| 日韩黄色免费电影| 久久色在线观看| 99久久99久久精品免费观看| 综合激情成人伊人| 欧美精品 国产精品| 蜜臀久久久久久久| 国产欧美日韩精品一区| av在线不卡免费看| 午夜婷婷国产麻豆精品| 欧美大胆一级视频| 不卡大黄网站免费看| 亚洲大型综合色站| 久久这里只有精品视频网| 99久久久免费精品国产一区二区| 亚洲精品乱码久久久久久久久| 欧美性色黄大片| 国产一区二区三区美女| 亚洲三级在线免费| 欧美一区二区三区小说| 粉嫩在线一区二区三区视频| 亚洲国产综合人成综合网站| 亚洲精品在线一区二区| 91视频一区二区三区| 日本不卡一二三| 亚洲婷婷在线视频| 精品国产麻豆免费人成网站| 91片在线免费观看| 美女性感视频久久| 一区二区三区国产精品| www久久精品| 欧美日韩视频第一区| 国产盗摄精品一区二区三区在线| 一区二区三区精品| 国产亚洲一二三区| 欧美一区二区啪啪| 色婷婷久久久综合中文字幕| 久久精品二区亚洲w码| 一区二区在线观看免费视频播放| 精品国产一区二区三区久久久蜜月| 日本韩国精品在线| 成人一区二区在线观看| 蜜臀av在线播放一区二区三区| 一区二区三区日韩在线观看| 国产日韩高清在线| 日韩精品一区二区三区中文精品 | 亚洲国产欧美在线人成| 国产欧美一区二区精品忘忧草 | 欧美日韩成人综合| heyzo一本久久综合| 蜜臀久久久久久久| 婷婷六月综合网| 亚洲精品一卡二卡| 成人欧美一区二区三区1314| 26uuu久久综合| 欧美一级电影网站| 欧美老肥妇做.爰bbww| 一本久道久久综合中文字幕| 波多野结衣中文一区| 国产精品2024| 国产乱妇无码大片在线观看| 久久99精品久久久久久国产越南| 亚洲成av人综合在线观看| 亚洲精品成人在线| 亚洲精选视频免费看| 亚洲欧美日韩中文播放| 国产精品久久久久aaaa| 国产精品三级久久久久三级| 国产亚洲成av人在线观看导航| 欧美本精品男人aⅴ天堂| 日韩欧美亚洲国产精品字幕久久久| 欧美精品在欧美一区二区少妇| 欧美亚州韩日在线看免费版国语版| 99精品偷自拍| 色8久久精品久久久久久蜜| 一本一道综合狠狠老| 色综合天天综合在线视频| 色婷婷精品大视频在线蜜桃视频| 白白色 亚洲乱淫| 91蜜桃免费观看视频| 日本乱人伦aⅴ精品| 欧美性三三影院| 欧美一级淫片007| 精品国产一区二区三区忘忧草| 欧美精品一区二区久久婷婷 | 国产乱码精品一区二区三区av| 国产综合久久久久久久久久久久| 国产乱人伦偷精品视频免下载| 国产成人综合在线播放| 99re这里都是精品| 欧美丝袜丝交足nylons图片| 欧美日韩国产精品自在自线| 91精品国产色综合久久不卡电影 | 国产日韩三级在线| 国产精品无码永久免费888| 亚洲婷婷在线视频| 午夜精品久久久久久久| 国内精品视频一区二区三区八戒 | 男女激情视频一区| 久久不见久久见中文字幕免费| 狠狠色丁香久久婷婷综合_中| 国产a久久麻豆| 91福利社在线观看| 日韩欧美一区在线| 国产精品久久久久久久裸模| 亚洲永久精品大片| 美女视频黄 久久| 972aa.com艺术欧美| 日韩欧美国产电影| 中文字幕人成不卡一区| 日韩不卡手机在线v区| 粉嫩嫩av羞羞动漫久久久| 欧美三级电影在线观看| 久久精品一区二区三区不卡牛牛| 一区二区视频在线| 国产一区二区影院| 欧美三级一区二区| 国产亚洲成年网址在线观看| 亚洲一区二区三区国产| 国产在线一区二区| 欧美日韩一区二区在线观看 | 一本久道久久综合中文字幕| 91精品国产入口| 中文字幕中文在线不卡住| 五月天精品一区二区三区| 粉嫩绯色av一区二区在线观看| 欧美电影在线免费观看| 亚洲人被黑人高潮完整版| 久草中文综合在线| 欧美人狂配大交3d怪物一区| 国产精品沙发午睡系列990531| 日本不卡的三区四区五区| 91香蕉视频污| 日本一区二区综合亚洲| 男女视频一区二区| 欧美日韩一区二区三区视频| 亚洲国产成人午夜在线一区| 麻豆久久久久久久| 欧美美女一区二区| 一区二区不卡在线播放 | 国产精品无人区| 国内外成人在线视频| 欧美一区二区二区| 亚洲一区二区三区中文字幕| 懂色av噜噜一区二区三区av| 日韩精品一区二区三区视频播放| 亚洲国产另类精品专区| 91丨九色丨蝌蚪丨老版| 国产精品久久三区| 国产精品996| 国产清纯在线一区二区www| 久久国产剧场电影| 日韩一级黄色大片| 日本不卡一二三| 日韩久久精品一区| 蜜桃精品视频在线| 日韩欧美一二区| 美女一区二区久久| 欧美成人aa大片| 久久成人综合网| 亚洲精品在线观看网站| 精品一区二区三区视频 | 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 国产精品国产三级国产有无不卡 | 亚洲视频一区二区在线| 成人免费av网站| 日韩一区有码在线| 91在线播放网址| 亚洲国产日韩一区二区| 欧美精品第一页| 男女男精品网站| 精品电影一区二区| 国产丶欧美丶日本不卡视频| 欧美国产成人精品| 91麻豆精东视频| 亚洲乱码中文字幕| 精品视频一区二区不卡| 日韩电影一区二区三区| 精品福利一二区| 国产成人欧美日韩在线电影| 国产欧美日韩久久| 91色综合久久久久婷婷| 香蕉加勒比综合久久| 日韩视频永久免费| 丁香激情综合国产| 亚洲精品高清在线观看| 制服丝袜在线91| 国产成人在线视频免费播放| 欧美激情中文字幕一区二区| 99精品视频在线观看免费| 偷窥少妇高潮呻吟av久久免费| 日韩亚洲欧美一区| 国产高清不卡一区| 亚洲久本草在线中文字幕|