2021年12月に初めて計算力学技術者試験を1級と2級の併願で受け、なんとか両方とも合格することができました。難しいくせにマイナーな試験であまり受けた人の情報もないため、受験経験者として学習内容や感想を記録したいと思います。Pythonを活用した勉強もしています。
こんにちは。wat(@watlablog)です。計算力学技術者試験(振動分野)を1、2級併願で受けてみたので、感想を書いてみます!
割とだらだらと書いていますので、必要な情報だけ欲しい人は是非目次からジャンプしてみてください。
計算力学技術者試験とは?
認定団体は日本機械学会
まずそもそも計算力学技術者試験ってかなりマイナーだと思いますので、概要だけ説明してみます。
計算力学技術者試験とは、日本機械学会(JSME)が資格認定をしている試験です。
CAE(Computer Aided Engineering)技術者、特に有限要素法(FEM:Finite Element Method)を使う人の技術レベルを認定するというものです。
今やFEMをはじめとする様々な計算ソフトはGUIもリッチになってきており、操作するだけならマニュアルに沿って初心者でもぽちぽちボタンを押すだけで解析ができてしまいます。
しかし、計算の仕組みや工学的な知識を持たない人が解析を行うと、いくら高額高機能で簡単なソフトを使ったとしても簡単にデタラメな結果を出してしまうのがこの分野で問題になります。
そのため日本機械学会の計算力学技術者資格認定事業委員会は以下の文章を公式ページに記載しています。
解析品質の保証、製品の開発効率・性能・安全性の向上を実現するための技術レベルが社内外で正しく評価される認定資格です。
日本機械学会:計算力学技術者資格認定とは
解析は製品設計に活用されます。工業製品は人の命や法規に関わる者がほとんど!正しい知識がないまま使うのは恐ろしい!
…と思っていた時にこの資格の存在を知り、僕は興味を持ちました。
色々な分野がある
計算力学技術者試験には以下の3つの分野があります。
- 固体力学分野の有限要素法解析技術者
- 熱流体力学分野の解析技術者
- 振動分野の有限要素法解析技術者
それぞれ初級、2級、1級、上級アナリストのクラス分けがされています。
要件や内容といった詳細の説明は公式ページがめちゃくちゃわかりやすいので、リンクを貼っておきます。
日本機械学会:CAE技術者とは(https://www.jsme.or.jp/cee/about)
合格率
振動分野の試験は2級で60[%]くらい、1級で40[%]くらいの合格率でしょうか。
各分野の試験データは以下のページから確認可能です。
日本機械学会:試験データ(https://www.jsme.or.jp/cee/data/info)
受験者数が最も多い固体分野は2級が30[%]くらいと分野によって大きくばらつきがありそうですね。
固体力学が基本という事で、とりあえず受ける試験勉強していない受験者が多くて合格率が低いのか、それとも問題自体が他の分野と比べて激ムズなのか…は不明。
資格取得の意味やメリットについて考えてみる
資格保有が重要ではなく学習過程に意味がある
いきなりですが、「合格する事」や「資格を保有する事」には特にメリットがないと思います。
この業界ではかなり有名な学会が認定している資格といっても、国家資格ではありませんし、弁護士のようにこの資格を取得していないと特定の業務ができないというワケでもないです。
数少ないメリットがあるとしたら学習の過程で体系的な基礎知識を習得できるので、普段の解析業務に自信を持つ事ができるようになる、という事だと思います。
もし基礎的な知識がないと自分で検証もできない
仮に、大学時代に工学を専門にしていなかった人で、特にその後も勉強しなかった場合…
解析結果が出ました!はい!(グラフどーん!
上司「…この数値、なんかおかしくない?」
そうですか?(やっべ、どこがおかしいかわからん)
といった状況になりかねません。
こういった状況に陥った場合は、おそらく次に何を確認したら良いかすらわからないと思います。身に覚えのある人には計算力学技術者試験の勉強をおすすめできます。
勉強すると自走できるCAE技術者に入門できる
計算力学技術者試験の勉強をしっかり行うと…
あれ、理論値と違うな。もっと高次要素を使ったり層を増やしてみるか。
なんかおかしい数値になったのでひずみエネルギー密度でもみてみるかな。結合条件間違えたかも。
とか、自分で解析の設定を選定したり、結果検証までできるようになります。
もちろん、職場のOJTや大学できちんと勉強した人であれば、特に資格をとらなくてもこれくらいはできます。
しかし数学の基礎を復習する、自分で方程式を立てて解く、普段使わない手法を勉強する…という事は知識の裾野を広げる意味で大変意味のある事だと考えられます。
ただし、計算力学技術者試験に合格したからといって完璧ではなく、さらに実務経験を積まないと実問題への適用はできないと思います。
実際に受けてみて、2級合格で2級の内容に入門、1級合格で1級の内容に入門、それぞれ自分で調べることができるレベルにようやくなる…という感覚を持ちました。
逆に実務経験が豊富な場合は普段使わない手法や懐かしい数学に触れる事ができるので、若干楽しさを感じるかもです。
倫理問題に向き合う事ができる
解析業務を行っていると、様々な葛藤に苛まれる時が少なくないと思います。
適切な解析をしたにも関わらず、予測値が製品要求値を満たさない時、政治的な理由でゴリ押しをしようとする人がいたら「待った」をかけなければいけません。
近年海外や日本企業、さらに大学の研究でも試験結果の改竄や捏造のニュースが後を絶ちませんが、このような事態になるともはや企業や研究者としての信用はガタ落ちです。
計算力学技術者試験では、このような倫理を問う問題がいくつか出題されます。
2級は全問不正解分野が2つ以上あると問答無用で不合格になりますが、常識で解けるとはいっても倫理問題は出題数が少ないので、よく文章を読まないと間違った選択肢を選んで合格が危うくなります。
問題として改めて倫理について考える機会を得るという事もこの試験のメリットかも知れません。
受験した目的やきっかけ
解析結果提供時の不安を小さくさせるため
これが一番の理由です。僕はとある企業で解析業務を行っていますが、常に「自分の出した結果が大間違いだったらどうしよう」という不安があります。
都度過去の類似ケースにおいて実験結果と解析結果の比較事例を参考にしたり、経験のある先輩や同僚にアドバイスをもらったりといった事をしていても、新しいケースに汎化されている確証がないので不安は消えません。
多分この資格に合格したといってもこの不安は一生続くと思いますが、試験勉強を行う事で仮説検証を行う力をつけるきっかけになり、とても大きな不安を少し大きな不安に変換するくらいにはなるでしょう。
力試しをしたかったため
今回振動分野を選択したのは、これまで実務でやってきたからです。
振動騒音の分野は実験から入り、基本的な振動計測や音響計測、実験モーダル解析や実稼動解析、音響ホログラフィによる音源探査…とかは経験していました。(…ハンマリングした回数は数えきれません)
次にCAE業務を担当し、主に振動系の解析モデルを扱ってきました。
そんな中でこの試験の存在を知ったので「今の知識ってどのくらいなんだろう?」と、単純に力試しをしたいと思った事も受験のきっかけです。
筆者の初期レベル
この記事を読んでいる人は計算力学技術者試験を受けようか迷っている人や、自分でも受かるか不安に思っている人だと思います。
受験、合格体験記を参考にする場合は書いている人の背景知識がどんなものかを同時に知りたいと思いますので、ちょっと書いておきます。
これを書いている筆者は、大学院の機械工学専攻を修了しています。
とはいっても、頭の良い大学ではなかったので会社に入ってからの学習量の方が多いかも知れません…。
特に振動を専門にはしていませんでしたが、線形代数とか微積分は得意でないにしてもアレルギーはない程度。よく計算間違いをします。
材料力学や動力学は普通に授業でやっていたし(詳細は忘れましたが)、上記のように会社に入ってからの実務経験は振動分野よりだったので、振動分野の2級や1級を受ける心構えはできていたレベルと思います。
もしこれを読んでいる方が振動は全くの初心者、数学も線形代数や微積分は大の苦手、という場合は、次に記載する勉強期間をより長くとった方が良いかも知れません。
試験勉強について
ここからは実際に合格した筆者の試験勉強内容についてメモっておきます。
学習期間
試験日は12月ですが、本格的な学習は8月から開始しました。
半年弱の試験勉強です。
ただ終わってみると、合格したのは良いものの、より理解を深めるためには1年くらいやった方がよかったかもと思っています。特に1級は超難しい…。
毎日1時間くらい問題集を解き、わからない所を調べる。毎週日曜に勉強会で2時間もくもくする…という学習量です。
正直毎日1時間というのは簡単そうに見えてだるい時がなんどもありましたが、やってれば習慣化するようです。
インプット(参考書/講習/eラーニング)
標準問題集
計算力学技術者試験は標準問題集に準拠した問題が出題されます。
よくある適当な新興検定と違い、問題集をコピペしたような問題はあまり出ませんが、この問題集は買っておかないと試験勉強にならないくらい重要です。
以下の公式ページから購入サイトに飛べます。自分の受ける分野と級を選択して購入しておきましょう。
日本機械学会:標準問題集(https://www.jsme.or.jp/cee/prepare/workbookv2)
最初はこの問題集の解説ページを眺めてわからない事を調べる勉強が主体になると思います。
僕も初見ではほとんど正解できず、問題を解くのはかなり苦痛でした。
ただ、解説を見ながら参考書籍やネットで勉強していくと自然とわかるようになるので諦めないように頑張りましょう。
対策講習会
公式の試験対策講習会があります。時期が近くなればページリンクを辿って情報を確認する事ができると思います。
日本機械学会:対策講習会(https://www.jsme.or.jp/cee/prepare/seminor)
2級の対策しかありませんが、僕は2021年10月の振動分野の講習会に参加してみました。問題集でさらっと書いてある事について、学会や書籍で活躍されている有名な先生方の口頭による説明を聞く事が可能です。
複素数表示の説明とか、先生が持っている感覚的な理解を直接口頭で聞くのは良い機会でした。
2021年はZoomによるオンライン開催でしたが、わからない事はチャットで質問ができたので、標準問題集でわからない事がある人は参加すると良いと思います。参加費はかかりますが…。
ちなみに教材はこんな感じ。
10月末なので、この講習から勉強を始めるようだと多分落ちます。お気をつけください…。
eラーニング
サイバネットさんが企画しているeラーニングも受講してみました。
サイバネット:CAE UNIVERSITY(https://www.cybernet.co.jp/e-cae_univ/e-learning/)
標準問題集で運動方程式を立てる練習をしていると、どうしても問題に過学習してしまいます。このeラーニングでは異なるバリエーションで式を作る練習ができるので、その意味でも受けてよかったと思います。お金はかかりますが…。
2級の参考書
ここからは振動分野の計算力学技術者試験勉強に実際に役に立った参考書を紹介していきます。
まずは日本機械学会から発行されている振動学のテキストです。
こちらは大学生1、2年次で学ぶ基本的な振動工学と、回転体、不規則振動等がカバーされています。
日本機械学会発行なので、標準問題集との相性が良いです(書き方とか)。
同じく日本機械学会から出ている材料力学のテキストも参考になります。
上記テキストよりさらに平易な文章で解説されている材料力学系の書籍として、以下の文部科学省検定済教科書も良書です。数値を実際に代入して求める例題が豊富なのと、誤字や表記ゆれがほとんどない所が良いです(さすが検定済教科書)。工業高校で使う教科書です。
こちらも。
振動といったらモード解析。モード解析といったらこの書籍というほどのベストセラー本はこちら。振動分野のバイブルと思います。
機械力学ハンドブックは広範囲をカバーしている点であった方が良いです。
振動分野は信号処理と切っても切れない縁があります。サンプリングの定理やフーリエ変換あたりの理解のために参考になります。
有限要素法は解析秘伝塾シリーズがわかりやすいです。以下の書籍はプログラム系なのでコードを見ながら勉強できます。
僕が受験した時は未発売だったのですが、最近はこんなにわかりやすい書籍も出ているので参考までに紹介します。なかなか形状関数に関する内容とか基本的な事が書いてある書籍がないのでありがたいです。
1級の参考書
1級は回転機械の振動も試験範囲ですので、以下の書籍が参考になります。回転機械は不釣り合い、ジャイロ効果といった要素が重要になりますが、並進系と比べて剛性マトリクスがどうなるかまでおさえておくと良いと思います。これはすでに2016年頃購入していました。
部分構造合成法に関する問題も試験範囲です。伝達関数の表記法とか、これ問題集だけだと混乱します(1級の問題集解説ページはちょっと雑では?)。少々お高い本ですが今回購入しました…。
あとこちらは今やネットショップで見つかりませんでしたが、振動の数値解法に関する良書です。ランチョス法とかサブスペース法といった解法について詳細に書かれている書籍がほとんど見当たらなかったので助かりました(僕は偶然試験勉強している時に情報を仕入れて、最後の中古1冊をAmazonで購入しました。高かった…)。他に良い書籍があれば教えてほしい。
1級はラグランジュの運動方程式とかハミルトンの原理も問われます。解析力学の参考書が1冊あると良いかもです(以下は大学時代に買ってたもの)。
以上が実際に問題を解きながら参考にした書籍達です。
これら書籍は全て網羅して勉強したわけではありません。問題で解けなかった部分を調べ、ピンポイントで該当ページを参照していました。なのでそんなに気構えなくても良いと思います。
とりあえず積んでみた↓
アウトプット
Pythonで検証
PythonはC言語等と比べ比較的機械系エンジニアにやさしいプログラミング言語です。
計算式や計算アルゴリズムの学習をしたら、実際にコーディングして動作を確認するのが最も有効な勉強方法だと思います。
コードが正しく動かなかったら何か理解があやしいという事になります。
例えば当ブログでは、以下の記事が試験に関連した内容となります。
Pythonで多自由度系の固有値解析!固有振動数とモードを計算
この記事は固有値解析のコードを紹介しています。
手計算の結果があっているかどうかの検証にはもってこいです。
Pythonで線形代数!固有値と固有ベクトルを求める
固有値や固有ベクトルも手計算で求められるレベルが必要ですので、この数学記事で式変形する所から覚えておくと得点に繋がると思います。
Pythonで線形代数!行列の対角化をする方法
対角化も要チェック。
Numpyだけで書いたガウスの消去法で連立1次方程式を解いてみた
ガウスの消去法も確か手計算させられた気がします。
Python/NumPyで線形代数!linalgで逆行列を求める方法
逆行列も任意の行列で求められるようにしておきましょう。余因子で覚えればサラスの公式覚えなくてもOK。一般化逆行列も要チェック。
Pythonの4次ルンゲ・クッタ法で多自由度連成振動を解く方法
こちらは時間波形として結果を得る事ができる近似解法を紹介しています。
減衰自由振動を題材に、理論値との比較も行いました。
振動モデルを直接法の周波数応答解析で解くPythonコード
この記事に記載している運動方程式を周波数応答解析版に変換する操作は2級では頻繁にやらされます。周波数応答は高速に計算できるので便利ですよね。
Pythonでレイリー減衰を実装する方法!解析して効果を見てみる
レイリー減衰も試験範囲です。質量比例、剛性比例ってどっちが分数だっけとならないように使い方も含めて理解しておくと良いでしょう。
Pythonで固有ベクトルのMAC(モード信頼性評価基準)を計算
モードの相関を調べる問題は手計算できるレベルでやっておくと良いです。実際にこのモデルのMAC値いくつでしょうか、というのが1級で問われます。ただ、おそらく微妙な数値までは問われないので、振動詳しい人だったら計算しなくてもなんとなく脳内MACできるかも。
Pythonで伝達関数!2つの信号の周波数応答関数を計算する方法
Pythonでコヒーレンス関数!FRFのノイズ成分を評価する方法
周波数応答関数やコヒーレンス関数も勉強しておきました。
本当はせっかく書籍を購入したのでモード解析も色々まとめたかったのですが、正直記事にまとめながら勉強するのは時間がかかるため、記事化は今後地道に趣味でやっていきたいと思います。
ノートにまとめてひたすら計算する
全てを記事化するのは時間が膨大に必要となるため、メインのアウトプットはノートに書き出す作業となりました。
以下は比較的綺麗に書いてあるページ(他のページは汚すぎて見せられない)。
関連する式の導出や変形、値を問われた時に対応できるようにしておきます。
これまで技術計算はPythonに任せていたので、手計算はかなり苦戦しました。よくやったのが符号間違い、内積計算時のかける順序間違い…。この辺はどうやら数をこなすしかないようです。
勉強会も参加しました
毎週日曜朝9:00-11:00にもくもく会と称して勉強会を実施していました。
同じ目的を持つ仲間と一緒に勉強すると、自分だけでは気付かない理解を得られます。振動分野はあまり受ける人がいないのか、ほとんど参加者がいない状態でしたが、決まった時間で定期的に勉強するのは強制力が働いてずぼらな自分には良かったです。
朝眠くて一人だとサボってしまいがちですが、いざ作業してみると数分で集中モードになるので、とりあえず作業するというのは良い勉強法と思いました。
勉強会はconnpassというサービスでオンライン実施です。
connpass:https://connpass.com/dashboard/
受験した感想
申し込みまで
この試験、以下のページから個人ページを作って申し込むんですが、申し込み期間が夏(7月か8月)の2週間くらいしかありません。この期間を逃すとまた来年になるので、もうちょっと期間延ばしてくれた方が良いと思いました。
日本機械学会:https://www.jsme.or.jp/cee/
申し込み後は実務経験書を書いたり、上司印をもらったりが必要です(公認講習会受講で代用可能な場合もありますが、経験ある人は実務経験の方がお得)。
その後コンビニで支払いをしたりと色々面倒はありますが、とにかく申し込み忘れしやすい試験だと思います。
1級と2級の併願で受験してみましたが、正直1級は記念受験のつもりで受けてみました。勉強する前は本当に何も内容がわからなかった…。
勉強している時の感想
今まで実務で振動騒音関係の業務を行って来ましたが、理論面や有限要素法について真面目に勉強した事がありませんでした。そのため2級も1級も過去の経験と照らし合わせる事ができてかなり良い勉強になったと思います。
(自励振動、係数励振、ジャイロ、流体構造連成等)
試験当日
試験はコロナ禍という事もありCBT試験でした。メモ用紙やペンは既に用意されていて、時計やスマホ、財布といった持ち物は全て持ち込み不可。
電卓は試験画面にあったそうですが、最後の最後まで気が付かず、ずっと手計算していましたので皆さん使った方が良いです。
やけに桁の大きな質量とか剛性の固有値計算を全てメモ用紙の上でやっていてかなり大変だった…。
2級は問題集そのままというのはほぼなかったような記憶です。ただ、これまでの勉強のおかげか、2級の問題に関して特にわからない問題はなかったという感覚。
1級はなかなか難しく、全くわからない問題がいくつかありました。
ただ、全問不正解分野はないかなという所感。
問題集そのままのような文章と選択肢で、微妙に言い回しが違うものもいくつかありました。これは条件反射で選ぶと間違うので、よく文章は読んだ方が良いです(標準問題集に過学習していたので気付きました)。
1級は正解率50[%]が合格ラインみたいなので、つまり手応えはありという感想です。
あと有給休暇2日も使って試験を受けましたが、なんとか土曜開催とかにしてくれないものか…。
合格発表まで
12月の試験ですが翌年3月中旬に合格発表です。
この期間は記憶から消去していました。
(すぐ結果欲しかった)
2022年は3月8日に郵送で合格通知が発送されましたが、郵便が届かなくても個人ページに認証/認定登録の案内(下図)が表示されていれば合格している事を確認できます。
自分の場合は試験の事を記憶から消去していましたが、Twitterのタイムラインで合格報告を見つけて知りました。手応えはあったものの、実際に結果をみると結構うれしい。
合格後の手続き
合格後は倫理規定を読んだ上で認定登録書と誓約書をアップロードして、登録料(!)なるものをコンビニで支払うと手続き終了です。
申し込みから合格発表、登録まで…長かった…!
認定証は4/8に届きました。
今後について
今後、CAE解析結果が重要な意思決定に使われていく機会が増えると思うので、勉強は続けていこうと思います。
ただある程度得意だと思っていた振動分野が結構難しかった事もあり、1級と2級を併願するのはもうしないと思います(きつい)。
次は熱流体?固体は難しそうだけどどうだろう。
他の方の合格体験記
今後他の分野も受けるかも知れないので、ネットサーフィンして把握した計算力学技術者試験の合格体験記をメモっておきます(もしご迷惑でしたら教えてください→コメント欄やTwitterにて)。
公式の合格体験記も発見→JSME:資格活用事例/合格体験記
他の人の記事を見てモチベーションを上げてみます。それにしても、一人で複数分野持っている人すごいです。さらに記事にまとめている人も少ないので貴重です。
※分野がよくわかる&感想、まとめ系のページを載せています。
しかし、まとめようとしたけどあんまり探せませんでした…。もし書いたよって方は教えて頂けると嬉しいです。
固体
宇宙に入ったカマキリ:計算力学技術者試験の固体力学2級を合格した感想。【資格勉強で意識すること5つ】
熱流体
宇宙に入ったカマキリ:計算力学技術者試験(熱流体)の感想。1級2級に一発で合格するためにしたこと。
Qiita:計算力学技術者(熱流体)2級の資格試験受けてきた その1
Qiita: 計算力学技術者(熱流体)2級の資格試験受けてきた その2
AKARI LAB:計算力学技術者(熱流体)2級試験の勉強方法まとめ 勉強時間、難易度など解説します!
まとめ
今回計算力学技術者試験を1級2級併願で受け、見事両方合格する事ができたため感想記事を書いてみました。
思った事をつらつらと書いたので読みづらいと思いますが、趣味の個人ブログなので自由さを優先。
そもそもこの試験ってなんなのか、どんなレベルなのか、受けた人の感想としてほんのちょっとでも参考になると幸いです。
これで計算力学技術者を名乗れますが、正直まだまだ知らない事だらけなので全然自信はないです!学習はこれからも継続ですね…。
Twitterでも関連情報をつぶやいているので、wat(@watlablog)のフォローお待ちしています!