CyRhmU.jpeg
²é¿´: 823  |  »Ø¸´: 4
µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû

wtisunday

ľ³æ (ÕýʽдÊÖ)

[ÇóÖú] mÎļþµ÷ÓÃÎÊÌâ

´óÏÀÃÇ£¬ÎÒÒÀ¾Ý½Ì¿ÆÊé±àÁËÒ»¸ö¶þ·Ö·¨µÄ³ÌÐò£¨±ê×¼µÄ°¡£©£¬È»ºóµ÷ÓõÄʱºò×ÜÊdzöÏÖÈçÏÂÇé¿ö£¬»¹Çë´Í½Ì£¡±¾ÈËÄ˳õѧ²ËÄñ¼¶µÄ
f=inline('x^3-x-1');
>> bisect(f,1,2)
??? Error using ==> feval
Undefined function or method 'f' for input arguments of type 'double'.

Error in ==> bisect at 10
ya=feval('f',a)
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wtisunday

ľ³æ (ÕýʽдÊÖ)

³öÀ´ÁË£¬¸çÃÇ£¬Ð»Ð»Á˰¡
4Â¥2011-12-01 11:38:23
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
²é¿´È«²¿ 5 ¸ö»Ø´ð

dbb627

ÈÙÓþ°æÖ÷ (ÖøÃûдÊÖ)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

wtisunday(½ð±Ò+10): °æÖ÷?䏸Á¦°¡ 2011-12-01 12:04:32
CODE:
function [approx_root,n]=bisect(f,a,b)
%a,bΪ¸ùµÄÇø¼ä
fa=feval(f,a)
fb=feval(f,b)
n=0;
while(abs(b-a)> 0.0001)
     c=(a+b)/2;
     approx_root=c;
         fc=feval(f,c)
     [a,c,b;fa,fc,fb];
     n=n+1;
if ( sign(fb) * sign(fc)<=0)
            a=c;
            fa=fc;
          else
            b=c;
            fb=fc;
          end
        end

>> f=inline('x^3-x-1');
>> bisect(f,1,2)

ans =

    1.3248



>> f(1.3248)

ans =

  3.4991e-004
The more you learn, the more you know, the more you know, and the more you forget. The more you forget, the less you know. So why bother to learn.
2Â¥2011-12-01 10:54:52
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wtisunday

ľ³æ (ÕýʽдÊÖ)

function [c,err,yc]=bisect(f,a,b,delta)
% fÊÇËùÒªÇó½âµÄº¯Êý
% aºÍb·Ö±ðΪÓиùÇø¼äµÄ×óÓÒÏÞ
% deltaÊÇÔÊÐíµÄÎó²î½ç
% cΪËùÇó½üËÆÖµ
% ycΪº¯ÊýfÔÚcÉϵĺ¯ÊýÖµ
% errΪcµÄÎó²î¹À¼Æ
if nargin<4 delta=1e-5;
end
ya=feval('f',a)
yb=feval('f',b)
if yb==0,c=b,return,
end
if ya*yb>0,
    disp('(a,b)²»ÊÇÓиùÇø¼ä');
    return
end
max1=1+round((log(b-a)-log(delta))/log(2));
for k=1:max1
    c=(a+b)/2;
    yc=feval('f',c);
    if yc==0 a=c;b=c;break,
    elseif yb*yc>0
        b=c;yb=yc;
    else
        a=c;ya=yc;
    end
    if (b-a) end
k,c=(a+b)/2,err=abs(b-a),yc=feval('f',c)

ÎÒÕâ¸öÄijö´íÁËÂð
3Â¥2011-12-01 11:23:23
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û