最近、二つのヴァイオリン研究について学会記事を書くことがありました。
ひとつは米国音響学会がシカゴで開催されその招待講演。もうひとつは日本の音響学会の学会誌で楽器特集が組まれその中でヴァイオリンの音響をコンピュータで解析する技術についての解説。
どちらも、小職が取り組んでいるマイクロCTスキャナとコンピュータシミュレーションを使ったヴァイオリンから放射される音の広がりについてが主な中身。
それと、人工知能を使ってヴァイオリンの音色から製作者を当てようという、つまりはストラディヴァリのような超高価なヴァイオリンの鑑定ができないかというチャレンジについても。
最近は、Valiational Auto-EncoderというAIを使って、ストラドの音を合成できないかという研究もしています(こちらはまた後日にでも)。
それで、学会での報告をごく手短に書こうかな、、、
と思って筆を執る🖊、いやキーボードをたたくことにしました⌨
コンピュータでヴァイオリンの音の放射をシミュレーションするには、いくつかのステップを経て行います。
楽器から音が出るということは、楽器が振動しているからです!(当たり前ですが)
楽器がどのように振動するかは
①形
②材料
③入力する力
で決まります。
ということで、楽器の振動をコンピュータで計算して、その振動から周囲の音圧を計算してきます。
1.ヴァイオリンの形をパソコンに取り込む
簡単な形(四角とか円、その組み合わせ等)でしたらCADソフトで作図できますが、ヴァイオリンのような複雑な楽器は難しいといえます。というのも、ヴァイオリンは外形のエレガントなカーブの作図も難しいですが、外見だけをなぞるだけでは不十分で、板の厚さも場所によって異なるからです。
下の図は、とあるストラディヴァリをCTスキャンした断面図です。右上はヴァイオリンの胴体を輪切りにした段目ですが、このように表板(上側)と裏板(下側)の真ん中が厚くなっていて、中心から外側に向かってなだらかに薄くなっていきます。こういった微妙なグラデーションはやはりCTスキャナでないときれいに再現できません。
この研究では100ミクロンという高精度でスキャンしたデータを使っています。医療用のCTスキャナよりももっと解像度の高い装置を使っていて、世界的にみても最高画質だといえます(ほかにはウィーンやモデナで計測できる施設があるようです)。
#撮影の風景はこちらのYouTubeで!
ところが、このスキャンしたデータはそのままではシミュレーションには使えません。
というのも、スキャンしたデータには、細かなノイズが入ってしまうためそれらを取り除いて、細かすぎる凹凸(トゲや穴など)を取り除いて表面を平均化して最適化する必要があります。この手間が大変で専門の技術者に頼むので相当の費用がかかってしまうのです。(ここまでの費用はン十万円!)
次に、取り込んだ形状データ(ジオメトリという)はいくつかのパーツに分割してファイル(STEP形式)に保存します。それは、この次の記事で詳細は説明しますが、ヴァイオリンの材料はパーツによってその物性値を変えて設定しないと実物に合った計算ができないからです。
それらのパーツをコンピュータに取り込むわけですが、計算するソフトウェアはCOMSOL Multiphysicsを使用しました。取り込んだ後に数値計算をするための格子を作成します(メッシュを切るという)。計算の手法は有限要素法(Finite Element Method)を使っていますが、近年この手法は精度向上の研究がかなりなされいて、物体を細かな形状(ここでは四面体)に分割して、その一つ一つの動きや力を連立方程式で解くというものです。
図はフリーメッシュ法による自動メッシュ生成でヴァイオリンを200万の要素に分割したメッシュの図です。
こうみるとかなりの要素数で忠実に再現できているように見えますが、実はそうでもないのです。
さきほどの100ミクロンの精度で撮ったデータですが、そのまま忠実にメッシュを切ると、楽器本体だけでもゆうに数億個になってしまいます。しかも、周りの音が飛ぶ空気の領域までメッシュ化してそれを含めると途方もない桁の要素数になり、いくら世界最高のスパコンであっても容易ではありません。
だから、現段階でパソコンで計算するには10倍ほどの大きさのメッシュで最適化(Optimize)して減らしています。。
将来、エクサ規模のスパコンが利用できるようになると数百億のメッシュの直接計算が可能になるかもしれません。
いま私たちのプロジェクトではスパコンで同様の計算をするための開発も行っています。
そして、このパソコンに取り込んだCADデータにヴァイオリンの木材の性質を反映させなければなりません。
(この続きは、次回につづく!)