富士山までひとっ飛び

富士山までひとっ飛び

某大学院に通う大学院生が感じたことを気ままに綴るよ。

「分かる」ことの重要性

f:id:banbier12345:20170606201607j:plain

 こんにちは、富士山です。

今日は最近研究しながらひしひしと実感していることについて書こうと思います!

 

ずばりテーマは「分かる」こと!

 

目次

 

はじめに

僕の専攻は「物理」です。

その中でも「物性」と呼ばれる分野の研究をしています。

 

物理学の分野で研究しているというとよく言われのが2つのパターン

 

1. 紙にたくさんの数式を書いてうんうん唸っているんでしょ?

 とりあえず紙とペンさえあれば研究できるんでしょ?

→純粋な理論物理学者を思い浮かべるパターン。

 確かに素粒子分野とかだと今でもそのような人がいるかも...

 自分も勉強するときはもちろんこんな感じ!

2.バカでかい実験装置を使って寝る間も惜しんで実験してるんでしょ?

→実験の研究をしている人はそんな人もいるかも。

 時には自分の睡眠時間を実験装置に合わせるという話もちらほら

 

とこんな感じで言われることが多いのですが、僕の場合は上の2つのパターンのどちらでもないです。

完全に外れているわけでもないですが...

 

物理を研究するときには

  1. 素粒子原子核 or 物性
  2. 理論 or 実験

の4つのブロックで基本的に分かれます。

その中で僕は「物性理論」の分野です。

 

「理論」というと1.のパターンのように紙とペンさえあればいいと良く思われますが、実際はそうではないです。

最先端の研究では人が手で解くことが出来ないような複雑な式を解かなければなりません。

物理ではたくさんの「近似」をして複雑な式を少しでも簡単にしようと努力するのですが、それでも人の手には負えないレベル。

特に物性の多体系と呼ばれる分野ではアボガドロ数(6.02*10^23)個もの粒子を考えたりもするのです!!!

 

そんなの人の手で解けるわけない!!

 

ならばどうするか??

 

われわれには文明の利器があるじゃないか!!

 

そう!

何を隠そうコンピュータです!

 

現在の物理の研究の多くはパソコンを使って数値計算をすることにより、現象を理解するという手法が一般的です。

僕の研究ももちろん数値計算による研究!

なので紙とペンではなく、計算処理能力の高いスパコンのような計算機が必要となるのです!(実際スパコン並みの計算性能が必要な計算はまだしたことないですが。。。)

 

数値計算するとなると必要となってくるのがプログラミングの技術

数値計算をする際にはfortranというプログラミング言語がよく使われます。

C++とかfortran以外にも今ではたくさんの言語がありますが、研究室で受け継がれているプログラムは全てfortranで書かれてます。

 

前置きが長くなりましたが、研究するときには常にプログラムと戦っています。

 

研究する中で・・・

基本的に僕の研究のスタイルは

 

1.研究のテーマに沿ったモデルを作る

2.モデルを計算できるようなプログラムを作成

3.ひたすら計算!!(←中には計算が終わるまでに1週間以上かかることも)

4.計算結果を確認。本当にその結果が正しいのか。直感とマッチするものなのか吟味する

 

という感じです。

 

1.のモデルというのは考えたい物理現象のなかで重要となるような部分だけを取り出したもの。よく”おもちゃ”と呼ばれます。(英語だと”toy model")

 

この4月、5月は以前に作ったプログラムを用いてひたすら計算してました。

計算結果は順調に思え、ルンルン気分!(一番楽しい時笑)

 

しかし!

 

研究はそんなに簡単に進まない。。。

計算結果が少し違うんじゃないかとの指摘が、教授から、、、。

また自分が作っていたプログラムでは計算できないモデルを計算する必要も今後出てくることが判明。。。

 

そうなったら新しいプログラムを作らなければならない!

最近はずっとプログラミングをしてました。

 

プログラミングを少しでもやったことがある人なら必ず共感できると思いますが、

 

プログラミングし始めた時はかなり楽しい。

無から有を創造するように、自分が願うとおりにコードを書く。

すべて上手くいっているだろうという能天気な考えでルンルン気分です。

 

しかし実行しようと思った瞬間に出てくる悪魔の作業、

そう、何を隠そう

 

デバッグ!!

 

自分が考えていたとおりに動いてくれないのがコンピュータ。

頭の中では完璧だと思っていたのに出てくる結果が全然違う!!

 

なぜなんだ~~~~~!!

 

とストレスをためながらひたすら自分のミスとの格闘。

プログラムを書くよりもデバッグする方が時間がかかるのがほとんどです。

 最近はこの「デバッグ」作業を朝から晩までずっとやってました。。。。泣

 

そしてデバッグすると必ず発するであろうコトバ

 

そんな簡単なミスかよ!!

 

俺はこんな簡単なミスにこんなにも多くの時間を使っていたのかよ!

とあまりにも自分の行動を不甲斐なく感じてしまうことが本当に多いです。

分かってみたらあまりにも簡単なミス。

そう!

 

分かってみたら!!

 

研究しているとあまりにも多く感じるのです。

 

「分かってみたら」あまりにも単純なミスじゃないか。

「分かってみたら」大したことないじゃないか。

「分かってみたら」やる必要もなかったことではないか。

「分かってみたら」もっと違うところに時間を使うべきだった。

 

などなど

来るわ、来るわ、あまたの後悔の波が。。。

 

「分かる」ことの重要性

前置きがかなり長くなってしまいましたが、一番伝えたいのはこのこと

 

分かってみたらそうすべきではなかったじゃないか

ということが人生の中で本当に多いです。

 

人間はあまりにも多くのことを知りません。

自分が知らないということさえ知らないことがほとんどです。

ソクラテスが「無知の知」と言いましたが、現代でも本当に自分が無知だということを知るだけでも大きいかもしれません。

 

皆さんも経験があると思います。

 

こうなると分かっていたなら、もっとテスト勉強していたのに。。。

こうなると分かっていたなら、食べるのを我慢したのに。。。

こうなると分かっていたなら、もっと早起きしたのに。。。

 

後になって分かったときに来る多くの後悔の念。

しかし気づいた時にはもう遅い。

やり直したいといくら願っても二度と時間は戻ってくれない。

そんなことを繰り返しながら私たちは生きています。

 

でもずっと同じことを繰り返していたのでは成長がありません。

「どうすればいいのか」考えることができるのが人間です。

 

では「分かる」ためには一体どうすればいいのか。。。

 

答えはものすごく簡単です。

 

「分かっている人」に聞けばいいんです!

 

どんな時にも探してみればその答えを知っている人がいます。

ある時は親、ある時は学校の先生、ある時は近所のおじいさん、またある時はGoogle先生

 

聞いてみたら意外と簡単な答えが返ってくることが多いです。

 

しかし誰も教えてくれないのが自分の「人生」の問題。

自分はなぜ生きているのか、どういうことをすることが成功なのか

自分の人生の悩みに対しては明確に教えてくれる人がいません。

一番大事な問題なのに。

それを分からずに私たちは生きています。

分からないから普段の生活の中で意識することすらしていません。

 

そうしてある年月が経って振り返ってみると、一体自分の人生は何だったのかというようになります。

あまりにも虚しいです。

 

でもそんな人生の問題を解いてくれる人は必ずいます!

なぜなら僕が人生の問題を解決してくれる人と出会ったからです。

皆さんもそのような出会いが出来ることを心から願っています。

 

おわりに

今日伝えたかったのは二つ

  • 「分かる」ことが本当に重要。自分は全然何も知らない
  • 「分かる」ためには「分かっている人」に聞くことが一番の近道。そのような人と出会えれば自分の生活が大きく変わります。

今の時代、インターネットで調べれば多くのことが分かるようになります。

でもネットの知識はあくまでもネットの知識。

あまりにも薄っぺらいです。

 

どんなに文章で接しても理解できるのは相手のほんの一部分。

会って話してみると全然違うということも多いです。

 

これを読んだ皆さんも僕のことをこれっぽちも知らないと思いますが、でも少しでも感じたことがあればいいなと思います。

 

たくさんの出会いの中で自分の人生を変えるような出会いが起こればと心から思います。

 

というわけで長くなりましたが、今日はここまで。

ありがとうございました(^^♪

 

ちなみに

書き始めたプログラムはまだまだ時間がかかりそうです泣

かなり前進はしていますが。

早く完成できるように頑張ります(^O^)/