2012-03-06 8 views
2

私はMatlabを使って平面音響の伝播をモデリングしています。私は、波の入射角を変えてシミュレーションを実行するループを作成しようとしています。かなり簡単ですが、私はループ内で音波を定義するのに苦労しています。説明するのは非常に簡単ですが、本質的にトリグの問題をエンコードすることは私に問題を引き起こしています。トリッキー三角法 - matlabの定義済みメッシュ内の波の開始位置

image of scenario

angular_increments = 300; 
for i=1:angular_increments, 
    % source position is positive along the y-z-axis 
    theta= 0+(angular_inc *i); 
    x_position = 0; % fixed - independant of angle 
    y_position = d * cos((pi/2)-theta); 
    y_position = y_position * dy; 
    z_position = d * sin((pi/2)-theta); 
    z_position = z_position * dz; 

    % Source function - defines a point of pressure 
    source_grid = (kgrid.x = x_position); 
    source_grid = source_grid&(kgrid.y = y_position); 
    source_grid = source_grid&(kgrid.z = z_position); 

これは非常に歓迎されるであろうアプローチする方法上の任意のアイデアを次のように私は点光源の場合のためにこれをやりました。

答えて

0

私はHuygens principleを適用しようとしています。異なる時点でレイ伝播を計算するいくつかの個別のレイの問題を解決します。次に、点を通る直線をフィッティングするか、またはスプラインを適用することによって、波面を形成するために、与えられたすべての時点で個々の光線の位置を結合します(波と媒質の境界面が複雑な場合、媒質は不均質である。

関連する問題