---
name: "ptts2"
section: "3"
platform: "linux"
package: "lapack-doc"
version: "3.12.1-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/ptts2"
---

# ptts2(3)

ptts2: triangular solve using factor, unblocked

## NAME

ptts2 - ptts2: triangular solve using factor, unblocked

## SYNOPSIS

### Functions

subroutine **cptts2** (iuplo, n, nrhs, d, e, b, ldb)\
 **CPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.  subroutine **dptts2** (n, nrhs, d, e, b, ldb)\
 **DPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.  subroutine **sptts2** (n, nrhs, d, e, b, ldb)\
 **SPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.  subroutine **zptts2** (iuplo, n, nrhs, d, e, b, ldb)\
 **ZPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.

## Detailed Description

## Function Documentation

### subroutine cptts2 (integer iuplo, integer n, integer nrhs, real, dimension( \* ) d, complex, dimension( \* ) e, complex, dimension( ldb, \* ) b, integer ldb)

**CPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.

**Purpose:**

```
!>
!> CPTTS2 solves a tridiagonal system of the form
!>    A * X = B
!> using the factorization A = U**H*D*U or A = L*D*L**H computed by CPTTRF.
!> D is a diagonal matrix specified in the vector D, U (or L) is a unit
!> bidiagonal matrix whose superdiagonal (subdiagonal) is specified in
!> the vector E, and X and B are N by NRHS matrices.
!>
```

**Parameters**

*IUPLO*

```
!>          IUPLO is INTEGER
!>          Specifies the form of the factorization and whether the
!>          vector E is the superdiagonal of the upper bidiagonal factor
!>          U or the subdiagonal of the lower bidiagonal factor L.
!>          = 1:  A = U**H *D*U, E is the superdiagonal of U
!>          = 0:  A = L*D*L**H, E is the subdiagonal of L
!>
```

*N*

```
!>          N is INTEGER
!>          The order of the tridiagonal matrix A.  N >= 0.
!>
```

*NRHS*

```
!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>
```

*D*

```
!>          D is REAL array, dimension (N)
!>          The n diagonal elements of the diagonal matrix D from the
!>          factorization A = U**H *D*U or A = L*D*L**H.
!>
```

*E*

```
!>          E is COMPLEX array, dimension (N-1)
!>          If IUPLO = 1, the (n-1) superdiagonal elements of the unit
!>          bidiagonal factor U from the factorization A = U**H*D*U.
!>          If IUPLO = 0, the (n-1) subdiagonal elements of the unit
!>          bidiagonal factor L from the factorization A = L*D*L**H.
!>
```

*B*

```
!>          B is COMPLEX array, dimension (LDB,NRHS)
!>          On entry, the right hand side vectors B for the system of
!>          linear equations.
!>          On exit, the solution vectors, X.
!>
```

*LDB*

```
!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **112** of file **cptts2.f**.

### subroutine dptts2 (integer n, integer nrhs, double precision, dimension( \* ) d, double precision, dimension( \* ) e, double precision, dimension( ldb, \* ) b, integer ldb)

**DPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.

**Purpose:**

```
!>
!> DPTTS2 solves a tridiagonal system of the form
!>    A * X = B
!> using the L*D*L**T factorization of A computed by DPTTRF.  D is a
!> diagonal matrix specified in the vector D, L is a unit bidiagonal
!> matrix whose subdiagonal is specified in the vector E, and X and B
!> are N by NRHS matrices.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>          The order of the tridiagonal matrix A.  N >= 0.
!>
```

*NRHS*

```
!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>
```

*D*

```
!>          D is DOUBLE PRECISION array, dimension (N)
!>          The n diagonal elements of the diagonal matrix D from the
!>          L*D*L**T factorization of A.
!>
```

*E*

```
!>          E is DOUBLE PRECISION array, dimension (N-1)
!>          The (n-1) subdiagonal elements of the unit bidiagonal factor
!>          L from the L*D*L**T factorization of A.  E can also be regarded
!>          as the superdiagonal of the unit bidiagonal factor U from the
!>          factorization A = U**T*D*U.
!>
```

*B*

```
!>          B is DOUBLE PRECISION array, dimension (LDB,NRHS)
!>          On entry, the right hand side vectors B for the system of
!>          linear equations.
!>          On exit, the solution vectors, X.
!>
```

*LDB*

```
!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **101** of file **dptts2.f**.

### subroutine sptts2 (integer n, integer nrhs, real, dimension( \* ) d, real, dimension( \* ) e, real, dimension( ldb, \* ) b, integer ldb)

**SPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.

**Purpose:**

```
!>
!> SPTTS2 solves a tridiagonal system of the form
!>    A * X = B
!> using the L*D*L**T factorization of A computed by SPTTRF.  D is a
!> diagonal matrix specified in the vector D, L is a unit bidiagonal
!> matrix whose subdiagonal is specified in the vector E, and X and B
!> are N by NRHS matrices.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>          The order of the tridiagonal matrix A.  N >= 0.
!>
```

*NRHS*

```
!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>
```

*D*

```
!>          D is REAL array, dimension (N)
!>          The n diagonal elements of the diagonal matrix D from the
!>          L*D*L**T factorization of A.
!>
```

*E*

```
!>          E is REAL array, dimension (N-1)
!>          The (n-1) subdiagonal elements of the unit bidiagonal factor
!>          L from the L*D*L**T factorization of A.  E can also be regarded
!>          as the superdiagonal of the unit bidiagonal factor U from the
!>          factorization A = U**T*D*U.
!>
```

*B*

```
!>          B is REAL array, dimension (LDB,NRHS)
!>          On entry, the right hand side vectors B for the system of
!>          linear equations.
!>          On exit, the solution vectors, X.
!>
```

*LDB*

```
!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **101** of file **sptts2.f**.

### subroutine zptts2 (integer iuplo, integer n, integer nrhs, double precision, dimension( \* ) d, complex\*16, dimension( \* ) e, complex\*16, dimension( ldb, \* ) b, integer ldb)

**ZPTTS2** solves a tridiagonal system of the form AX=B using the L D LH factorization computed by spttrf.

**Purpose:**

```
!>
!> ZPTTS2 solves a tridiagonal system of the form
!>    A * X = B
!> using the factorization A = U**H *D*U or A = L*D*L**H computed by ZPTTRF.
!> D is a diagonal matrix specified in the vector D, U (or L) is a unit
!> bidiagonal matrix whose superdiagonal (subdiagonal) is specified in
!> the vector E, and X and B are N by NRHS matrices.
!>
```

**Parameters**

*IUPLO*

```
!>          IUPLO is INTEGER
!>          Specifies the form of the factorization and whether the
!>          vector E is the superdiagonal of the upper bidiagonal factor
!>          U or the subdiagonal of the lower bidiagonal factor L.
!>          = 1:  A = U**H *D*U, E is the superdiagonal of U
!>          = 0:  A = L*D*L**H, E is the subdiagonal of L
!>
```

*N*

```
!>          N is INTEGER
!>          The order of the tridiagonal matrix A.  N >= 0.
!>
```

*NRHS*

```
!>          NRHS is INTEGER
!>          The number of right hand sides, i.e., the number of columns
!>          of the matrix B.  NRHS >= 0.
!>
```

*D*

```
!>          D is DOUBLE PRECISION array, dimension (N)
!>          The n diagonal elements of the diagonal matrix D from the
!>          factorization A = U**H *D*U or A = L*D*L**H.
!>
```

*E*

```
!>          E is COMPLEX*16 array, dimension (N-1)
!>          If IUPLO = 1, the (n-1) superdiagonal elements of the unit
!>          bidiagonal factor U from the factorization A = U**H*D*U.
!>          If IUPLO = 0, the (n-1) subdiagonal elements of the unit
!>          bidiagonal factor L from the factorization A = L*D*L**H.
!>
```

*B*

```
!>          B is COMPLEX*16 array, dimension (LDB,NRHS)
!>          On entry, the right hand side vectors B for the system of
!>          linear equations.
!>          On exit, the solution vectors, X.
!>
```

*LDB*

```
!>          LDB is INTEGER
!>          The leading dimension of the array B.  LDB >= max(1,N).
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **112** of file **zptts2.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
