---
name: "ddrvab.f"
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/ddrvab.f"
---

# ddrvab.f(3)

## NAME

TESTING/LIN/ddrvab.f

## SYNOPSIS

### Functions/Subroutines

subroutine **ddrvab** (dotype, nm, mval, nns, nsval, thresh, nmax, a, afac, b, x, work, rwork, swork, iwork, nout)\
 **DDRVAB**

## Function/Subroutine Documentation

### subroutine ddrvab (logical, dimension( \* ) dotype, integer nm, integer, dimension( \* ) mval, integer nns, integer, dimension( \* ) nsval, double precision thresh, integer nmax, double precision, dimension( \* ) a, double precision, dimension( \* ) afac, double precision, dimension( \* ) b, double precision, dimension( \* ) x, double precision, dimension( \* ) work, double precision, dimension( \* ) rwork, real, dimension(\*) swork, integer, dimension( \* ) iwork, integer nout)

**DDRVAB**

**Purpose:**

```
!>
!> DDRVAB tests DSGESV
!>
```

**Parameters**

*DOTYPE*

```
!>          DOTYPE is LOGICAL array, dimension (NTYPES)
!>          The matrix types to be used for testing.  Matrices of type j
!>          (for 1 <= j <= NTYPES) are used for testing if DOTYPE(j) =
!>          .TRUE.; if DOTYPE(j) = .FALSE., then type j is not used.
!>
```

*NM*

```
!>          NM is INTEGER
!>          The number of values of M contained in the vector MVAL.
!>
```

*MVAL*

```
!>          MVAL is INTEGER array, dimension (NM)
!>          The values of the matrix row dimension M.
!>
```

*NNS*

```
!>          NNS is INTEGER
!>          The number of values of NRHS contained in the vector NSVAL.
!>
```

*NSVAL*

```
!>          NSVAL is INTEGER array, dimension (NNS)
!>          The values of the number of right hand sides NRHS.
!>
```

*THRESH*

```
!>          THRESH is DOUBLE PRECISION
!>          The threshold value for the test ratios.  A result is
!>          included in the output file if RESULT >= THRESH.  To have
!>          every test ratio printed, use THRESH = 0.
!>
```

*NMAX*

```
!>          NMAX is INTEGER
!>          The maximum value permitted for M or N, used in dimensioning
!>          the work arrays.
!>
```

*A*

```
!>          A is DOUBLE PRECISION array, dimension (NMAX*NMAX)
!>
```

*AFAC*

```
!>          AFAC is DOUBLE PRECISION array, dimension (NMAX*NMAX)
!>
```

*B*

```
!>          B is DOUBLE PRECISION array, dimension (NMAX*NSMAX)
!>          where NSMAX is the largest entry in NSVAL.
!>
```

*X*

```
!>          X is DOUBLE PRECISION array, dimension (NMAX*NSMAX)
!>
```

*WORK*

```
!>          WORK is DOUBLE PRECISION array, dimension
!>                      (NMAX*max(3,NSMAX))
!>
```

*RWORK*

```
!>          RWORK is DOUBLE PRECISION array, dimension
!>                      (max(2*NMAX,2*NSMAX+NWORK))
!>
```

*SWORK*

```
!>          SWORK is REAL array, dimension
!>                      (NMAX*(NSMAX+NMAX))
!>
```

*IWORK*

```
!>          IWORK is INTEGER array, dimension
!>                      NMAX
!>
```

*NOUT*

```
!>          NOUT is INTEGER
!>          The unit number for output.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **148** of file **ddrvab.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
