行ベクトルのノルム演算を関数として以下のように実装する。
/* 行ベクトルのノルム */ 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); }