ベクトル場の発散計算のため3次元配列データを読み込みたい
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
3次元で座標と速度をもつエクセルファイルからデータを読み込んで、そのベクトル場の発散を計算したいです。
事前作業として、エクセルファイルから各列データを読み込む必要がありますが、このようなエラーが出てしまいます。
読み込んだデータを各列でx,y,z,u,v,wとラベルを付ける必要があると思っているのですが、どのような方法があるのか、アドバイスいただきたいです。
読み込み用のエクセルファイルを添付しておりまして、作製したコードは以下に示しています。
clear
T = readtable('Flow_Field_xyz.xlsx');
Xa = table2array(X);
Ya = table2array(Y);
Za = table2array(Z);
Ua = table2array(U);
Va = table2array(V);
Wa = table2array(W);
div = divergence(Xa,Ya,Za,Ua,Va,Wa);
>> Divergence_ff
エラー: divergence (行 54)
ボリューム データ引数は 3-D 配列でなければなりません。
エラー: Divergence_ff (行 20)
div = divergence(Xa,Ya,Za,Ua,Va,Wa);
4 Kommentare
Atsushi Ueno
am 1 Jul. 2021
clear
T = readtable('Flow_Field_xyz_mini.xlsx');
div = divergence(T.Var1,T.Var2,T.Var3,T.Var4,T.Var5,T.Var6);
とすれば、Flow_Field_xyz.xlsx から読んだデータの各列をX,Y,Z,U,V,Wの変数とすることが可能です。
しかし各列(ベクトル)を入力すると、発散計算(divergence)の入力条件を満たしません
入力座標。行列または 3 次元配列として指定します。
- 2 次元ベクトル場の場合、X と Y は同じサイズの 2 次元行列でなければならず、そのサイズは 2 行 2 列以上でなければなりません。
- 3 次元ベクトル場の場合、X、Y、Z は同じサイズの 3 次元配列でなければならず、そのサイズは 2 x 2 x 2 以上でなければなりません。
Antworten (0)
Siehe auch
Kategorien
Mehr zu スプレッドシート finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!