bisect.m

来自「国外计算机科学教材系列 numerial method using matla」· M 代码 · 共 43 行

M
43
字号
function [c,err,yc]=bisect(f,a,b,delta)%Input - f is the function input as a string 'f'%	    - a and b are the left and right endpoints%	    - delta is the tolerance%Output - c is the zero%	     - yc= f(c)% 	     - err is the error estimate for c% NUMERICAL METHODS: MATLAB Programs%(c) 1999 by John H. Mathews and Kurtis D. Fink%To accompany the textbook:%NUMERICAL METHODS Using MATLAB,%by John H. Mathews and Kurtis D. Fink%ISBN 0-13-270042-5, (c) 1999%PRENTICE HALL, INC.%Upper Saddle River, NJ 07458ya=feval(f,a);yb=feval(f,b);if ya*yb > 0,break,endmax1=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;	elseif yb*yc>0		b=c;		yb=yc;	else		a=c;		ya=yc;	end	if b-a < delta, break,endendc=(a+b)/2;err=abs(b-a);yc=feval(f,c);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?