元大学院生のノート

心と口と行いと研究で

大学院入試の覚書(院試対策)

後輩に大学院入試について話すときの覚書として、大学院入試についてまとめておこうと思います。

 

(0)対象

理系(物理系)の院試を受ける人

 

(1)勉強方法

(1-1)いつから勉強するか

3年生の春休みくらいから始めてる人が多かったと思います。しかし、必要な勉強量は人それぞれです。したがって理想は、3年生の冬休み頃に過去問を分析を行い、勉強計画を立てながら勉強を開始するのがよいと思います。大学入試と同様に早くから対策をするに越したことはないです。

 

(1-2)どうやって勉強するか

まずは過去問を見て科目を確認します。物理系の場合、力学、電磁気、量子力学統計力学 + 実験知識(計測論など)の内容から出題されることが多いと思います。基本的には、過去問で出題されている問題分野周辺の事項を勉強するのが無難です。過去問だけやる、問題集だけやる、ではなく過去問を軸に問題集を解き、全く理解していない範囲は教科書で復習する感じです。自分が各科目で基本的に使ったテキストは以下の通りです。

 

力学

力学は勉強したのが学部1年のときで忘れている事項も多かったので、原島さんの教科書でざっと復習してから、本格的に問題演習をしました。問題演習では膨大な数の問題が載っている(が全部やる必要はない)詳解シリーズを使いました。

力学

力学

 
詳解力学演習

詳解力学演習

 

 

電磁気学

電磁気学を勉強した学部2年生以降、電磁気学を真面目に勉強したことがなく、院試には授業で扱わなかった内容も出題されている様子だったので、有名な砂川さんの電磁気を使って基礎を復習をしてから詳解で演習をしました。

電磁気学演習 (物理テキストシリーズ 5)

電磁気学演習 (物理テキストシリーズ 5)

 
詳解電磁気学演習

詳解電磁気学演習

 

 

量子力学

量子力学は定番の猪木・川合さんの量子力学Ⅰ・Ⅱを使いました。猪木・川合さんの本は演習ベースのテキストという感じで、この本のおかげで量子力学の理解がかなり深まったと思います。しかし、初学者向きではありません。過去問の問題を解く際には、詳解シリーズを参考にしました。

量子力学1 (KS物理専門書)

量子力学1 (KS物理専門書)

 
量子力学(2) (KS物理専門書)

量子力学(2) (KS物理専門書)

 
詳解理論応用量子力学演習

詳解理論応用量子力学演習

 

 

統計力学

統計力学は、講義の内容の理解が全くできていなかったので、田崎さんの本で1から勉強し直しました。また、過去問でわからない問題は、久保さんの問題集を参照しました。

統計力学〈1〉 (新物理学シリーズ)

統計力学〈1〉 (新物理学シリーズ)

 
統計力学〈2〉 (新物理学シリーズ)

統計力学〈2〉 (新物理学シリーズ)

 
大学演習 熱学・統計力学

大学演習 熱学・統計力学

 

 

(2)Q&A

Q1. 理論系と実験系は~

A1. やはり理論系のほうが筆記試験で問われる能力(点数)は高いです。

Q2. 研究室訪問は~

A2. 外部、または卒研で所属している研究室から変更する場合は必ず、研究室訪問を行い、志望することを伝えましょう。

Q3. 卒研は理論系、大学院は実験系みたいなことは~

A3. ぼくがそのパターンでしたし、友だちにもこのパターンが何人かいたので、基本的に大丈夫です。

 

2/5 卒業研究の振り返り

(あまり研究感はなかったが)無事に卒業研究が終わったので振り返りと思い出をまとめて置こうと思う.

自分は大学に入って物理をしているうちにぼんやりと理論物理学(素粒子)をやりたいと思っていた. 理由は, 僕が物理を学ぶきっかけになったファインマンの専門が素粒子理論だったというのが大きいと思う. 他にも, 僕は宇宙の根本的な原理に興味があったことも大きいと思う.

というわけで, 卒研では素粒子論(弦理論)を主に勉強する研究室に入った. 実際, その研究室の先生のぶっ飛んだ物理の才能とユニークさに引かれたところもある. そんなこんなで卒業研究が始まった. 正直な話, 僕は卒業研究で少しでも研究らしいことができるかと思っていた. しかし素粒子論はそんなに甘くはなかった. 素粒子論を理解するには高度な数学と物理が必要であり, 結局, 自分が卒業研究で行ったのは, 古典的な弦や余剰次元についての考察であった. しかし, どちらも基礎的ではあるが弦理論のエッセンスを多く含んでいるテーマであったので, それなりに計算とその結果を楽しめた.

自分が卒研で何を得たかをここで書くのは難しい. なぜならば, 珍しい経験は少し時間が経ってから振り返って見ないと何も見えないからだ. ただ, 素粒子論の難しさや数学的な地味さを肌で感じることができたし, そして先生のユニークさにはとてもいい影響を受けた.

ここで, 先生の思い出を振り返ろうと思う.

先生はお茶が趣味であったため, 毎回のゼミで(きっと高い)お茶を出してくれた. そして, 締めの時期には, お茶菓子を出してくれたりもした. また, 普通は各自で準備するはずのゼミで必要なテキストのコピー(十数ページ)をsectionが終わるごとに印刷してくれたりもした. 失礼かもしれないが, 僕は先生がこんなに暖かさがある方とは思っていなかった. そして何よりもたまに話してくれる話には知性とユーモアが溢れていた. まるで, 僕が読んだ本の中のファインマンに会っているようだった. ただ, ゼミの発表中にたまに飛んでくるツッコミはまじで怖かった.

結局, 僕は理論物理の道に進むことを諦めたが, この一年で得たことや体験したことは, とても貴重なものばかりであり, この先も自分の中で大切にしていきたいと思う. 

12/17 研究室訪問

研究分野を変えるか悩んでいたのでここ最近で原子核系の研究室を2つ訪問した。

一つはゼミや実験で何回かお世話になった先生の研究室。

2時間近く話した割にはあまり雰囲気がつかめず、Drが引きこもりになったという話も聞いてしまいここはやめておこうかな…と思ってしまった。

ということで訪問したもう一つ研究室は、比較的新しい研究室であったが、先生と話す中で研究室というか先生の雰囲気がとてもよかった。

ここ数週間か研究室選びで悩んでいたが、自分が好きな分野の研究をするということも大切だが、それと同じくらい研究室の人たちの雰囲気は大切なように感じた。

結局、

人たちの雰囲気>自分の得意なこと>自分の好きなこと

みたいな不等号が自分の中で成り立つことが確かになったので、なにかを決めるときはこの不等号を常に判断基準にしていきたい。

そして、人の雰囲気は実際に会って会話をしなければわかりえないことなので、実際の場所に赴くということはこれからの人生で積極的に行っていきたい。

つまり、頭で考えるより、まずは行動からなのかもしれない。

9/2 UnicodeDecodeErrorその3

pythonスククロp74

lxmlでスクレイピングするときはopen()を使わなかったので, UnicodeDecodeErrorが出なかったが, BeautifulSoupでは,

with open('index.html', encoding = 'utf-8') as f:
    soup = BeautifulSoup(f, 'html.parser')

のようにopen()を使ってhtmlファイルを開きBeautifulSoupオブジェクトを得たので, 上のようにencodingを指定する必要がある.

encodingを指定する癖をなくては.

8/24 UnicodeDecodeErrorその2

Pythonクロ&スクp49

htmlを開いて中身を変数htmlに保存しようとしたところ, read()の箇所で,

UnicodeDecodeError: 'cp932' codec can't decode byte 0x8d in position 147: illegal multibyte sequence

が出たので, open()のエンコーディングを指定したところうまくいった.

import re
from html import unescape

with open("dp.html", encoding='utf-8') as f: #"encoding='utf-8'"を追加
    html = f.read()

for partial_html in re.findall(r'<a itemprop="url".*?</ul>\s*</a></li>', html, re.DOTALL):
    url = re.search(r'<a itemprop="url" href="(.*?)">', partial_html).group(1)
    url = 'https://gihyo.jp' + url

    title = re.search(r'<p itemprop="name".*?</p>', partial_html).group(0)
    title = title.replace('<br/>', '')
    title = re.sub(r'<.*?>', '', title)
    title = unescape(title)

    print(url, title)

8/18 UnicodeEncodeError

Pythonクロ&スクp45

エンコーディングを取得してutf-8にデコードしたものをhtmlファイルに保存しようとしたら,

UnicodeEncodeError: 'cp932' codec can't encode character '\xa9' in position 37940: illegal multibyte sequence

とprint()の箇所でエラーを吐出したので, デコードを実行するファイルの中身を,

import sys
import urllib.request
import io #add

req = urllib.request.Request("https://gihyo.jp/dp", headers={"User-Agent": "Mozilla/5.0"})
res = urllib.request.urlopen(req)

encoding = res.info().get_content_charset(failobj="utf-8")
print('encoding:', encoding, file=sys.stderr)

text = res.read().decode(encoding)
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8') #add
print(text)

として, #addとコメントアウトした行を加えたところエラーが消えた.

ioモジュールについては全くの無知なので要勉強.

(追記)

後日#addを抜いたコードを実行したらうまくいった.

なぜだ...

8/17 urllibによるWebページの取得

Pythonクロ&スク p43

urllibを使ってWebページを取得しようとしたら, アクセス拒否をされて403が出た.

対処はUser-Agentを偽造することでアクセスできた.

>>> import urllib.request
>>>
>>> request = urllib.request.Request("https://gihyo.jp/dp", headers={"User-Agent": "Mozilla/5.0"})
>>> response = urllib.request.urlopen(request)