next up previous contents
: 行列と列ベクトルの積 : ベクトルのノルム : ベクトルのノルム   目次

実装

行ベクトルのノルム演算を関数として以下のように実装する。

/* 行ベクトルのノルム */
void WH_Matrix__whNorm_whRv_OUT_s
(int nColumns_a, double whRv_a[],
 double *OUT__b)
/*
  入力引数:
    nColumns_a は行ベクトル whRv_a の列数
    whRv_a は行ベクトル
  出力引数:
    OUT__bはスカラーで、whRv_a のノルム
*/
{
  int i;

  *OUT__b = 0.0;
  for (i = 0; i < nColumns_a; i++) {
    *OUT__b += whRv_a[i] * whRv_a[i];
  }
  *OUT__b = sqrt (*OUT__b);
}

列ベクトルのノルム演算を関数として以下のように実装する。

/* 列ベクトルのノルム */
void WH_Matrix__whNorm_whCv_OUT_s
(int nRows_a, double whCv_a[],
 double *OUT__b)
/*
  入力引数:
    nRows_a は列ベクトル whCv_a の列数
    whCv_a は列ベクトル
  出力引数:
    OUT__bはスカラーで、whCv_a のノルム
*/
{
  int i;

  *OUT__b = 0.0;
  for (i = 0; i < nRows_a; i++) {
    *OUT__b += whCv_a[i] * whCv_a[i];
  }
  *OUT__b = sqrt (*OUT__b);
}



Hiroshi KAWAI 平成15年8月11日