^{1}

^{*}

^{2}

^{*}

^{2}

^{*}

This paper presents new numeric and symbolic algorithms for solving doubly bordered tridiagonal linear system. The proposed algorithms are derived using partition together with UL factorization. Inversion algorithm for doubly bordered tridiagonal matrix is also considered based on the Sherman-Morrison-Woodbury formula. The algorithms are implemented using the computer algebra system, MAPLE. Some illustrative examples are given.

Linear systems are among the most important and common problems encountered in scientific computing. The whole range of technical problems leads to the solution of systems of linear equations. The first step in numerical solution of many problems is a choice of an appropriate algorithm.

Throughout this paper the word, “simplify”, means simplify the expression under consideration to its simplest rational form. The abbreviation DBT refers to doubly bordered tridiagonal.

The main objective of the current paper is to construct efficient algorithms for solving DBT linear system of the form:

where the coefficient matrix A is a DBT matrix with the special structure of the partitioned form

Such systems arise in many scientific and engineering applications when considering certain partial differential equations and spline approximation. For more details see, for instance [

The linear system (1) can also be written in block form as follows:

where

is a

The present paper is organized as follows. In Section 2, we introduce some facts about tridiagonal matrices and a new recursive procedure for inverting this matrix is proposed. In Section 3, the UL factorization of DBT matrix is considered. Numeric and symbolic algorithms for evaluating DBT matrix determinant are constructed. Also a symbolic algorithm for computing the inverse of DBT matrix is developed using the Sherman-Morrison- Woodbury formula. Finally, the solution of the linear system whose coefficient matrix is of DBT matrix type is proposed. In Section 4, some illustrative examples are given.

Tridiagonal matrices arise in many contexts in pure and applied mathematics. Also, they arise in many different theoretical fields, especially in applicative fields such as spline approximation, numerical analysis, ordinary and partial differential equations, solution of linear systems of equations, engineering, telecommunication system analysis, system identification, signal processing (e.g., speech decoding), partial differential equations and naturally linear algebra. See [

In many of these areas, inversions of tridiagonal matrices are necessary and different approaches are considered [

The general tridiagonal matrix

in which

When we consider the matrix T defined by (6), it is helpful to introduce the n quantities

Following [

Theorem 2.1. The UL factorization of the matrix T in (6) is possible if

where

and

The following are two useful remarks:

Remark 1: The matrices

and

where

Remark 2: If the UL factorization of the matrix T in (6) is possible, then we have:

where

Now we are going to state the following result without proof.

Theorem 2.2. Let T be a non-singular tridiagonal matrix, given by (6), and let

where

In this section, we are going to construct new numeric and symbolic algorithms to evaluate the determinant of a DBT matrix and to compute the inverse of such matrices. For these purposes it is advantageous to consider the UL factorization.

To factor the n × n DBT matrix A given in (2) into the product of an upper-triangular matrix

where

and

Equation (17) can be written in block matrix form as follows:

where

From (20), we see that the following equations are satisfied:

and

Solving (21), (22) and (23) for

and

where

The determinant of the matrix A in (2) can be computed using the following numeric algorithm.

Algorithm 3.1. A numeric algorithm for computing the determinant of a DBT matrix.

To compute the determinant of the DBT matrix in (2), we may proceed as follows:

INPUT: Order of the matrix, n and vectors a, d, b, h, v.

OUTPUT: The determinant of the matrix A in (2).

Step 1: Set

Step 2: For i = n − 1, n − 2, …, 2 do

compute and simplify

End do.

Step 3: Compute e_{1} using (27).

Step 4:

As can be easily seen, Algorithm (3.1) breaks down if any e_{i} = 0 for some

Algorithm 3.2. A symbolic algorithm for computing the determinant of DBT matrix.

To compute the determinant of the DBT matrix in (2), we may proceed as follows:

INPUT: Order of the matrix, n and vectors a, d, b, h, v.

OUTPUT: The determinant of the matrix A in (2)

Step 1: Set

Step 2: For i = n − 1, n − 2, …, 2 do

compute and simplify:

End do.

Step 3: Compute and simplify e_{1} using (27).

Step 4: Compute and simplify:

Step 5: Det (A) = p(0).

The Algorithm (3.2) will be referred to as DETGDBTRI algorithm.

In this sub-section, we are going to formulate a new symbolic algorithm for inverting the general DBT matrix based on the Sherman-Morrison-Woodbury formula.

A general DBT matrix can be written as following:

Applying the Sherman-Morrison-Woodbury formula [

Now we are ready to formulate the following symbolic algorithm for inverting the DBT matrix.

Algorithm 3.3. A symbolic algorithm to compute the inverse of a non-singular DBT matrix.

To invert a general DBT matrix (2), we may proceed as follows:

INPUT: The order of the matrix, n and the entries of the matrices T, U and V.

OUTPUT: The inverse of the DBT matrix A given in (2).

Step 1: Set

Step 2: For

compute and simplify:

End do.

Step 3: Compute and simplify the elements of the inverse matrix

Step 4: compute

Step 5: Substitute t = 0 in all expressions of the matrix

In this sub-section, we introduce different approaches for solving doubly bordered tridiagonal linear systems of the form (1).

The inverse matrix of the DBT matrix A introduced in (2) could be written in the block form as follows:

where

Now, we can formulate our first algorithm for solving the linear systems of the form (1).

Algorithm 3.4. A first numeric algorithm for solving linear systems of DBT matrix type.

To solve a general bordered tridiagonal linear system of the form (1), we may proceed as follows:

INPUT: The entries of the matrix_{1} and the vectors

OUTPUT: The solution vector

Step 1: Compute

Step 2: Compute

Step 3: The solution vector is

As we can see, the computational cost of Algorithm (3.4) is

The following algorithm depends on the UL factorization of the coefficient matrix A in (1), so it is more convenient to rewrite the linear system (1) as:

To solve the linear system (32), it is equivalent to solve the two standard linear systems:

and

where

Armed with the above results, we may formulate the following numeric algorithm:

Algorithm 3.5. A second numeric algorithm for solving linear systems of DBT matrix type.

To solve a general doubly bordered tridiagonal linear system of the form (1), we may proceed as follows:

INPUT: The components,

OUTPUT: The solution vector

Step1: Use the algorithm (3.1) to check the non-singularity of the coefficient matrix A of the system (1).

Step2: If Det (A) = 0; then OUTPUT (‘no inverse exists’); STOP.

Step 3: Set

Step 4: For

compute

End do.

Step 5: Compute

Step 6: Set

Step 7: Compute

For

compute

End do.

Step 8: The solution vector

To remove all cases in which Algorithm (3.5) fails, it is convenient to give the following symbolic version of the numeric algorithm described above.

Algorithm 3.6. A symbolic algorithm for solving linear systems of DBT matrix type.

To solve a general doubly bordered tridiagonal linear system of the form (1), we may proceed as follows:

INPUT: The components,

OUTPUT: The solution vector

Step 1: Use the DETGDBTRI algorithm to compute

Step 2: Use the DETGDBTRI algorithm to check the non-singularity of the coefficient matrix A of the system (1).

Step 3: If Det(A) = 0; then OUTPUT (‘no inverse exists’); STOP.

Step 4: Compute and simplify

Step 5: Compute and simplify

Step 6: Set

Step 7: Compute and simplify

Step 8: For

Compute and simplify:

End do

Step 9: Compute and simplify:

Step 10: Set

Step 11: Compute and simplify:

For

Compute and simplify:

End do.

Step 12: Substitute t = 0 in all expressions of the solution vector

The computational cost of Algorithm (3.6) is

In this section we give four examples for the sake of illustration.

Example 4.1. Solve the following periodic tridiagonal linear system of size 12.

Solution: we will solve this system as a DBT linear system where

By applying DBTLSys algorithm, we have

・

・

・ The solution vector is

This result is in complete agreement with the result in [

Example 4.2. Solve the following DBT linear system

Solution: we have a DBT linear system with

By using DBTLSys algorithm we have

・

・ The solution vector is

This result is in complete agreement with the result in [

Example 4.3. Solve the following DBT linear system

Solution: we have a DBT linear system with

By using DBTLSys algorithm we have

・

・

・ The solution vector is

Example 4.4. Solve the following DBT linear system

Solution: we have a DBT linear system with

By using DBTLSys algorithm we have

・

・

・ The solution vector is