A を任意の次元 (私の場合は 2 または 3) の配列とします。次元数を事前に知らなくても、この配列を平坦化 (1D に変形) するにはどうすればよいですか?
次元数がわかっていれば、(「Array Size」関数の組み合わせを使用して) 要素の総数を簡単に取得し、この数値を使用して A を 1D に変形できます。残念ながら、「配列サイズ」関数自体は、要素数が次元数と等しい配列を返すため、最初の問題に戻ります。
3D 配列 (私が処理すると予想される配列の最も一般的なタイプ) の要素の総数を返す関数 (VI) を作成することで、問題を「解決」しました。リシェイプ機能。問題: アルゴリズムが 2D 配列で機能するにもかかわらず、2D 配列を受け入れない! (Labview では、配列コントロールは受け入れる次元の数について厳密であるように思われますが、たとえば Matlab ではそうではありません)。
適切な解決策は、「配列サイズ」で指定された配列のすべての要素を乗算して、要素の総数をすばやく取得する簡単な方法です。これをサブ VI でラップする必要はありません。全体として、この問題を解決する簡単で効率的な方法はありませんか? それはかなり標準的なはずです..