C# 클래스 Isosurface.QEFProper.SVD

파일 보기 프로젝트 열기: Lin20/isosurface 1 사용 예제들

공개 메소드들

메소드 설명
CalcError ( Mat3 a, Vector3 x, Vector3 b ) : float
CalcError ( SMat3 origA, Vector3 x, Vector3 b ) : float
GetSymmetricSvd ( SMat3 &a, SMat3 &vtav, Mat3 &v, float tol, int max_sweeps ) : void
Pinv ( float x, float tol ) : float
PseudoInverse ( SMat3 d, Mat3 v, float tol ) : Mat3
Rotate01 ( SMat3 &vtav, Mat3 &v ) : void
Rotate02 ( SMat3 &vtav, Mat3 &v ) : void
Rotate12 ( SMat3 &vtav, Mat3 &v ) : void
SolveSymmetric ( SMat3 A, Vector3 b, Vector3 &x, float svd_tol, int svd_sweeps, float pinv_tol ) : float

비공개 메소드들

메소드 설명
SolveLeastSquares ( Mat3 a, Vector3 b, Vector3 &x, float svd_tol, int svd_sweeps, float pinv_tol ) : float

메소드 상세

CalcError() 공개 정적인 메소드

public static CalcError ( Mat3 a, Vector3 x, Vector3 b ) : float
a Mat3
x Vector3
b Vector3
리턴 float

CalcError() 공개 정적인 메소드

public static CalcError ( SMat3 origA, Vector3 x, Vector3 b ) : float
origA SMat3
x Vector3
b Vector3
리턴 float

GetSymmetricSvd() 공개 정적인 메소드

public static GetSymmetricSvd ( SMat3 &a, SMat3 &vtav, Mat3 &v, float tol, int max_sweeps ) : void
a SMat3
vtav SMat3
v Mat3
tol float
max_sweeps int
리턴 void

Pinv() 공개 정적인 메소드

public static Pinv ( float x, float tol ) : float
x float
tol float
리턴 float

PseudoInverse() 공개 정적인 메소드

public static PseudoInverse ( SMat3 d, Mat3 v, float tol ) : Mat3
d SMat3
v Mat3
tol float
리턴 Mat3

Rotate01() 공개 정적인 메소드

public static Rotate01 ( SMat3 &vtav, Mat3 &v ) : void
vtav SMat3
v Mat3
리턴 void

Rotate02() 공개 정적인 메소드

public static Rotate02 ( SMat3 &vtav, Mat3 &v ) : void
vtav SMat3
v Mat3
리턴 void

Rotate12() 공개 정적인 메소드

public static Rotate12 ( SMat3 &vtav, Mat3 &v ) : void
vtav SMat3
v Mat3
리턴 void

SolveSymmetric() 공개 정적인 메소드

public static SolveSymmetric ( SMat3 A, Vector3 b, Vector3 &x, float svd_tol, int svd_sweeps, float pinv_tol ) : float
A SMat3
b Vector3
x Vector3
svd_tol float
svd_sweeps int
pinv_tol float
리턴 float