Skip to main content

sormtr

Function sormtr 

Source
pub fn sormtr(
    ctx: &Context,
    side: SideMode,
    fill_mode: FillMode,
    operation: Operation,
    m: usize,
    n: usize,
    a: &mut DeviceMemory<f32>,
    lda: usize,
    tau: &mut DeviceMemory<f32>,
    c: &mut DeviceMemory<f32>,
    ldc: usize,
    workspace: &mut DeviceMemory<f32>,
    dev_info: &mut DeviceMemory<i32>,
) -> Result<()>
Expand description

Use the matching buffer-size helper to calculate the required workspace size.

The S and D data types are real valued single and double precision, respectively.

The C and Z data types are complex valued single and double precision, respectively.

Applies the orthogonal matrix Q, represented by the elementary reflectors returned by sytrd, to C and stores the result in C.

side selects whether Q is applied from the left or right, and operation selects whether Q is transposed.

Provide workspace through workspace. Use the corresponding *_buffer_size helper to query the required workspace length. The workspace size in bytes is size_of::<T>() * lwork.

If the reported dev_info value is -i, the ith parameter is invalid.

ยงErrors

Returns an error if cuSOLVER has not been initialized, if the matrix dimensions or leading dimensions are invalid, if the current GPU architecture is unsupported, or if cuSOLVER reports an internal failure.