NormalizeDouble

행렬/벡터의 요소를 지정된 만큼 반올림합니다. 복소수의 경우에는 실수 부분과 허수 부분이 각각 별도로 정규화됩니다. 정규화된 요소와 함께 행렬/벡터를 반환합니다.

vector vector::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
vectorf vectorf::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
vectorc vectorc::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
vectorcf vectorcf::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
matrix matrix::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
matrixf matrixf::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
matrixc matrixc::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );
 
matrixcf matrixcf::NormalizeDouble(
  int            digits      // 소수점 이하 자릿수
   );

매개 변수

digits

[in]  정확도 형식, 소수점 뒤의 자릿수(0-11).

Return Value

정규화된 값을 갖는 행렬/벡터.

예시

   matrixf a={{ 11234},
              { 12567},
              { 2539,10},
              { 36945},
              { 47,1055}};
   matrixf ai=a.Inv();
//--- 결과 행렬은 단위 행렬이어야 합니다
   matrixf aai=a@ai;
   Print(aai);
//--- 작은값 교체
   matrixf aain=aai.NormalizeDouble(5);
//--- 정확한 단위 행렬
   Print("identity matrix\n",aain);
 
/*
[[0.99999976,0,0,-2.3841858e-07,0]
 [-4.1723251e-07,1,1.8626451e-09,-5.9604645e-08,2.3841858e-07]
 [-1.0728836e-06,-1.1920929e-07,0.99999994,-8.3446503e-07,4.7683716e-07]
 [-2.9802322e-07,5.9604645e-08,-3.9115548e-08,0.99999958,0]
 [-5.9604645e-08,-5.9604645e-08,4.2840838e-08,-6.5565109e-07,1.0000002]]
identity matrix
[[1,0,0,0,0]
 [0,1,0,0,0]
 [0,0,1,0,0]
 [0,0,0,1,0]
 [0,0,0,0,1]]
*/