orthogonal. Default: ""weight"".
  * **orthogonal_map** (*str**, **optional*) -- One of the
    following: ""matrix_exp"", ""cayley"", ""householder"".
    Default: ""matrix_exp"" if the matrix is square or complex,
    ""householder"" otherwise.

  * **use_trivialization** (*bool**, **optional*) -- whether to
    use the dynamic trivialization framework. Default: "True".

Returns:
      The original module with an orthogonal parametrization
      registered to the specified weight
Return type:
      Module
Example:
  >>> orth_linear = orthogonal(nn.Linear(20, 40))
  >>> orth_linear
  ParametrizedLinear(
  in_features=20, out_features=40, bias=True
  (parametrizations): ModuleDict(
      (weight): ParametrizationList(
      (0): _Orthogonal()
      )
  )
  )
  >>> Q = orth_linear.weight
  >>> torch.dist(Q.T @ Q, torch.eye(20))
  tensor(4.9332e-07)
