• ベストアンサー

現在matlabで音の伝搬の様子をアニメーションというか、球面波(平面

現在matlabで音の伝搬の様子をアニメーションというか、球面波(平面波)を可視化したいのですが、調べても方法がよくわかりません。 自由空間におけるグリーン関数(点音源)の式を利用して任意の距離の点での音圧はプログラムで求め、それを逆FFTして時間領域に変換はしました。(時間領域にしないとおかしいですよね?) ですので、今のところ任意の点での音圧の時間変化(インパルス応答)はでています。

  • r-ek9
  • お礼率100% (2/2)

質問者が選んだベストアンサー

  • ベストアンサー
  • Kules
  • ベストアンサー率47% (292/619)
回答No.1

音波がらみの式については詳しくないのですが… 平面波を可視化するとはどのようなことをイメージされているのでしょうか? 例えば X0=(0:5e-3:10)'; Y0=(0:1)'; phai=(0:1e-2:6)'*pi; [X Y]=meshgrid(X0,Y0); figure(1); h_surf=surf(X,Y,zeros(size(X))); set(gca,'ClimMode','Manual','Clim',[-1 1],'Zlim',[-3 3]); set(h_surf,'EdgeColor','None'); for k=1:length(phai); set(h_surf,'Zdata',sin(X*pi-phai(k)));%…(※) drawnow; end; みたいに書くと平面波が進んでいく様子が見えますが、このようなものを作りたいのでしょうか? もしそうだとするならば、アニメーションを作る中で重要になるのは(※)の行です。 (その前は全部下準備です) (※)の行で波の上下方向の座標を変えることで波が進んでいるように見せています。 また、そのすぐ下の行のdrawnowで即座に波を描かせるようにしています。 このようなアニメーションを作る時には、 >任意の点での音圧の時間変化(インパルス応答) よりは「ある時間における全ての点での音圧の変化を記述する行列」があった方がうれしいと思います。 (まあ行列の作り方をちょっと変えるだけですが) 的外れな回答でしたらすみません。その旨補足欄に書いていただければもう少し的を射た回答ができるかも知れません。 長文失礼しました。参考になれば幸いです。

r-ek9
質問者

お礼

参考にさせていただきます。ありがとうございました。

関連するQ&A

  • 平面と球面

    はじめまして。 xyz空間において、球面S:x^2+y^2+z^2=1と点A(3,0,0)について以下の問に答えよ。 (1)平面x=cと球面Sとが交わるような実数cの範囲をもとめよ。 (1)で平面x=cという意味がよくわからないのですが どうゆうことなのでしょうか?? x=1やx=2ならば直線の式となるのですが、平面となるとよくわかりません・・・。そしてx=cのcは定数と考えてよいのでしょうか?? そうなると、zy平面の任意の面と考えてしまう自分がいるのですが・・。 初歩的な質問ですがよろしくお願いします。

  • 実際の遠方での平面スピーカーの音圧特性は?

    コーン形振動板は点音源で球面波で伝達するので遠方で音圧低下が大きいが、 平面スピーカーは振動板面がフラットで面音源なので平面波で伝達するので遠くでも音圧低下が小さいと主張するこの記事などがあります。 http://www.just-tech.co.jp/livesound_r3/Exp1.htm この記事の理論では、図のように30m遠方では平面スピーカーの高音が異常に大きくなるはずで高音しゃりしゃりの音になるのでは?と想像しますが、 平面スピーカーで距離での比較を実際に測定した、 周波数特性図などはあるのでしょうか? なんでも良いので参考になるご意見などをお願いします。

  • デジタル信号処理のフーリエ変換で

    matlabで勉強中なんですが、以下の操作をするとどうなるのか教えて頂きたいです。 (音声信号xにfftをかけて、フーリエ係数Xを求めてあるとします。) ・xを一定間隔で間引いた(3点中2点を0で埋めていく)場合、fftをかけるとフーリエ係数はどうなるのか? ・同様にXを間引いてifftをかけたら、復元された信号はどうなるのか? (間引く: □□□□□□□□□□□□… → □00□00□00□00□… ) 要するに、 時間領域で時系列の間引きを行うと周波数領域ではどんな影響がでるのか? 周波数領域でスペクトルを間引くと時間領域でどんな影響がでるのか? ということを知りたいのです。 実際にやってみたのですが、結果がどういう意味なのかイマイチわからず悩んでいます。 前者は、周波数領域で振幅を調べたら、1/3の長さのスペクトルが3つ並んでいました。 後者は、時間領域で複数(この場合3つかな?)の音が重なった感じになっていて、波形は元の信号とだいぶ異なっていました。 わかりやすく説明してもらえると助かります。よろしくお願いします。

  • 微分要素のインパルス応答の周波数領域

    先日MATLABで次のような波形を作りインパルス応答を調べました。 入力x(t)=sin波 出力y(t)=微分フィルタのよって出力された波形(cos波) X=fftshift(fft(x)),Y=fftshift(fft(y))として H=Y./X としたところ、添付画像のような結果が得られました。 時間領域でのインパルス応答h(t)は以前同じような質問がなされていたので理解できましたが、この周波数領域(ラプラス変換をするならばS領域)でこのような結果が得られる理由をご教授いただきたく思います。 私の考えうる限りでは、周波数領域で考えれば Y(ω)=iωX(ω) (Xを微分すればiωが前に出るため) H(ω)=iω となり少なくとも添付画像のように実数部が値を持ったり、虚数部が値を持つことがないと思うのですが・・・ ※ t=((1:N)-1)*(T/N) omega=((1*N)-N/2)*(2*pi/T) と設定しました。 どうかよろしくお願い致します。

  • 2つの球面波の受信信号

    音源が平面波の時、2つの受信信号を Sa(t)=sin(ω(t+Δt)) Sb(t)=sin(ω(t-Δt)) であり、Δt=d*sinθ/(2*c)である。 ここで、dは受信点間隔、cは音速です。 このとき、音源が球面波の場合はどうなるのでしょう? 受信点に生じる音圧の式を用いて考えたところ、 Sa(t)=1/(2πr)*sin(ω{(t-r/c)+Δt}) Sb(t)=1/(2πr)*sin(ω{(t-r/c)-Δt}) となるんじゃないかと思うのですが、、、

  • 球面についての問題です。

    考え方だけでも良いので教えてください。 xyz空間に点P(0,0,5)を通る直線lと点Q(0,4,2)を中心とする半径rの球面Sがある。 問1 球面Sと接する直線lが存在するためのrの範囲を求めよ。 問2 r=1とし、点Pに点光源を置いたとき、xy平面上にできる球面Sの影を領域Rとする。 領域Rを表す不等式を求めよ。 問3 領域Rの面積を求めよ。 問1については自力で考えた結果、恐らくr<=5じゃないかと思うのですが確証が持てません・・・orz

  • 「幾何学基礎論」定理8の証明

    ヒルベルト「幾何学基礎論」の定理8「一平面αの上にある任意の直線aはこの直線上にない平面αの点を次の性質を有する二つの領域に分かつ:即ち相異なる領域からそれぞれ任意の一点A、Bをとるとき、それの定める線分ABの上には直線aの点が存在し、同一の領域からとった任意の二点A、A‘の定める線分AA‘はaの点を含まない。」この定理の結合公理と順序公理のみからの証明をご存じの方がいれば教えてください。お願いします。

  • matlabで指定した周波数帯域だけ返す方法

    matlab初心者です。 matlabで、ある音響データを読み込んだ時、時間領域の波形のまま、 指定した周波数帯域だけを取り出したいのですがやり方が分かりません。 例として、サンプリング周波数44.1kH  16bitモノラル音源の音響データがあったとして、 1kH~1.5kHの周波数帯域を時間領域の波形のまま取り出すにはどうすればいいですか? つまるところ、帯域通過フィルタの設計方法がわからないのです。

  • 自由音場

    音響関連の質問を2つさせていただきます。 いろいろなサイトを見ると、「自由音場とは均質媒質中で境界の影響を無視できる音場」とか「音の強さが音源からの距離の2乗に比例して減衰しながら音が伝わる音場」と言うように定義されていますが、これは、 音源iから制御点jの間の室内音響伝達関数をGij(z)とすると、全てのGij(z)についてGij(z)=1としてよい と言うことになるのでしょうか? 2つ目は「音の強さが音源からの距離の2乗に比例して減衰」と言うのは、 例えば、座標平面上で位置ベクトルrの音源の音圧を基準として、位置ベクトルsの地点の音圧を算出するときは 20log(p(s)/(p(r)|s-r|^2)) となるのでしょうか? もしかしたらちょっと的外れなことを聞いているかもしれませんが、つまり「音源からの距離」の「距離」の定義を知りたいです。 「自由音場で音源を基準とした音源から2mの位置の音圧はどうなるの?」みたいな感じです。 わかる方がいらっしゃいましたらよろしくお願いします。

  • 5-12 高校数学 場合の数

    球面S上に、どの3つも共有点をもたないようなn個の大円が与えられていて、これらn個の大円はf(n)個の交点を持ち、またこれらの大円はf(n)個の交点によりg(n)個の円弧に分割されているものとする ただし球面Sの上の大円とは球面Sとその球面の中心を通る平面との共通集合としての円のことである 注 球面は2+f(n)個の領域に分割されます(第一の大円で2分割され、それ以降は交点の数だけ増えるから) 注の球面が2+f(n)に分割されるの所がまだ良く分かりません、詳しく御説明のほうお願いします

専門家に質問してみよう