0% found this document useful (0 votes)
140 views39 pages

Numerical Solver Report

ROOT Finding Numerical SOLVER: A CASE STUDY of MATHEMATICS STUDENTS MBARARA University of SCIENCE AND TECHNOLOGY A PROJECT REPORT Submitted by and in partial fulfillment for the award of the degree of Bachelors of Computer Science Supervisor MR. TOM OKARE.

Uploaded by

Bwiino Keefa
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
140 views39 pages

Numerical Solver Report

ROOT Finding Numerical SOLVER: A CASE STUDY of MATHEMATICS STUDENTS MBARARA University of SCIENCE AND TECHNOLOGY A PROJECT REPORT Submitted by and in partial fulfillment for the award of the degree of Bachelors of Computer Science Supervisor MR. TOM OKARE.

Uploaded by

Bwiino Keefa
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

ROOT FINDING NUMERICAL SOLVER: A CASE STUDY OF

MATHEMATICS STUDENTS MBARARA UNIVERSTY OF

SCIENCE AND TECHNOLOGY


A PROJECT REPORT Submitted by

Dickson. N
+256774941425 dnatwazagye@fastmail.fm

and

Keefa. B
+256775526587 kbwiino@gmail.com

in partial fulfillment for the award of the degree of

Bachelors of Computer Science

Supervisor MR. TOM OKARE Institute of Computer Science Mbarara University of Science and Technology tokare@must.ac.ug +256-702324624

April 2010

Declaration We the Root Finding Numerical solver group hereby declares that this Project Report is original and has not been published or submitted for any other degree award to any other University before. BWIINO KEEFA 2007/BCS/003 Date. NATWAZAGYE DICKSON 2007/BCS/007/PS

Approval
This Project Report has been submitted for Examination with the approval of the following supervisor. Signed: ... Date: .. MR. TOM OKARE

ii

Dedication
We dedicate this to our almighty God, Parents, Uncles, Aunts, brothers and sisters for their support they have contributed towards the success of this project.

iii

Acknowledgement
We would like to extend our sincere gratitude and thanks to all those people who have helped us towards the success of this project. Special thanks to our supervisor MR.TOM OKARE, and other lecturers MR. KAWUMA SIMON, MR. MUGONZA ROBERT, MR.JOHN BUSINGYE for all their contributions, support and advice rendered to us during the course of our project We also thank our parents for their support both morally and financially may they live longer to enjoy the fruits of our success.

iv

Table of contents
Declaration..................................................................................................................................i Approval .....................................................................................................................................ii Dedication .................................................................................................................................iii Acknowledgement.....................................................................................................................iv List of Figures............................................................................................................................vii CHAPTER ONE.............................................................................................................................1 1.0 INTRODUCTION.....................................................................................................................1 1.1 Problem Statement...............................................................................................................4 1.2 Main Objective .....................................................................................................................5
1.4 Scope....................................................................................................................................................... 5

1.5

Significance.....................................................................................................................5

CHAPTER TWO............................................................................................................................6 2.0 Literature Review............................................................................................................6

CHAPTER THREE..........................................................................................................................9
3.1 Rapid Prototyping ......................................................................................................................... 9 3.1.1 Requirements specification (Analysis) phase ............................................................................. 9 3.1.2 Design ...................................................................................................................................... 10 3.1.3 Building prototype ................................................................................................................... 10 3.1.4 Evaluation and Refine Requirements of the system................................................................. 10 3.1.5 Root Finding Numerical Solver ................................................................................................. 11

3.2 Methods of data collection .................................................................................................11


3.2.1 Interviews ................................................................................................................................ 11 3.2.2 Observation.............................................................................................................................. 11 3.2.3 Review of the literature ........................................................................................................... 11

CHAPTER FOUR.........................................................................................................................12
4.0 Evaluation and discussion of the methods........................................................................... 12

4.1 Newtons Method ....................................................................................................................... 12 4.2 BISECTION METHOD.................................................................................................................... 12

4.3 SECANT METHOD ........................................................................................................................ 13 4.4 TOLERANCE ................................................................................................................................. 13

CHAPTER 5................................................................................................................................14
5.0 5.1 PRESENTATION OF THE RESULTS ........................................................................................... 14 Description of inputs and parameters to the system............................................................. 14

5.2 System Flow ................................................................................................................................ 14

5.2 SYSTEM PAGES....................................................................................................................16


5.1.1 5.1.2 5.1.3 5.1.4 Start Page .......................................................................................................................... 16 ITERATIONS CALCULATOR PAGE............................................................................ 17 SOLUTION FOR ITERATION CALCULATOR........................................................................... 18 NEWTONS METHOD PAGE ................................................................................................ 19

5.3.5 SOLUTION FOR NEWTONS METHOD ....................................................................................... 20 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.1.10 THE BISECTION PAGE ......................................................................................................... 21 THE BISECTION SOLUTION PAGE........................................................................................ 22 THE BISECTION METHOD ERROR PAGE .............................................................................. 23 THE SECANT PAGE.............................................................................................................. 24 THE SECANT METHOD SOLUTION PAGE............................................................................. 25 THE HELP PAGE .................................................................................................................. 26

CHAPTER SIX .............................................................................................................................27


6.0 6.1 6.2 6.3 Individual critical analysis...................................................................................................... 27 Personal contributions .......................................................................................................... 27 Recommendations................................................................................................................. 27 Future Work............................................................................................................................ 27

REFERENCES..............................................................................................................................28 7.0 APPENDICES........................................................................................................................29


7.0.1 Appendix 1: Gantt chart ........................................................................................................... 29 Table 1: Gantt chart .......................................................................................................................... 29 7.0.2 Appendix 2: Budget.................................................................................................................. 29

vi

List of Figures

vii

ABSTRACT A Root finding Numerical Approximation Solver is a system that finds an approximation to the root of an equation given the error bound (TOL) from which the real root lies using Numerical methods of Bisection, Newton and Secant. A Root finding Numerical Approximation Solver covers Polynomial equations ranging from linear, quadratic, cubic, up to the power of ten, trigonometric equations, Exponentials and Logarithmic equations. The Solver provides user friendly interfaces from which the user enters coefficients and other numbers required in the text fields provided on the interfaces. A Root finding Numerical Approximation Solver provides a brief working steps to the solution and then generates a table of iterations and finally notifies you on the number of iterations it performed to generate the root and then states the root to the given equation basing on the error bound (TOL) and the initial approximation to the root (Po).

viii

CHAPTER ONE 1.0 INTRODUCTION Numerical approximation is a part of numerical analysis whose objective is to solve complex numerical problems using only the simple operations of arithmetic, to develop and evaluate methods for computing numerical results from given data. The methods of computation are called algorithms. A root-finding algorithm is a numerical method for finding a value x such that f(x) = 0, for a given function f. Such an x is called a root of the function f. This software is concerned with finding real roots, approximated as floating point numbers., Finding a root of f(x) g(x) = 0 is the same as solving the equation f(x) = g(x). Here, x is called the unknown in the equation. Conversely, any equation can take the canonical form f(x) = 0, so equation solving is the same thing as computing (or finding) a root of a function. Numerical root-finding methods use iteration, producing a sequence of numbers that hopefully converge towards a limit (the so called "fixed point") which is a root. The first values of this series are initial guesses. The method computes subsequent values based on the old ones and the function f. The root finding numerical approximation solver will determine the root of polynomial, logarithmic, exponential and even trigonometric equations using numerical methods by simply prompting the user to enter coefficients into the text fields provided on the interface. It will display the results for the user after performing the required iterations. Numerical approximations are techniques for finding appropriate solutions to mathematical problems. Such techniques have been known for a long time Euler is credited with having introduced, in 1768, finite differences to approximate derivatives in ordinary differential equations. Real progress on the development of applications of numerical methods is the product of the 20th century, the beginning of which witnessed increased efforts by scientists to invent, analyze and

apply numerical methods to solve equations that represented mathematical models of physical phenomena. Early contribution of historical importance was made by scientists like Runge Kutta, Richardson, Liebmantz, Courant, Friedrichs, and Von Neumann among others. There are 2 kinds of solving mathematical problems thus analytical and numerical methods, the former produces when possible an exact analytical solution in the form of general math expressions. Numerical methods on the other hand produce approximate solutions in the form of discrete values or numbers. The simplest of these is a linear algebraic equation where the solution to this is immediate and consists of a single value point. Finding solutions to higher-order algebraic equations will not in general be a feasible task and numerical methods must be employed to find approximate solutions instead. Finding roots of polynomials Much attention has been given to the special case that the function f is a polynomial; there exist root-finding algorithms exploiting the polynomial nature of f. For a univariate polynomial of degree less than five, we have closed form solutions such as the quadratic formula. However, even this degree-two solution should be used with care to ensure numerical stability, the degree-four solution is unwieldy and troublesome, and higher-degree polynomials have no such general solution. For real roots, Sturm's theorem provides a guide to locating and separating roots. This plus interval arithmetic combined with Newton's method yields a robust algorithm, but other choices are more common. One possibility is to form the companion matrix of the polynomial. Since the eigen values of this matrix coincide with the roots of the polynomial, one can use any eigen value algorithm to find the roots of the polynomial. For instance the classical Bernoulli's method to find the root greater in modulus, if it exists, turns out to be the power method applied to the companion matrix. The inverse power method, which finds some smallest root first, is what drives the JenkinsTraub method and gives it its numerical stability and fast convergence even in the presence of multiple or clustered roots.

Laguerre's method, as well as Halley's method, use second order derivatives and complex arithmetic, including the complex square root, to exhibit cubic convergence for simple roots, dominating the quadratic convergence displayed by Newton's method. Bairstow's method uses Newton's method to find quadratic factors of a polynomial with real coefficients. It can determine both real and complex roots of a real polynomial using only real arithmetic. The simple Durand-Kerner and the slightly more complicated Aberth method simultaneously find all the roots using only simple complex number arithmetic. The splitting circle method is useful for finding the roots of polynomials of high degree to arbitrary precision; it has almost optimal complexity in this setting. Another method with this style is the Dandelin-Grffe method (actually due to Lobachevsky) which factors the polynomial. Wilkinson's polynomial illustrates that high precision may be necessary when computing the roots of a polynomial.

1.1 Problem Statement Numerical approximations are procedures that depend on many repetitive calculations possibly millions. For sufficiently simple problems, mathematics students always get solutions of the equations manually using a piece of paper, a simple calculator and a pen and one needs to have understood all the mathematical concepts concerning solving a particular equation and is supposed to remember all the steps involved in solving a particular problem leading to time wastage and it needs a lot of concentration. The root finding numerical approximation solver is interactive, a system where the user helps guide the calculation by asking the user to enter the coefficients of a particular equation into a text field area provided on the graphical user interface and the results are displayed after clicking the SOLVE button on the interface.

1.2 Main Objective To develop a system that will help in finding approximate solutions to higher-order algebraic equations and also provide user interfaces to users for entry of data. 1.3 Specific Objectives To review the literature related to the system To identify data and user requirements of the system To develop the system To test and validate the system 1.4 Scope The software covers foundations of numerical mathematics, Synthesis and Analysis of Algorithms, Analysis of Error together with Programs and Program Libraries used in numerical analysis. It makes use of the numerical root finding methods of Bisection, Newton Raphson and Secant to solve complex Polynomial, trigonometric and exponential equations.

1.5 Significance. The system reduces the tiresome manual calculations by performing millions of iterations on a click of a SOLVE button in a few seconds. Due to its interactivity with the end user, the numerical solver saves time by only asking the user to enter the coefficients of a particular equation and instantly the results displayed after clicking the SOLVE button on the interface. The problem of higher order polynomials together with complex exponential and trigonometric equations examining the foundations, Synthesis and Analysis of Algorithms, Analysis of Error is solved hence obtaining the most convergent answer, correctly and accurately using the methods of Newton, Secant and Bisection. The system is able to be accessed and used by anyone with a computer over the world once it is put on a server, because it is server compatible, therefore can be used online. The software clearly shows step-by-step procedures of working on each problem by providing the methods and steps followed in solving a particular numerical problem expressed as a polynomial, trigonometric or exponential equation.

CHAPTER TWO 2.0 Literature Review Miquel et al., (2007)[1], argues that a technique to construct iterative methods to approximate the zeros of a nonlinear equation F(x) = 0, where F is a function of several variables. This technique is based on the approximation of the inverse function of F and on the use of fixed point iteration. Depending on the number of steps considered in the fixed point iteration, or in other words, the number of evaluations of the function F, we obtain some variants of classical iterative processes to solve nonlinear equations. These variants improve the order of convergence of classical methods. Finally, we show some numerical examples, where we use adaptive multi-precision arithmetic in the computation that show a smaller cost. According to Richard and Karl (2007)[9], the roots of any polynomial may be expressed in terms of multivariate hyper geometric functions. Numerically solving a polynomial equation in one unknown is easily done on a computer by the Durand-Kerner method or by some other root finding algorithm. The reduction of equations in several unknowns to equations each in one unknown is discussed in the article Buchbergers algorithm. The special case where all the polynomials are of degree one is called a system of linear equations, for which a range of different solution methods exist, including the classical Gaussian elimination. Donald, (2005) [8] concludes that This solver solves any linear, quadratic, or cubic equation. Just enter the coefficients of the following equation: AX3+BX2+CX+D=0. For the sake of mathematical completeness, this solver allows you to enter complex numbers as coefficients. Chances are that most people using this will want the coefficients to be real numbers. In that case, just leave the imaginary parts of A, B, C, D equal to zero. After entering our coefficients, press the solve button to see the solutions In conclusion, Kai, et al (2006)[7] specify that, We consider the problem of implementing fast algorithms for the numerical solution of initial value problems of the form x(i)(t) = f (t,x(t)), x(0) = x0, where x(i) is the derivative of x of order i in the sense of Caputo and 0<i<1.We review some of the existing methods and explain their respective strengths and weaknesses. We identify and discuss potential problems in the development of generally applicable schemes. Ellis and Schwalbe (1992) [6] pointed out that, spurred on by past successes of mathematical modeling in the physical sciences, more recent successes in the biological sciences and the advent of cheap and powerful computing, the use of mathematical models has grown rapidly and
6

spread to most disciplines. There is every reason to believe that this trend will continue to accelerate in the foreseeable future more so in the field of numerical analysis which explores all aspects and numerical approximations of higher order polynomials. Hilderbrand (2000)[5], stresses that the ultimate aim of the field of numerical analysis is to provide convenient methods for obtaining useful solutions to mathematical problems in terms of algebraic or transcendental equation, an ordinary or partial differential equation, or an integral equation or in terms of a set of such equations. The formulation may correspond exactly to the situation which it is intended to describe, more often, it will not. Generally, the numerical analyst does not strive for exactness. Instead, he attempts to devise a method which will yield an approximation differing from exactness by less than a specified tolerance or by an amount which has less than a specified probability of exceeding that tolerance. Clearly, it is desirable first of all to choose the coordinate functions which are convenient for calculation purposes. Weistreass (1885), states that any function f(x) which is continuous on a closed interval [a, b] can be uniformly approximated with any prescribed tolerance, on that interval, by some polynomial, therefore given any tolerance , there is a polynomial p(x) such that |f(x)-p(x)| Polynomial approximation of wide general use when a function is to be approximated is continuous and the interval of approximation is finite. The n+1 functions ,1, x, x2, .xn , which generate the algebraic polynomials of degree n or less, are particularly appropriate, since polynomials are readily evaluated and since their integrals, derivatives and products are also polynomials. As said by Ward and David (2004)[4], the solution to a scientific problem is a number about which we have little information other than that it satisfies some equation. Since an equation can be written so that a function stands on one side and a zero on the other, the desired number must be a zero of the function thus f(x)=0, thus if we possess an arsenal of methods for locating zeros of functions, we shall be able to solve such problems. In accordance with Quo and Wang (2006)[3], numerical solvers currently used to solve mathematical models in systems biology can be ill-conditioned due to stiffness. As researchers discover more unknown biological systems and invent increasingly complex analytical models to describe these systems, the role of numerical solvers in handling these models becomes increasingly important. . At the same time, the numerical solution to this problem is difficult due to stiffness and sensitivity of the system to initial conditions. In this study, we determine the
7

optimal numerical solver(s), which can predict limit cycle behavior, by systematically comparing performance measures such as accuracy, sensitivity to initial conditions, empirical convergence rates and computational cost of different numerical solvers. We use Simulink and various numerical solvers to conduct the investigation. The comparison results from our work form an initial basis for deriving a set of rules to select the optimal numerical solver(s) for complex oscillatory systems. According to Sturm's theorem (2000)[2], First, we need to determine whether p(x) has a multiple root. If p(x) has a multiple root at r, then its derivative p(x) will also have a root at r (one fewer than p(x) has there). So we calculate the greatest common divisor of the polynomials p(x) and p(x); adjust the leading coefficient to be one and call it g(x). (See If g(x) = 1, then p(x) has no multiple roots and we can safely use those other root-finding algorithms which work best when there are no multiple roots, and then exit. Now suppose that there is a multiple root. Notice that g(x) will have a root of the same multiplicity at r that p(x) has and the degree of the polynomial g(x) will generally be much less than that of p(x). Recursively call this routine, using g(x) in place of p(x). Now suppose that we have found the roots of g(x). Since r has been found, we can factor (xr) out of p(x) repeatedly until we have removed all of the roots at r. Repeat this for any other multiple roots until there are no more multiple roots. Then the quotient can be factored in the usual way with one of the other root-finding algorithms.

CHAPTER THREE 3.0 METHODOLOGY The methodology refers to the way in which information is found or something is done. This includes the methods, procedures, tools and techniques used to collect and analyze information. For the objectives of this study to be achieved, a thorough and detailed process was followed as analyzed below; 3.1 Rapid Prototyping Rapid prototyping was used as a Methodology with the iteration technique. After considerations of time and cost were made in respect to this project, and for this system rapid prototyping was the appropriate since there was checking of errors it was thought to be the most convenient. The steps followed were looped through multiple times to improve the levels of detail and accuracy. Here is the illustration;

Figure1: system development life cycle 3.1.1 Requirements specification (Analysis) phase The definition of the scope and the conduction of the feasibility study was done, and the project launched. It involved the study of the problem statement, requirements specification and analysis

and the formulae to solve equations derived, software requirements specification, data was collected to determine the system requirement specifications, processing was done and analysis of the type of output also done. The main aim was to gather the required information, drawing activity time plans and schedule as well as activity network graphs and documentation about the developed system. 3.1.2 Design This involved defining structural components of the developed system. The information gathered during the analysis phase was used to formulate models that represented the solution system. Design systems for the entire system, the application software and the user interfaces were drawn. Modeling and identification of structural components was done and represented by flow charts, data flow diagrams (DFD) and Entity-relationship Diagrams (ERD) The developed system was broken into three modules using the top down approach; that is the input module, operations module and output section which helped speeding up the development and the understanding of the system. The input and output modules contains user interactive interfaces which allow a user to input information related to the system and produce user demands according the system instructions. The operations module contains programs and operations that are able to execute the user demands and requests. 3.1.3 Building prototype A tentative working model of the whole system was built and used to test the feasibility, and it was verified and validated in order to help identify requirements and to compare different design and interface alternatives. 3.1.4 Evaluation and Refine Requirements of the system Here the developed prototype was tested against its test cases and requirements specification thus verification and validation were effected at this stage. This is advantageous in a way that all the odds in the system which could affect the system after its implementation like wrong or unauthorized entities, could be removed.

10

3.1.5 Root Finding Numerical Solver At this point, after a thorough testing of the prototype, the actual development of the proposed system was implemented. 3.2 Methods of data collection 3.2.1 Interviews Unstructured (oral) interviews were carried out with the stake holders such as lecturers, friends, mathematics students as well as my supervisor. This method was projected to attain hard facts, goals and informal procedures about numerical analysis methods of finding the root of an equation/polynomial. This method was used because of its richness in stipulation of data since the interview is open ended and the researcher could probe in great depth about the system work which could not be achieved by other methods. And also, the researchers were sure that the information is from a reliable source since it was from selected respondents. This kind of interview could give the respondents an expression, hence digging deeper into roots of the problem and identifying the requirements and parameters of the system developed. 3.2.2 Observation Observation of the already existing systems was used as a means of finding out how the Root Finding Numerical Solver was to work in comparison with the existing systems in terms of efficiency, features, time complexity and accuracy and this helped to provide the basis upon which the developed system was improved. 3.2.3 Review of the literature A review of research work from journals, internet sources and other projects already developed which are related to this subject area was done. A full analysis of the existing literature on the subject was primed with the objective of revealing contributions, weaknesses and failures.

11

CHAPTER FOUR 4.0

Evaluation and discussion of the methods

The following methods were used to find solutions to complex polynomial equations to utmost the 10th degree of higher order, exponential and trigonometric equations. 4.1 Newtons Method Newton's method assumes the function f to have a continuous derivative. Newton's method may not converge if started too far away from a root. However, when it does converge, it is faster than the bisection method, and is usually quadratic. Newton's method is also important because it readily generalizes to higher-dimensional problems.

4.2 BISECTION METHOD This method is the simplest root-finding algorithm. It works when f is a continuous function and it requires previous knowledge of two initial guesses, a and b, such that f(a) and f(b) have opposite signs. Although it is reliable, it converges slowly, gaining one bit of accuracy with each iteration.

12

4.3 SECANT METHOD

Replacing the derivative in Newton's method with a finite difference, we get the secant method. This method does not require the computation (nor the existence) of a derivative, but the price is slower convergence (the order is approximately 1.6). The secant method also arises if one approximates the unknown function f by linear interpolation

4.4 TOLERANCE Tolerance is the stopping criterion with in which we expect to obtain our root. The tolerance usually abbreviated by TOL is the amount of error in calculation. To obtain any numerical solution, someone is required to enter the tolerance, this is used to determine the number of iterations as well as the stopping of the iterations, or else, the system can iterate the whole day and sometimes do not produce the approximated results. It is not usually a whole number, neither a negative but it is always a positive float or double value for example 10-4. Given the interval [a,b], the tolerance is given by (b-a) TOL/2N Where TOL=| pn-pn-1| and N= number of iterations

13

CHAPTER 5 5.0 PRESENTATION OF THE RESULTS The Root Finding Numerical Approximation solver system can be regarded as a web based system. It can be run online on the internet or across intranets and extranets as long as it is uploaded into a server connected. The system runs on client machines with JavaScript enabled browsers like internet explorer, Firefox Mozilla, safari and Netscape browsers. The computer or client must have installed wamp server to run php and Js programs. The Root Finding Numerical solver does not use a database; the systems inputs are processed by Js codes in the systems catalog and directory to produce the output. This enhances efficiency, time management and increases productivity of the system 5.1

Description of inputs and parameters to the system.

The inputs to the system are numerical data in form of numbers which are entered into the text fields of the systems graphical user interface. Only the following inputs are accepted /^ [+\-\0-9] +$/. The parameters and variables of the method being used are internally manipulated into the systems directory. The interfaces require the following inputs; Coefficients for polynomial equations to utmost the 10th degree of higher order, exponential and trigonometric equations. Interval [a, b] from which the root is to be estimated for any of the above equations for the case of Newton and Bisection methods. The first two approximations p0 and p1 for the case of secant method. The tolerance or the maximum error which is used as the stopping criteria.

5.2 System Flow


This is the hierarchical illustration showing the functionalities of the system. It orders the system functionalities in a top down fashion, creating logical links between related functionalities. It looks like a tree or an organization chart and this is illustrated below;

14

ROOT FINDING NUMERICAL SOLVER

NEWTONS METHOD

BISECTION METHOD

SECANT METHOD

HOME

ITERATIONS CALCULATOR HELP

POLYNOMIALS

POLYNOMIALS

POLYNOMIALS

THE SYSTEM

NEWTON

TRIGONOMETRIC

TRIGONOMETRIC

TRIGONOMETRIC

BISECTION SECANT

ITERATION CALCULATOR EXPONENTIALS EXPONENTIALS EXPONENTIALS

Figure 2: process flow of the system.

15

5.2 SYSTEM PAGES


5.1.1 Start Page

Figure3: Start page This is the first page that displays when the Root Finding Numerical Solver is started. It shows all the features that the system incorporates and clearly stipulates the out flow and organization of the system.

16

5.1.2 ITERATIONS CALCULATOR PAGE

Figure 4: ITERATION CALCULATOR PAGE It is at this page of the system that the user can enter the co-efficient for the interval [a, b] from which the root is expected

17

5.1.3 SOLUTION FOR ITERATION CALCULATOR

Figure5: ITERATION CALCULATOR SOLUTION This page displays the solutions for the number of iterations. It gives the working of a few brief steps and generates the final number of iterations answers after rounding off. The user enters the interval [a, b]=[1, 2] for this case and the tolerance TOL =0.01.

18

5.1.4 NEWTONS METHOD PAGE

Figure 6: Newtons method page This is the page for solving equations using Newtons method. The user clicks on NEWTON option at the top which has a drop down menu containing polynomials, trigonometric and exponentials. On selecting one of these, the format of equations for which the system handles appear in the left side of the system and the user chooses the option, enters the coefficients and click the solve button for the answer to be displayed.

19

5.3.5 SOLUTION FOR NEWTONS METHOD

Figure 8: SOLUTIONFOR NEWTONS METHOD The system first provides a few steps that are followed while solving equations using the Newtons method. It then finally produce a table of iterations, identifies the number of iterations, the equation entered by the user and the solution to the equation which is polynomial, exponential or trigonometric.

20

5.1.5 THE BISECTION PAGE

Figure 9: THE BISECTION PAGE This page displays after the user places a cursor on the Bisection option, which has three options polynomials, trigonometric and exponential equations. The user is required to enter the coefficients of a particular equation, enter the interval [a, b] from which the root is to be estimated, the stopping criteria and then at this point, the user is ready to solve the equation using bisection method.

21

5.1.6 THE BISECTION SOLUTION PAGE

Figure 10: THE BISECTION SOLUTION PAGE The Bisection Solution Page displays when the user clicks on the solve button on the bisection page interface. It displays the steps taken in solving a particular equation, and finally ends with the table of iterations depending on the tolerance value.

22

5.1.7 THE BISECTION METHOD ERROR PAGE

Figure 11: THE BISECTION METHOD ERROR PAGE This page displays when the entered interval [a, b] is such that f(a)f(b)>0 yet Bisection method requires that f(a)f(b)<0. It calculates for f(a) and f(b) and shows you that f(a)f(b)>0 and instructs the user to re-enter the interval from which the root is to be estimated.

23

5.1.8 THE SECANT PAGE

Figure 11: THE SECANT SOLVER This is the page that displays when the user selects SECANT from the menu. It drops down and produces three options, thus polynomials, Trigonometric and exponential. The user selects the optional equation type from the left. After entering the coefficients, the first two initial approximations and the stopping criteria (TOL)/ tolerance, then the user can click the solve button for the solutions to be displayed instantly.

24

5.1.9 THE SECANT METHOD SOLUTION PAGE

Figure 12: THE SECANT METHOD PAGE The Secant Method Solution Page displays when the user clicks the solve button after satisfying the secant interface inputs. This page displays the solution by giving a few steps followed in solving equations using Secant Method, then the table of iterations and eventually notifies the user about the total number of iterations and the root to the specified question.

25

5.1.10 THE HELP PAGE

Figure 12: THE HELP PAGE From the main menu, when the user selects HELP option, it provides three options thus Bisection, Newton and Secant methods from which the user can learn about how they work and how they are used in solving the equations, polynomials, trigonometric and secant. The user chooses the option and the help message is displayed in the right hand side.

26

CHAPTER SIX 6.0 6.1 Individual critical analysis Personal contributions

6.2

Recommendations

The research recommends that wamp server should be installed on every machine and every machine should have an internet browser which is JavaScript enabled like internet explorer, Mozilla Firefox. Hardware specifications include 128 MB of RAM, a processor of minimum 500 MHz ,a 21 inch screen and a hard disk of at least 10 megabytes. 6.3 Future Work

In the future, research should also be carried out in calculating higher order polynomials up to npowers and the applications or relationships between the environment and numerical mathematics.

27

REFERENCES 1. Miquel ,Grau-Snchez. Josep ,M. and Gutirrez,M. (2007), Accelerated iterative methods for finding solutions of a system of nonlinear equations, Available online 28 February 2007 2. Sterm theorem (2000), Algorithm for finding roots of polynomials [online]. Available:http://www.wikepedia.com 3. Quo, C and Wang, D,(2006), Systematic study of Numerical Solvers for complex Oscillatory Biochemical System Models, Atlanta, USA pp1-2 4. Ward ,C and Kincaid ,D (2004), Numerical Mathematics and computing. [online]. Avalaible:http://www.thomsonedu.com 5. Prof. Hilderbrand, B. (2000),Introduction to Numerical Analysis, 2nd edition, Dover Publications, INC. Newyork, pp 34-63 . 6. Ellis and Schwalbe, (1992), Theoretical Methods in the Physical Sciences Available online web.mit.edu/maple/www/plibrary/books-eng.html 7. Kai, D., Ford, J., Neville, F. and Weilbeer, M, (2006), Journal of Computational and Applied Mathematics, Available on line: http://www.sciencedirect.com, pp 1-3. 8. Donald, D,(2005),Polynomial http://cosinekitty.com/solver.htm equation solver, Available on line:

9. Richard and Karl, (2007), Solving Polynomials.from http://www.wikipedia.math.com 10. H. Binous, "Simulink implementation of the Oregonator model" [Online]. Available: http://www.mathworks.com/matlabcentral/. Accessed May 1 2006. 11. Riley K.I and Hobson M.P etal (2004), Mathematical Methods for physics and engineering. 2nd edition. Chapter 1 pg1-4 12. Jheriko (2002). Polynomial solver, from http://www.showthread.php.htm

28

7.0 APPENDICES 7.0.1 Appendix 1: Gantt chart


2009 Activity Feasibility study Data collection Analysis Proposal writing Design Coding and validation Implementation Report writing Presentation July X Aug x x x x Sep X X X X x x x x x x x x x x x x x X X X x X X
X X X

2010 Oct Nov Dec Jan Feb. Mar Apr May

Table 1: Gantt chart 7.0.2 Appendix 2: Budget


ITEM 1 Laptop 2 Flash Disk Drive(USB) Others 4 Communication (Airtime) 5 Printing and Binding 6 Internet surfing time Total Amount QUANTITY 1 1 (1 GB) 12 pcs 200 pages 3 months UNIT PRICE(SHS) 2,000,000 30,000 5,000 500 10,000 AMOUNT(SHS) 2,000,000 30,000 60,000 100,000 30,000 2,220,000

Table 2: Budget

29

30

You might also like