LinearAlgebra`BLAS`
LinearAlgebra`BLAS`

ROT

ROT[x,y,c,s]

applies a Givens rotation {{c,s},{-Conjugate[s],c}} to the vectors x and y.

Details

  • To use ROT, you first need to load the BLAS Package using Needs["LinearAlgebra`BLAS`"].
  • The following arguments must be given:
  • xinput/output symbolvector; the symbol value is modified in place
    yinput/output symbolvector; the symbol value is modified in place
    cinput expressionreal-valued scalar
    sinput expressionscalar
  • ROT[x,y,c,s] is equivalent to {x,y}={{c,s},{-Conjugate[s],c}}.{x,y} where x and y are row vectors.
  • The vector arguments must be of the same length.

Examples

open allclose all

Basic Examples  (1)

Load the BLAS package:

Apply a Givens rotation to two vectors:

Scope  (4)

Real vectors:

Complex vectors:

Arbitrary-precision vectors:

Symbolic vectors:

Properties & Relations  (1)

ROT[x,y,c,s] is equivalent to {x,y}={{c,s},{-Conjugate[s],c}}.{x,y}:

Possible Issues  (4)

If the first or second argument are not symbols, an error message is issued:

If the first or second argument are not initialized, an error message is issued:

The third argument c should be real.

The third and fourth arguments and should satisfy the relation to be a true Givens rotation. This condition is not checked.