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

# dlasv2.f(3)

## NAME

SRC/dlasv2.f

## SYNOPSIS

### Functions/Subroutines

subroutine **dlasv2** (f, g, h, ssmin, ssmax, snr, csr, snl, csl)\
 **DLASV2** computes the singular value decomposition of a 2-by-2 triangular matrix.

## Function/Subroutine Documentation

### subroutine dlasv2 (double precision f, double precision g, double precision h, double precision ssmin, double precision ssmax, double precision snr, double precision csr, double precision snl, double precision csl)

**DLASV2** computes the singular value decomposition of a 2-by-2 triangular matrix.

**Purpose:**

```
!>
!> DLASV2 computes the singular value decomposition of a 2-by-2
!> triangular matrix
!>    [  F   G  ]
!>    [  0   H  ].
!> On return, abs(SSMAX) is the larger singular value, abs(SSMIN) is the
!> smaller singular value, and (CSL,SNL) and (CSR,SNR) are the left and
!> right singular vectors for abs(SSMAX), giving the decomposition
!>
!>    [ CSL  SNL ] [  F   G  ] [ CSR -SNR ]  =  [ SSMAX   0   ]
!>    [-SNL  CSL ] [  0   H  ] [ SNR  CSR ]     [  0    SSMIN ].
!>
```

**Parameters**

*F*

```
!>          F is DOUBLE PRECISION
!>          The (1,1) element of the 2-by-2 matrix.
!>
```

*G*

```
!>          G is DOUBLE PRECISION
!>          The (1,2) element of the 2-by-2 matrix.
!>
```

*H*

```
!>          H is DOUBLE PRECISION
!>          The (2,2) element of the 2-by-2 matrix.
!>
```

*SSMIN*

```
!>          SSMIN is DOUBLE PRECISION
!>          abs(SSMIN) is the smaller singular value.
!>
```

*SSMAX*

```
!>          SSMAX is DOUBLE PRECISION
!>          abs(SSMAX) is the larger singular value.
!>
```

*SNL*

```
!>          SNL is DOUBLE PRECISION
!>
```

*CSL*

```
!>          CSL is DOUBLE PRECISION
!>          The vector (CSL, SNL) is a unit left singular vector for the
!>          singular value abs(SSMAX).
!>
```

*SNR*

```
!>          SNR is DOUBLE PRECISION
!>
```

*CSR*

```
!>          CSR is DOUBLE PRECISION
!>          The vector (CSR, SNR) is a unit right singular vector for the
!>          singular value abs(SSMAX).
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>  Any input parameter may be aliased with any output parameter.
!>
!>  Barring over/underflow and assuming a guard digit in subtraction, all
!>  output quantities are correct to within a few units in the last
!>  place (ulps).
!>
!>  In IEEE arithmetic, the code works correctly if one matrix element is
!>  infinite.
!>
!>  Overflow will not occur unless the largest singular value itself
!>  overflows or is within a few ulps of overflow.
!>
!>  Underflow is harmless if underflow is gradual. Otherwise, results
!>  may correspond to a matrix modified by perturbations of size near
!>  the underflow threshold.
!>
```

Definition at line **135** of file **dlasv2.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
