public static float CalcError(Mat3 A, Vector3 x, Vector3 b) { Vector3 vtmp = new Vector3(); vtmp = MatUtils.Vmul(A, x); //vtmp = b - vtmp; vtmp = VecUtils.Sub(b, vtmp); return(Vector3.Dot(vtmp, vtmp)); }
public static float CalcError(SMat3 origA, Vector3 x, Vector3 b) { Mat3 A = new Mat3(); Vector3 vtmp = new Vector3(); A.SetSymmetric(origA); vtmp = MatUtils.Vmul(A, x); vtmp = VecUtils.Sub(b, vtmp); //vtmp = b - vtmp; return(Vector3.Dot(vtmp, vtmp)); }