In addition to statistical packages, R has powerful libraries that are useful for Numerical Analysis. R has a package `cmna`

for computational numerical analysis. Finding zeros of a function and matrix operations are two key topics in Numerical Analysis.

In this blog, we will do exercises on three topics: finding zeros of a function, solving a linear system AX = b, and numerical integration. Newton’s method, secant method functions in `cmna`

, are used to find an individual zero of a function. Matrix decomposition’s like LU decomposition and Cholesky decomposition can be used to solve the linear system of the form AX = b. We will also see numerical integration methods. Adaptive integration methods can be used for complicated integrals.

Answers to these exercises are available here.

**Exercise 1**

Install and load the package `cmna`

. Create a function, `f`

, such that f(x) = sin(x) + log(x). Create another function, `fp`

, that is the derivative of f(x).

**Exercise 2**

Use Newton’s method to find the zero of the function `f`

. Use the bisection method to find the zero of the function `f`

. For both methods, the maximum error should be 0.001 and maximum number of iterations 100. Compare the answers by plotting a graph of the function and see where it intersects at the x-axis.

**Exercise 3**

Create a 4 x 4 square matrix “A” with each column being (1,2,1,2). Create a 4 x 4 matrix “B” with 1’s in super-diagonal and sub-diagonal; 0’s elsewhere. Find the transpose of A and the products A X B and At X B.

**Exercise 4**

Show that B is non-singular. Verify the determinant of 2B = 2^4 * determinant of B. Show that the determinant of inverse of 2B is 1/(determinant of 2B).

**Exercise 5**

Create a positive definite matrix 3×3 M with columns (2, -1, 0), (-1,2, -1) and (0, -1, 2) . Find the LU decomposition of M. Verify M = L X U. Find the Cholesky matrix C of M. Verify M = Ct X C where Ct is the transpose of C.

**Exercise 6**

Create a vector b = ( 4, 2, -3). Solve the equation Mx = b using the gradient descent.

**Exercise 7**

Use the adaptive integration integral from 0 to pi/4 of e^3x sin 2x. Use the function `adaptint`

. Vary the recursive depth.

**Exercise 8**

Find the integral from 1 to 2 of `f`

using the rectangle method. Use the function `midpt`

. Vary the number of rectangles.

## Leave a Reply