MeshLib C# Docs
Loading...
Searching...
No Matches
MR.Const_SymMatrix3d Class Reference

symmetric 3x3 matrix Generated from class MR.SymMatrix3d. This is the const half of the class. More...

+ Inheritance diagram for MR.Const_SymMatrix3d:

Classes

struct  _Underlying
 

Public Member Functions

virtual void Dispose ()
 
unsafe Const_SymMatrix3d ()
 Constructs an empty (default-constructed) instance.
 
unsafe Const_SymMatrix3d (MR.Const_SymMatrix3d _other)
 Generated from constructor MR.SymMatrix3d.SymMatrix3d.
 
unsafe double trace ()
 computes trace of the matrix Generated from method MR.SymMatrix3d.trace.
 
unsafe double normSq ()
 computes the squared norm of the matrix, which is equal to the sum of 9 squared elements Generated from method MR.SymMatrix3d.normSq.
 
unsafe double det ()
 computes determinant of the matrix Generated from method MR.SymMatrix3d.det.
 
unsafe MR.SymMatrix3d inverse ()
 computes inverse matrix Generated from method MR.SymMatrix3d.inverse.
 
unsafe MR.SymMatrix3d inverse (double det)
 computes inverse matrix given determinant of this Generated from method MR.SymMatrix3d.inverse.
 
unsafe MR.Vector3d eigens (MR.Misc.InOut< MR.Matrix3d >? eigenvectors=null)
 returns eigenvalues of the matrix in ascending order (diagonal matrix L), and optionally returns corresponding unit eigenvectors in the rows of orthogonal matrix V, M*V^T = V^T*L; M = V^T*L*V Generated from method MR.SymMatrix3d.eigens.
 
unsafe MR.Vector3d eigenvector (double eigenvalue)
 computes not-unit eigenvector corresponding to a not-repeating eigenvalue Generated from method MR.SymMatrix3d.eigenvector.
 
unsafe MR.SymMatrix3d pseudoinverse (double? tol=null, MR.Misc.InOut< int >? rank=null, MR.Misc.InOut< MR.Vector3d >? space=null)
 for not-degenerate matrix returns just inverse matrix, otherwise returns degenerate matrix, which performs inversion on not-kernel subspace;
 

Static Public Member Functions

static unsafe MR.SymMatrix3d identity ()
 Generated from method MR.SymMatrix3d.identity.
 
static unsafe MR.SymMatrix3d diagonal (double diagVal)
 Generated from method MR.SymMatrix3d.diagonal.
 

Protected Member Functions

virtual unsafe void Dispose (bool disposing)
 

Properties

unsafe double xx [get]
 zero matrix by default
 
unsafe double xy [get]
 zero matrix by default
 
unsafe double xz [get]
 zero matrix by default
 
unsafe double yy [get]
 zero matrix by default
 
unsafe double yz [get]
 zero matrix by default
 
unsafe double zz [get]
 zero matrix by default
 
- Properties inherited from MR.Misc.Object< Const_SymMatrix3d >
virtual bool _IsOwning [get]
 Returns true if this is an owning instance, and when disposed, will destroy the underlying C++ instance. If false, we assume that the underlying C++ instance will live long enough.
 

Additional Inherited Members

- Protected Attributes inherited from MR.Misc.Object< Const_SymMatrix3d >
bool _IsOwningVal
 

Detailed Description

symmetric 3x3 matrix Generated from class MR.SymMatrix3d. This is the const half of the class.

Member Function Documentation

◆ pseudoinverse()

unsafe MR.SymMatrix3d MR.Const_SymMatrix3d.pseudoinverse ( double? tol = null,
MR.Misc.InOut< int >? rank = null,
MR.Misc.InOut< MR.Vector3d >? space = null )
inline

for not-degenerate matrix returns just inverse matrix, otherwise returns degenerate matrix, which performs inversion on not-kernel subspace;

Parameters
tolrelative epsilon-tolerance for too small number detection
rankoptional output for this matrix rank according to given tolerance
spacerank=1: unit direction of solution line, rank=2: unit normal to solution plane, rank=3: zero vector Generated from method MR.SymMatrix3d.pseudoinverse. Parameter tol defaults to std.numeric_limits<double>::epsilon().

The documentation for this class was generated from the following file: