![]() |
deal.II version 9.7.1
|
#include <deal.II/base/array_view.h>#include <deal.II/base/tensor.h>#include <deal.II/lac/exceptions.h>#include <deal.II/lac/lapack_templates.h>#include <array>Go to the source code of this file.
Functions | |
| template<int dim, typename Number> | |
| Tensor< 2, dim, Number > | project_onto_orthogonal_tensors (const Tensor< 2, dim, Number > &A) |
| template Tensor< 2, 1, float > | project_onto_orthogonal_tensors (const Tensor< 2, 1, float > &) |
| template Tensor< 2, 2, float > | project_onto_orthogonal_tensors (const Tensor< 2, 2, float > &) |
| template Tensor< 2, 3, float > | project_onto_orthogonal_tensors (const Tensor< 2, 3, float > &) |
| template Tensor< 2, 1, double > | project_onto_orthogonal_tensors (const Tensor< 2, 1, double > &) |
| template Tensor< 2, 2, double > | project_onto_orthogonal_tensors (const Tensor< 2, 2, double > &) |
| template Tensor< 2, 3, double > | project_onto_orthogonal_tensors (const Tensor< 2, 3, double > &) |
|
Return the nearest orthogonal matrix 



This is a (nonlinear) projection operation since when applied twice, we have 





due to the fact that the 

| A | The tensor for which to find the closest orthogonal tensor. |
| Number | The type used to store the entries of the tensor. Must be either float or double. |
A must not be singular. This is because, conceptually, the problem to be solved here is trying to find a matrix 










