Assignment #3 - 97B

# Assignment #3 - 97B

```

Assignment 3
============

Due: 18th, Feb.
Weight: 30
Send to: HUQ0

Root Finding
------------

This assignment is to be done in the EMF using FORTRAN 90.

Engineering and scientific problems often require the calculation of
the roots of a function or equation for their solution; that is, those
values  of such that F(x) = 0. Pratical example might be estimating when
a car  will run out of gas for a given terrain profile and performance
demand.

For this assignment, you will be given a function F(x) for which you
will have to estimate the root of the function on an interval [a,b].,
i.e., a<= XR <= b such that F(XR) = 0.

We will use the bissection method  to estimate the  root of  F(x).
We start with an interval [a,b] containing  a single root. This means
the arithmetic sign of F(a) and F(b) will be different (one positive,
one negative).  The general idea is to compute the interval midpoint Xm,
which then replaces the interval limit with matching sign. For instance,
if we assume that F(a) is positive and F(b) is negative. If the equation
value at the midpoint Xm is negative, the root falls in the interval
between a and Xm; if the equation value at the midpoint is positive,
the root falls in the interval between Xm and b. We have halved the
interval within which the root lie.  We now repat the steps in this
iterative algorithm, halving the interval of interest with each iteration.

There are many ways to decide when to stop the iterative process. In this
application, we stop the the process when we find the root (i.e., F(Xm) = 0)
or when the interval of interest is less than a small positive constant
Delta.

For this assignment you have to approximate the root of a polynomial
F(X) within the interval [-5, 5], where F(X) has the following form:

F(x) =  A* X**4 +  B* X**3 + C* X**2 + D* X + E

You may assume that Delta = 0.001.
The input to the program is the polynomial coeficients A, B, C, D,
and E. The output should be the equation for the polynomial and any
roots that were  found. If there are no roots for the polynomial in
the given interval, print an appropriate message.

- Make sure that your variable names are representative of their use.

- Comment your program so someone else (me!) can easily understand what
it does.

- Good luck.

- This is the data you will be using for this assignment:

/DATA
0.0 1.0 -2.125 -25.0 53.125
0.0 0.0  1.0    14.0    3.0
3.0 -12.4  -26.29 29.766 0.0
0.0 0.0 1.234 -1.2 10.44
0.0 0.0 0.0 3.0 -2.5
0.0 0.0 0.0 0.0 0.0       <--All Zeros to quit

===================================================```