官术网_书友最值得收藏!

23. Newton's method

Binary subdivision uses intervals to quickly converge on an equation's root. Newton's method, which is also called the Newton-Raphson method, uses a different technique to converge even more quickly.

The method starts with a value (x). As long as F(x) is not close enough to zero, the method uses the derivative of the function to find the slope F'(x). It then follows the tangent line at that point to the new point x' where the line intersects the X axis. The value x' becomes the method's next guess for the root. The program continues calculating new values until F(x) is close enough to 0.

Finding the point of intersection between the tangent line and the X axis is easier than you might think. If you start with the value xi, you simply use the following equation to find the next value, xi+1:

Here, F is the function and F' is its derivative.

Write a program that uses Newton's method to find roots for equations. Make the equation and its derivative delegate parameters to the main method so you can easily pass different equations to the method. Use the program to find the roots for the following equations:

 

In case you don't remember your calculus, the derivatives of those functions are the following:

For extra credit, make the program draw the equations and their roots.

主站蜘蛛池模板: 高安市| 当涂县| 宁远县| 巴东县| 凉山| 松阳县| 班戈县| 乾安县| 邳州市| 吐鲁番市| 虞城县| 靖边县| 乾安县| 清水河县| 金坛市| 石家庄市| 郯城县| 浦江县| 凌源市| 普洱| 元谋县| 望城县| 南通市| 桑植县| 桑植县| 平遥县| 山丹县| 茌平县| 宁夏| 益阳市| 壤塘县| 和林格尔县| 芦溪县| 长汀县| 柞水县| 沂南县| 吴旗县| 微山县| 英超| 蒲江县| 台南县|