{"id":2782,"date":"2025-06-07T07:40:36","date_gmt":"2025-06-07T07:40:36","guid":{"rendered":"https:\/\/diznr.com\/?p=2782"},"modified":"2025-06-07T07:40:36","modified_gmt":"2025-06-07T07:40:36","slug":"computer-science-numerical-methods-bisection-example-method","status":"publish","type":"post","link":"https:\/\/www.reilsolar.com\/pdf\/computer-science-numerical-methods-bisection-example-method\/","title":{"rendered":"Computer Science\/Numerical Methods\/ Bisection method example"},"content":{"rendered":"<p>Computer Science\/Numerical Methods\/ Bisection method example<\/p>\n<p>[fvplayer id=&#8221;110&#8243;]<\/p>\n<h3 class=\"\" data-start=\"0\" data-end=\"65\"><strong data-start=\"4\" data-end=\"63\">Bisection Method \u2013 Numerical Methods (Computer Science)<\/strong><\/h3>\n<p class=\"\" data-start=\"67\" data-end=\"288\">The <strong data-start=\"71\" data-end=\"91\">Bisection Method<\/strong> is a root-finding technique that applies to <strong data-start=\"136\" data-end=\"160\">continuous functions<\/strong> where the root lies between two given points. It is a simple and reliable method based on the <strong data-start=\"255\" data-end=\"285\">Intermediate Value Theorem<\/strong>.<\/p>\n<h3 data-start=\"295\" data-end=\"336\"><strong data-start=\"298\" data-end=\"334\">\u00a0Algorithm of Bisection Method<\/strong><\/h3>\n<p class=\"\" data-start=\"337\" data-end=\"543\">\u00a0Select two points <strong data-start=\"359\" data-end=\"364\">a<\/strong> and <strong data-start=\"369\" data-end=\"374\">b<\/strong> such that <span class=\"katex\"><span class=\"katex-mathml\">f(a)f(a)<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">a<\/span><span class=\"mclose\">)<\/span><\/span><\/span><\/span> and <span class=\"katex\"><span class=\"katex-mathml\">f(b)f(b)<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">b<\/span><span class=\"mclose\">)<\/span><\/span><\/span><\/span> have <strong data-start=\"416\" data-end=\"434\">opposite signs<\/strong> (i.e., <span class=\"katex\"><span class=\"katex-mathml\">f(a)\u00d7f(b)&lt;0f(a) \\times f(b) &lt; 0<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">a<\/span><span class=\"mclose\">)<\/span><span class=\"mbin\">\u00d7<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">b<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">&lt;<\/span><\/span><span class=\"base\"><span class=\"mord\">0<\/span><\/span><\/span><\/span>), ensuring a root exists in between.<br data-start=\"505\" data-end=\"508\" \/>\u00a0Compute the midpoint <span class=\"katex\"><span class=\"katex-mathml\">cc<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><\/span><\/span><\/span>:<\/p>\n<p><span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">c=a+b2c = \\frac{a + b}{2}<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\"><span class=\"mfrac\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\">2<span class=\"mord mathnormal\">a<\/span><span class=\"mbin\">+<\/span><span class=\"mord mathnormal\">b<\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/p>\n<p class=\"\" data-start=\"579\" data-end=\"602\">\u00a0Check <span class=\"katex\"><span class=\"katex-mathml\">f(c)f(c)<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">c<\/span><span class=\"mclose\">)<\/span><\/span><\/span><\/span>:<\/p>\n<ul data-start=\"606\" data-end=\"861\">\n<li class=\"\" data-start=\"606\" data-end=\"654\">\n<p class=\"\" data-start=\"608\" data-end=\"654\">If <span class=\"katex\"><span class=\"katex-mathml\">f(c)=0f(c) = 0<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">c<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">0<\/span><\/span><\/span><\/span>, then <span class=\"katex\"><span class=\"katex-mathml\">cc<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><\/span><\/span><\/span> is the root.<\/p>\n<\/li>\n<li class=\"\" data-start=\"658\" data-end=\"743\">\n<p class=\"\" data-start=\"660\" data-end=\"743\">If <span class=\"katex\"><span class=\"katex-mathml\">f(a)\u00d7f(c)&lt;0f(a) \\times f(c) &lt; 0<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">a<\/span><span class=\"mclose\">)<\/span><span class=\"mbin\">\u00d7<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">c<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">&lt;<\/span><\/span><span class=\"base\"><span class=\"mord\">0<\/span><\/span><\/span><\/span>, then the root lies in <strong data-start=\"713\" data-end=\"723\">[a, c]<\/strong>, set <span class=\"katex\"><span class=\"katex-mathml\">b=cb = c<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">b<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><\/span><\/span><\/span>.<\/p>\n<\/li>\n<li class=\"\" data-start=\"747\" data-end=\"861\">\n<p class=\"\" data-start=\"749\" data-end=\"861\">Else, the root lies in <strong data-start=\"772\" data-end=\"782\">[c, b]<\/strong>, set <span class=\"katex\"><span class=\"katex-mathml\">a=ca = c<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">a<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><\/span><\/span><\/span>.<br data-start=\"800\" data-end=\"803\" \/>\u00a0Repeat the process until the error tolerance is met:<\/p>\n<\/li>\n<\/ul>\n<p><span class=\"katex-display\"><span class=\"katex\"><span class=\"katex-mathml\">\u2223b\u2212a\u2223&lt;tolerance|b &#8211; a| &lt; \\text{tolerance}<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord\">\u2223<\/span><span class=\"mord mathnormal\">b<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">a<\/span><span class=\"mord\">\u2223<\/span><span class=\"mrel\">&lt;<\/span><\/span><span class=\"base\"><span class=\"mord text\"><span class=\"mord\">tolerance<\/span><\/span><\/span><\/span><\/span><\/span><\/p>\n<h3 data-start=\"912\" data-end=\"984\"><strong data-start=\"915\" data-end=\"982\">\u00a0Example: Find the root of <span class=\"katex\"><span class=\"katex-mathml\">f(x)=x3\u2212x\u22122f(x) = x^3 &#8211; x &#8211; 2<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">x<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\"><span class=\"mord mathnormal\">x<\/span><span class=\"msupsub\"><span class=\"vlist-t\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\">3<\/span><\/span><\/span><\/span><\/span><\/span><\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">x<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord\">2<\/span><\/span><\/span><\/span> in [1, 2]<\/strong><\/h3>\n<h3 class=\"\" data-start=\"986\" data-end=\"1025\"><strong data-start=\"990\" data-end=\"1023\">Step 1: Check function values<\/strong><\/h3>\n<p class=\"\" data-start=\"1026\" data-end=\"1157\"><span class=\"katex\"><span class=\"katex-mathml\">f(1)=13\u22121\u22122=\u22122f(1) = 1^3 &#8211; 1 &#8211; 2 = -2<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord\">1<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">1<span class=\"msupsub\"><span class=\"vlist-t\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\">3<\/span><\/span><\/span><\/span><\/span><\/span><\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord\">1<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord\">2<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">\u2212<\/span><span class=\"mord\">2<\/span><\/span><\/span><\/span><br data-start=\"1055\" data-end=\"1058\" \/><span class=\"katex\"><span class=\"katex-mathml\">f(2)=23\u22122\u22122=4f(2) = 2^3 &#8211; 2 &#8211; 2 = 4<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord\">2<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">2<span class=\"msupsub\"><span class=\"vlist-t\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\">3<\/span><\/span><\/span><\/span><\/span><\/span><\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord\">2<\/span><span class=\"mbin\">\u2212<\/span><\/span><span class=\"base\"><span class=\"mord\">2<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\">4<\/span><\/span><\/span><\/span><br data-start=\"1086\" data-end=\"1089\" \/>Since <span class=\"katex\"><span class=\"katex-mathml\">f(1)\u00d7f(2)&lt;0f(1) \\times f(2) &lt; 0<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord\">1<\/span><span class=\"mclose\">)<\/span><span class=\"mbin\">\u00d7<\/span><\/span><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord\">2<\/span><span class=\"mclose\">)<\/span><span class=\"mrel\">&lt;<\/span><\/span><span class=\"base\"><span class=\"mord\">0<\/span><\/span><\/span><\/span>, a root exists between <strong data-start=\"1145\" data-end=\"1156\">1 and 2<\/strong>.<\/p>\n<h3 class=\"\" data-start=\"1159\" data-end=\"1185\"><strong data-start=\"1163\" data-end=\"1185\">Step 2: Iterations<\/strong><\/h3>\n<div class=\"overflow-x-auto contain-inline-size\">\n<table data-start=\"1186\" data-end=\"1607\">\n<thead data-start=\"1186\" data-end=\"1276\">\n<tr data-start=\"1186\" data-end=\"1276\">\n<th data-start=\"1186\" data-end=\"1198\">Iteration<\/th>\n<th data-start=\"1198\" data-end=\"1208\"><span class=\"katex\"><span class=\"katex-mathml\">aa<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">a<\/span><\/span><\/span><\/span><\/th>\n<th data-start=\"1208\" data-end=\"1218\"><span class=\"katex\"><span class=\"katex-mathml\">bb<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">b<\/span><\/span><\/span><\/span><\/th>\n<th data-start=\"1218\" data-end=\"1244\"><span class=\"katex\"><span class=\"katex-mathml\">c=a+b2c = \\frac{a+b}{2}<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">c<\/span><span class=\"mrel\">=<\/span><\/span><span class=\"base\"><span class=\"mord\"><span class=\"mfrac\"><span class=\"vlist-t vlist-t2\"><span class=\"vlist-r\"><span class=\"vlist\"><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\">2<\/span><\/span><span class=\"sizing reset-size6 size3 mtight\"><span class=\"mord mtight\"><span class=\"mord mathnormal mtight\">a<\/span><span class=\"mbin mtight\">+<\/span><span class=\"mord mathnormal mtight\">b<\/span><\/span><\/span><\/span><span class=\"vlist-s\">\u200b<\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/th>\n<th data-start=\"1244\" data-end=\"1257\"><span class=\"katex\"><span class=\"katex-mathml\">f(c)f(c)<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mord mathnormal\">f<\/span><span class=\"mopen\">(<\/span><span class=\"mord mathnormal\">c<\/span><span class=\"mclose\">)<\/span><\/span><\/span><\/span><\/th>\n<th data-start=\"1257\" data-end=\"1276\">Interval Change<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"1338\" data-end=\"1607\">\n<tr data-start=\"1338\" data-end=\"1381\">\n<td>1<\/td>\n<td>1<\/td>\n<td>2<\/td>\n<td>1.5<\/td>\n<td>-0.875<\/td>\n<td><span class=\"katex\"><span class=\"katex-mathml\">[1.5,2][1.5, 2]<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mopen\">[<\/span><span class=\"mord\">1.5<\/span><span class=\"mpunct\">,<\/span><span class=\"mord\">2<\/span><span class=\"mclose\">]<\/span><\/span><\/span><\/span><\/td>\n<\/tr>\n<tr data-start=\"1382\" data-end=\"1430\">\n<td>2<\/td>\n<td>1.5<\/td>\n<td>2<\/td>\n<td>1.75<\/td>\n<td>1.609<\/td>\n<td><span class=\"katex\"><span class=\"katex-mathml\">[1.5,1.75][1.5, 1.75]<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mopen\">[<\/span><span class=\"mord\">1.5<\/span><span class=\"mpunct\">,<\/span><span class=\"mord\">1.75<\/span><span class=\"mclose\">]<\/span><\/span><\/span><\/span><\/td>\n<\/tr>\n<tr data-start=\"1431\" data-end=\"1484\">\n<td>3<\/td>\n<td>1.5<\/td>\n<td>1.75<\/td>\n<td>1.625<\/td>\n<td>0.666<\/td>\n<td><span class=\"katex\"><span class=\"katex-mathml\">[1.5,1.625][1.5, 1.625]<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mopen\">[<\/span><span class=\"mord\">1.5<\/span><span class=\"mpunct\">,<\/span><span class=\"mord\">1.625<\/span><span class=\"mclose\">]<\/span><\/span><\/span><\/span><\/td>\n<\/tr>\n<tr data-start=\"1485\" data-end=\"1544\">\n<td>4<\/td>\n<td>1.5<\/td>\n<td>1.625<\/td>\n<td>1.5625<\/td>\n<td>-0.271<\/td>\n<td><span class=\"katex\"><span class=\"katex-mathml\">[1.5625,1.625][1.5625, 1.625]<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mopen\">[<\/span><span class=\"mord\">1.5625<\/span><span class=\"mpunct\">,<\/span><span class=\"mord\">1.625<\/span><span class=\"mclose\">]<\/span><\/span><\/span><\/span><\/td>\n<\/tr>\n<tr data-start=\"1545\" data-end=\"1607\">\n<td>5<\/td>\n<td>1.5625<\/td>\n<td>1.625<\/td>\n<td>1.5938<\/td>\n<td>0.184<\/td>\n<td><span class=\"katex\"><span class=\"katex-mathml\">[1.5625,1.5938][1.5625, 1.5938]<\/span><span class=\"katex-html\" aria-hidden=\"true\"><span class=\"base\"><span class=\"mopen\">[<\/span><span class=\"mord\">1.5625<\/span><span class=\"mpunct\">,<\/span><span class=\"mord\">1.5938<\/span><span class=\"mclose\">]<\/span><\/span><\/span><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p class=\"\" data-start=\"1609\" data-end=\"1665\">The root is approximately <strong data-start=\"1635\" data-end=\"1645\">1.5938<\/strong> with a small error.<\/p>\n<h3 data-start=\"1672\" data-end=\"1714\"><strong data-start=\"1675\" data-end=\"1714\">Python Code for Bisection Method<\/strong><\/h3>\n<div class=\"contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary\">\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"!whitespace-pre language-python\"><code class=\"!whitespace-pre language-python\"><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title function_\">f<\/span>(<span class=\"hljs-params\">x<\/span>):<br \/>\n<span class=\"hljs-keyword\">return<\/span> x**<span class=\"hljs-number\">3<\/span> - x - <span class=\"hljs-number\">2<\/span>  <span class=\"hljs-comment\"># Define the function<\/span><\/code><\/code><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title function_\">bisection<\/span>(<span class=\"hljs-params\">a, b, tol=<span class=\"hljs-number\">1e-6<\/span><\/span>):<br \/>\n<span class=\"hljs-keyword\">if<\/span> f(a) * f(b) &gt;= <span class=\"hljs-number\">0<\/span>:<br \/>\n<span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-string\">&#8220;Incorrect initial guesses.&#8221;<\/span>)<br \/>\n<span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-literal\">None<\/span><code class=\"!whitespace-pre language-python\"><code class=\"!whitespace-pre language-python\"><\/code><\/code><span class=\"hljs-keyword\">while<\/span> <span class=\"hljs-built_in\">abs<\/span>(b &#8211; a) &gt; tol:<br \/>\nc = (a + b) \/ <span class=\"hljs-number\">2<\/span><br \/>\n<span class=\"hljs-keyword\">if<\/span> f(c) == <span class=\"hljs-number\">0<\/span>:<br \/>\n<span class=\"hljs-keyword\">return<\/span> c <span class=\"hljs-comment\"># Exact root found<\/span><br \/>\n<span class=\"hljs-keyword\">elif<\/span> f(a) * f(c) &lt; <span class=\"hljs-number\">0<\/span>:<br \/>\nb = c<br \/>\n<span class=\"hljs-keyword\">else<\/span>:<br \/>\na = c<br \/>\n<span class=\"hljs-keyword\">return<\/span> (a + b) \/ <span class=\"hljs-number\">2<\/span><code class=\"!whitespace-pre language-python\"><code class=\"!whitespace-pre language-python\"><\/code><\/code>root = bisection(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>)<br \/>\n<span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-string\">&#8220;Root is:&#8221;<\/span>, root)<\/p>\n<\/div>\n<\/div>\n<h3 data-start=\"2183\" data-end=\"2227\"><strong data-start=\"2186\" data-end=\"2225\">\u00a0Applications of Bisection Method<\/strong><\/h3>\n<p class=\"\" data-start=\"2228\" data-end=\"2390\"><strong data-start=\"2230\" data-end=\"2262\">Solving non-linear equations<\/strong> in engineering &amp; science<br data-start=\"2287\" data-end=\"2290\" \/><strong data-start=\"2292\" data-end=\"2318\">Finding zero crossings<\/strong> in signal processing<br data-start=\"2339\" data-end=\"2342\" \/><strong data-start=\"2344\" data-end=\"2388\">Used in numerical simulations &amp; modeling<\/strong><\/p>\n<h3 class=\"\" data-start=\"2392\" data-end=\"2416\"><strong data-start=\"2396\" data-end=\"2414\">\u00a0Conclusion:<\/strong><\/h3>\n<p class=\"\" data-start=\"2417\" data-end=\"2570\">The <strong data-start=\"2421\" data-end=\"2441\">Bisection Method<\/strong> is a simple, <strong data-start=\"2455\" data-end=\"2465\">robust<\/strong> but <strong data-start=\"2470\" data-end=\"2478\">slow<\/strong> root-finding method. It is best suited for cases where guaranteed convergence is needed.<\/p>\n<h3 data-start=\"2417\" data-end=\"2570\"><a href=\"https:\/\/volkov.eng.ua.edu\/ME349\/2017-Fall-ME349-03-NumAnalysis1.pdf\" target=\"_blank\" rel=\"noopener\">Computer Science\/Numerical Methods\/ Bisection method example<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.amsi.org.au\/ESA_Senior_Years\/PDF\/PDFvcaa\/numerical3j.pdf\" target=\"_blank\" rel=\"noopener\">Numerical Methods &#8211; Australian Mathematical Sciences Institute<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/www.math.hkust.edu.hk\/~mamu\/courses\/231\/Slides\/ch02_1.pdf\" target=\"_blank\" rel=\"noopener\">Solutions of Equations in One Variable The Bisection Method<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/csw.uobaghdad.edu.iq\/wp-content\/uploads\/sites\/30\/uploads\/computer%20science\/Lectures\/2nd%20year\/NUM%20ANALYSIS.pdf\" target=\"_blank\" rel=\"noopener\">Solution of Algebraic and Transcendental Equations<\/a><\/h3>\n<p data-start=\"0\" data-end=\"146\">Here&#8217;s a clear explanation of the <strong data-start=\"34\" data-end=\"54\">Bisection Method<\/strong> with a <strong data-start=\"62\" data-end=\"82\">complete example<\/strong> \u2013 ideal for students in <strong data-start=\"107\" data-end=\"145\">Computer Science\/Numerical Methods<\/strong>.<\/p>\n<hr data-start=\"148\" data-end=\"151\" \/>\n<h2 data-start=\"153\" data-end=\"219\">\ud83d\udcbb <strong data-start=\"159\" data-end=\"219\">Bisection Method \u2013 Numerical Methods in Computer Science<\/strong><\/h2>\n<h3 data-start=\"221\" data-end=\"257\">\ud83e\udde0 <strong data-start=\"228\" data-end=\"257\">What is Bisection Method?<\/strong><\/h3>\n<p data-start=\"259\" data-end=\"408\">The <strong data-start=\"263\" data-end=\"283\">Bisection Method<\/strong> is a <strong data-start=\"289\" data-end=\"312\">numerical technique<\/strong> used to find <strong data-start=\"326\" data-end=\"360\">roots of a continuous function<\/strong> <code data-start=\"361\" data-end=\"367\">f(x)<\/code> within a given interval <code data-start=\"392\" data-end=\"400\">[a, b]<\/code>, where:<\/p>\n<ul data-start=\"409\" data-end=\"563\">\n<li data-start=\"409\" data-end=\"478\">\n<p data-start=\"411\" data-end=\"478\"><code data-start=\"411\" data-end=\"417\">f(a)<\/code> and <code data-start=\"422\" data-end=\"428\">f(b)<\/code> have <strong data-start=\"434\" data-end=\"452\">opposite signs<\/strong> (i.e., <code data-start=\"460\" data-end=\"477\">f(a) * f(b) &lt; 0<\/code>)<\/p>\n<\/li>\n<li data-start=\"479\" data-end=\"563\">\n<p data-start=\"481\" data-end=\"563\">This implies a root exists between <code data-start=\"516\" data-end=\"519\">a<\/code> and <code data-start=\"524\" data-end=\"527\">b<\/code> (by <strong data-start=\"532\" data-end=\"562\">Intermediate Value Theorem<\/strong>)<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"565\" data-end=\"568\" \/>\n<h3 data-start=\"570\" data-end=\"604\">\ud83d\udd0d <strong data-start=\"577\" data-end=\"604\">Step-by-Step Algorithm:<\/strong><\/h3>\n<ol data-start=\"606\" data-end=\"973\">\n<li data-start=\"606\" data-end=\"658\">\n<p data-start=\"609\" data-end=\"658\">Check that <code data-start=\"620\" data-end=\"626\">f(a)<\/code> and <code data-start=\"631\" data-end=\"637\">f(b)<\/code> have opposite signs.<\/p>\n<\/li>\n<li data-start=\"659\" data-end=\"697\">\n<p data-start=\"662\" data-end=\"697\">Calculate midpoint <code data-start=\"681\" data-end=\"696\">c = (a + b)\/2<\/code>.<\/p>\n<\/li>\n<li data-start=\"698\" data-end=\"883\">\n<p data-start=\"701\" data-end=\"714\">Check <code data-start=\"707\" data-end=\"713\">f(c)<\/code>:<\/p>\n<ul data-start=\"718\" data-end=\"883\">\n<li data-start=\"718\" data-end=\"756\">\n<p data-start=\"720\" data-end=\"756\">If <code data-start=\"723\" data-end=\"733\">f(c) = 0<\/code>, then <code data-start=\"740\" data-end=\"743\">c<\/code> is the root.<\/p>\n<\/li>\n<li data-start=\"760\" data-end=\"883\">\n<p data-start=\"762\" data-end=\"817\">Else, replace <code data-start=\"776\" data-end=\"779\">a<\/code> or <code data-start=\"783\" data-end=\"786\">b<\/code> with <code data-start=\"792\" data-end=\"795\">c<\/code> based on sign change:<\/p>\n<ul data-start=\"823\" data-end=\"883\">\n<li data-start=\"823\" data-end=\"858\">\n<p data-start=\"825\" data-end=\"858\">If <code data-start=\"828\" data-end=\"845\">f(a) * f(c) &lt; 0<\/code>, set <code data-start=\"851\" data-end=\"858\">b = c<\/code><\/p>\n<\/li>\n<li data-start=\"864\" data-end=\"883\">\n<p data-start=\"866\" data-end=\"883\">Else, set <code data-start=\"876\" data-end=\"883\">a = c<\/code><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li data-start=\"884\" data-end=\"973\">\n<p data-start=\"887\" data-end=\"973\">Repeat steps until desired accuracy is achieved (<code data-start=\"936\" data-end=\"948\">|f(c)| &lt; \u03b5<\/code>, small error tolerance).<\/p>\n<\/li>\n<\/ol>\n<hr data-start=\"975\" data-end=\"978\" \/>\n<h3 data-start=\"980\" data-end=\"1057\">\ud83d\udcd8 <strong data-start=\"987\" data-end=\"1057\">Example: Find a root of <code data-start=\"1013\" data-end=\"1032\">f(x) = x\u00b3 \u2013 x \u2013 2<\/code> using Bisection Method<\/strong><\/h3>\n<h4 data-start=\"1059\" data-end=\"1106\">Step 1: Choose initial interval <code data-start=\"1096\" data-end=\"1104\">[1, 2]<\/code><\/h4>\n<p data-start=\"1107\" data-end=\"1119\">Check signs:<\/p>\n<ul data-start=\"1120\" data-end=\"1214\">\n<li data-start=\"1120\" data-end=\"1146\">\n<p data-start=\"1122\" data-end=\"1146\"><code data-start=\"1122\" data-end=\"1146\">f(1) = 1\u00b3 \u2013 1 \u2013 2 = -2<\/code><\/p>\n<\/li>\n<li data-start=\"1147\" data-end=\"1214\">\n<p data-start=\"1149\" data-end=\"1214\"><code data-start=\"1149\" data-end=\"1171\">f(2) = 8 \u2013 2 \u2013 2 = 4<\/code><br data-start=\"1171\" data-end=\"1174\" \/>\u2705 Opposite signs \u2192 root lies in <code data-start=\"1206\" data-end=\"1214\">[1, 2]<\/code><\/p>\n<\/li>\n<\/ul>\n<h4 data-start=\"1216\" data-end=\"1244\">Step 2: Start Iteration<\/h4>\n<div class=\"_tableContainer_16hzy_1\">\n<div class=\"_tableWrapper_16hzy_14 group flex w-fit flex-col-reverse\">\n<table class=\"w-fit min-w-(--thread-content-width)\" data-start=\"1246\" data-end=\"1898\">\n<thead data-start=\"1246\" data-end=\"1323\">\n<tr data-start=\"1246\" data-end=\"1323\">\n<th data-start=\"1246\" data-end=\"1258\" data-col-size=\"sm\">Iteration<\/th>\n<th data-start=\"1258\" data-end=\"1265\" data-col-size=\"sm\">a<\/th>\n<th data-start=\"1265\" data-end=\"1272\" data-col-size=\"sm\">b<\/th>\n<th data-start=\"1272\" data-end=\"1286\" data-col-size=\"sm\">c = (a+b)\/2<\/th>\n<th data-start=\"1286\" data-end=\"1307\" data-col-size=\"sm\">f(c)<\/th>\n<th data-start=\"1307\" data-end=\"1323\" data-col-size=\"sm\">Interval<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"1403\" data-end=\"1898\">\n<tr data-start=\"1403\" data-end=\"1486\">\n<td data-start=\"1403\" data-end=\"1415\" data-col-size=\"sm\">1<\/td>\n<td data-start=\"1415\" data-end=\"1422\" data-col-size=\"sm\">1.0<\/td>\n<td data-start=\"1422\" data-end=\"1429\" data-col-size=\"sm\">2.0<\/td>\n<td data-start=\"1429\" data-end=\"1443\" data-col-size=\"sm\">1.5<\/td>\n<td data-start=\"1443\" data-end=\"1471\" data-col-size=\"sm\">(1.5)\u00b3 \u2013 1.5 \u2013 2 = -0.125<\/td>\n<td data-start=\"1471\" data-end=\"1486\" data-col-size=\"sm\">[1.5, 2.0]<\/td>\n<\/tr>\n<tr data-start=\"1487\" data-end=\"1571\">\n<td data-start=\"1487\" data-end=\"1499\" data-col-size=\"sm\">2<\/td>\n<td data-start=\"1499\" data-end=\"1506\" data-col-size=\"sm\">1.5<\/td>\n<td data-start=\"1506\" data-end=\"1513\" data-col-size=\"sm\">2.0<\/td>\n<td data-col-size=\"sm\" data-start=\"1513\" data-end=\"1527\">1.75<\/td>\n<td data-col-size=\"sm\" data-start=\"1527\" data-end=\"1556\">(1.75)\u00b3 \u2013 1.75 \u2013 2 = 1.609<\/td>\n<td data-col-size=\"sm\" data-start=\"1556\" data-end=\"1571\">[1.5, 1.75]<\/td>\n<\/tr>\n<tr data-start=\"1572\" data-end=\"1659\">\n<td data-start=\"1572\" data-end=\"1584\" data-col-size=\"sm\">3<\/td>\n<td data-start=\"1584\" data-end=\"1591\" data-col-size=\"sm\">1.5<\/td>\n<td data-start=\"1591\" data-end=\"1598\" data-col-size=\"sm\">1.75<\/td>\n<td data-start=\"1598\" data-end=\"1612\" data-col-size=\"sm\">1.625<\/td>\n<td data-start=\"1612\" data-end=\"1643\" data-col-size=\"sm\">(1.625)\u00b3 \u2013 1.625 \u2013 2 \u2248 0.666<\/td>\n<td data-start=\"1643\" data-end=\"1659\" data-col-size=\"sm\">[1.5, 1.625]<\/td>\n<\/tr>\n<tr data-start=\"1660\" data-end=\"1750\">\n<td data-start=\"1660\" data-end=\"1672\" data-col-size=\"sm\">4<\/td>\n<td data-start=\"1672\" data-end=\"1679\" data-col-size=\"sm\">1.5<\/td>\n<td data-start=\"1679\" data-end=\"1686\" data-col-size=\"sm\">1.625<\/td>\n<td data-start=\"1686\" data-end=\"1700\" data-col-size=\"sm\">1.5625<\/td>\n<td data-start=\"1700\" data-end=\"1733\" data-col-size=\"sm\">(1.5625)\u00b3 \u2013 1.5625 \u2013 2 \u2248 0.252<\/td>\n<td data-start=\"1733\" data-end=\"1750\" data-col-size=\"sm\">[1.5, 1.5625]<\/td>\n<\/tr>\n<tr data-start=\"1751\" data-end=\"1819\">\n<td data-start=\"1751\" data-end=\"1763\" data-col-size=\"sm\">5<\/td>\n<td data-start=\"1763\" data-end=\"1770\" data-col-size=\"sm\">1.5<\/td>\n<td data-start=\"1770\" data-end=\"1778\" data-col-size=\"sm\">1.5625<\/td>\n<td data-start=\"1778\" data-end=\"1791\" data-col-size=\"sm\">1.53125<\/td>\n<td data-start=\"1791\" data-end=\"1812\" data-col-size=\"sm\">f(1.53125) \u2248 0.059<\/td>\n<td data-start=\"1812\" data-end=\"1819\" data-col-size=\"sm\">&#8230;<\/td>\n<\/tr>\n<tr data-start=\"1820\" data-end=\"1898\">\n<td data-start=\"1820\" data-end=\"1832\" data-col-size=\"sm\">&#8230;<\/td>\n<td data-start=\"1832\" data-end=\"1839\" data-col-size=\"sm\">&#8230;<\/td>\n<td data-start=\"1839\" data-end=\"1846\" data-col-size=\"sm\">&#8230;<\/td>\n<td data-start=\"1846\" data-end=\"1860\" data-col-size=\"sm\">&#8230;<\/td>\n<td data-start=\"1860\" data-end=\"1882\" data-col-size=\"sm\">&#8230;<\/td>\n<td data-start=\"1882\" data-end=\"1898\" data-col-size=\"sm\">&#8230;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"sticky end-(--thread-content-margin) h-0 self-end select-none\">\n<div class=\"absolute end-0 flex items-end\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p data-start=\"1900\" data-end=\"1951\">Repeat until <code data-start=\"1913\" data-end=\"1929\">|f(c)| &lt; 0.001<\/code> or desired precision.<\/p>\n<hr data-start=\"1953\" data-end=\"1956\" \/>\n<h3 data-start=\"1958\" data-end=\"1983\">\u2705 <strong data-start=\"1964\" data-end=\"1981\">Final Answer:<\/strong><\/h3>\n<p data-start=\"1984\" data-end=\"2068\">The root lies approximately near <strong data-start=\"2017\" data-end=\"2029\">x \u2248 1.52<\/strong> (can be refined with more iterations).<\/p>\n<hr data-start=\"2070\" data-end=\"2073\" \/>\n<h3 data-start=\"2075\" data-end=\"2116\">\ud83e\uddee <strong data-start=\"2082\" data-end=\"2116\">Use Cases in Computer Science:<\/strong><\/h3>\n<ul data-start=\"2117\" data-end=\"2284\">\n<li data-start=\"2117\" data-end=\"2161\">\n<p data-start=\"2119\" data-end=\"2161\">Solving nonlinear equations in simulations<\/p>\n<\/li>\n<li data-start=\"2162\" data-end=\"2219\">\n<p data-start=\"2164\" data-end=\"2219\">Numerical solvers in compilers and symbolic computation<\/p>\n<\/li>\n<li data-start=\"2220\" data-end=\"2284\">\n<p data-start=\"2222\" data-end=\"2284\">Used in control systems, AI pathfinding (as a logic component)<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"2286\" data-end=\"2289\" \/>\n<p data-start=\"2291\" data-end=\"2306\">Would you like:<\/p>\n<ul data-start=\"2307\" data-end=\"2440\">\n<li data-start=\"2307\" data-end=\"2357\">\n<p data-start=\"2309\" data-end=\"2357\">A Python\/C++ implementation of Bisection Method?<\/p>\n<\/li>\n<li data-start=\"2358\" data-end=\"2393\">\n<p data-start=\"2360\" data-end=\"2393\">Practice problems with solutions?<\/p>\n<\/li>\n<li data-start=\"2394\" data-end=\"2440\">\n<p data-start=\"2396\" data-end=\"2440\">A step-by-step worksheet for manual solving?<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"2442\" data-end=\"2454\" data-is-last-node=\"\" data-is-only-node=\"\">Let me know!<\/p>\n<h3 data-start=\"2442\" data-end=\"2454\"><a href=\"https:\/\/www.cbpbu.ac.in\/userfiles\/file\/2020\/STUDY_MAT\/PHYSICS\/NP%202.pdf\" target=\"_blank\" rel=\"noopener\">Computer Science\/Numerical Methods\/ Bisection method example<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/annamalaiuniversity.ac.in\/studport\/download\/engg\/math\/resources\/Dr%20ST-BS401-Numerical%20Methods-Module-4&amp;5.pdf\" target=\"_blank\" rel=\"noopener\">numerical methods<\/a><\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Computer Science\/Numerical Methods\/ Bisection method example [fvplayer id=&#8221;110&#8243;] Bisection Method \u2013 Numerical Methods (Computer Science) The Bisection Method is a root-finding technique that applies to continuous functions where the root lies between two given points. It is a simple and reliable method based on the Intermediate Value Theorem. \u00a0Algorithm of Bisection Method \u00a0Select two points [&hellip;]<\/p>\n","protected":false},"author":71,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[110],"tags":[],"class_list":["post-2782","post","type-post","status-publish","format-standard","hentry","category-numerical-methods"],"_links":{"self":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/2782","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/comments?post=2782"}],"version-history":[{"count":0,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/2782\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/media?parent=2782"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/categories?post=2782"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/tags?post=2782"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}