私の卒論の内容に興味を持っていただいて有難うございます。ここでは私の研究について、もう少し詳しい内容を書いていきたいと思います。
私は大学で「キャビティ音の低減に関する格子ボルツマン法を用いた数値解析」というテーマで研究しました。大学院でもこの研究の続きのような研究を行っています。
卒論のタイトルだけを見ても何がどうなっているのかわからないと思うので、そこから解説していこうと思います。
流体騒音の一種で、凹んだ形状に流体が流れることで起きます。具体的には新幹線や電車の連結部分、離着陸時に飛行機の脚が開いた時、ヒートシンクの冷却時などに発生しています。
こんな感じの凹んだような形状です。
流体を仮想粒子の集合体として見ることで数値的に計算していくという手法を用いています。この計算の良いところは流れの挙動と音について一回の計算で解くことができる点にあります。通常は流体音の計算をしようとするとナビエストークス方程式という複雑な方程式を解いて流体の流れを導出した後に、音についての方程式を解かなければならず、計算にかかるコストが大きいです。しかし、格子ボルツマン法では一回の計算で音と流れを解くことができるので計算コストが軽く、使いやすいと言われています。
数値解析手法として勾配法の一種である随伴解析(アジョイント法)という手法を用いて騒音を下げるような最適な形状を模索するのに用いました。アジョイント法では計算時間がパラメーターの個数によらないところが利点で、従来の最適化手法では自分が知りたいパラメーターひとつずつについて計算しないといけなかったのですが、アジョイント法だと全てのパラメーターを一度に計算することができるので、計算時間が速いです。(ですが局所的な解に陥りやすいという欠点もあります。)
数値計算をする上では九州大学のスーパーコンピューターを積極的に利用しました。
スーパーコンピューターがある大学は日本の中ではとても少なく、旧帝大と東工大を合わせた8大学ほどしかありません。
そのため九州大学ではかなり充実した研究生活を送ることができると思います。
自分が行った解析の進め方を書いていきます。
解析のテーマあるあるだと思うのですが、まず最初に自分が使う解析手法で実際の現象が再現できるのかを検証していく必要があります。
簡単な実験の結果と解析の結果をいくつか比較し、解析手法が有効であるのかを確認します。
大きなズレがないことを確認できたらスタートです。
もしズレてしまっていたら、境界条件などを考えて修正していきます。
簡単な実験の結果と解析の結果が一致することがわかったら、次は自分の研究対象(キャビティ)用に色々とコードを書き足していきます。
私の場合はキャビティが角張りすぎていて計算がうまくいかない部分があったので、角部を滑らかにするために補完をするプログラムを作成したり、細々とした部分を修正したりしました。
ある程度できたら、自分の研究対象について実験の先行研究がある場合には、解析でも同じ条件を揃えて比較し、再現できているのかを確認します。先行研究がなければ、似たような条件の先行研究と比較するか、自分で行った実験結果と比較することになると思います。
ここでできていなかったらまた境界条件を考え直したり、プログラムを修正する必要が出てきます。
解析ができるようになったとしてもまだまだ課題は多くありました。
例えば、どこまで音が下がったら最適化が終わったとみなせるのかであったり、最適化のステップ幅もどのように決めればいいのかなど、手探りの状態から始まりました。それらについて、先行研究の論文を見て、自分なりに理由づけをしていくのが大変でした。
ですが、そのように論理的に組み立てていったことで、満足のいく結果が得られたので考え続けることをやめずにやり抜くことが大切なんだなと感じました。
苦労したことは、やはりプログラムを書いたり、読み解いたりすることだったと思います。
学部時代にプログラミング演習などの授業を必修でやっていたものの、使用するプログラミング言語も処理も全然違ってかなり大変でした。
研究室配属当初はわからない部分が多く、ついていけるか不安でしたが先輩や先生方の指導のおかげで食らいついていくことができました。
難しそうでも飛び込んでみればどうにかなると思います!頑張りましょう!!