376びぼーろく; 曲面論と一般相対論

最近「一般相対論を学ぶ前のリーマン幾何で悩む人は2次元の曲面論を勉強したほうがよい」という考えに至った。
これは何か根拠がある話ではなく、単純に自分の経験から。

自分自身の勉強の過程を振り返ってみると、一般相対論を学ぶ前の数学(リーマン幾何)に何度も挑戦したものの、結局わけが分からず一般相対論までたどり着けなかった、ということが何度もあった。
なぜだろうと考えてみると、要は「空間の曲がり」とは何か、「それをどのように表すのか」がよく分からなかったのが大きな点だと思う。

一方で2次元の曲面論であれば、曲面の曲がりを表す曲率が自然に理解でき、また驚異の定理(内在的量のみでガウス曲率を求めることができる)もある程度理解できる。
その後にこれらの曲面論を拡張したリーマン幾何学を学ぶと非常にわかりやすく理解できる。
ということで、一般相対論の前段階のリーマン幾何で悩む人は是非2次元の曲面論を勉強してみると良い、という考えに至った。
だけど、このあたりの初歩的な話をわかりやすく書いている数学の本は少ない(ような気がする)。
誰か書いてくれたら良いのになぁ。

375びぼーろく; neovim

vimにterminalモードが導入されたらしい。
が、debianのパッケージ(VIM 8.0)には反映されていない。ということで、neovim(NVIM 0.1.7)に手を出すことにした。

つまらないことだが、neovimを立ち上げる時にはnvimとタイプ。neovimとタイプしてもUnknown commandと言われてあせる。

~/.vimrcは読みに行かないので、 ~/.config/neovim/init.vimに設定を書く。
(基本的に互換性があるらしいのでvimrcにシンボリックリンクをはるだけでも良いかも。でも一応新規にファイルを作成した。)

neovimを立ち上げて
:terminal
と打つとターミナル画面が立ち上がる。素晴らしい光景だ。
上下に画面分割したいときには
:split|terminal
とすればOK。デフォルトでは上側に出現するので、嫌なら
set splitbelow
としておけば良い。(左右に分割したいならvsplit, set splitrightを使う。)

さて、terminalモードではvimと同じくインサートモードとコマンドモードが存在する。
インサートモードはシェルのコマンドを入力、コマンドモードはターミナル内の文字列検索や編集できる。
コマンドモートに移るときにはC-\ と C-n だが、あまりにも違いすぎるので~/.config/neovim/init.neovimに
tnoremap <silent> <ESC> <C-\><C-n>
としておく。これでエスケープでコマンドモードに戻れる。
ちょっと慣れないのが、ターミナル上でコマンド入力したいときにはインサートモード、
ターミナル上で検索やコピーをしたいときにはコマンドモードで行うあたり。
ま、そのうちなれるだろう。

terminalモードが導入されたので、hogeファイルを編集中にコンパイルしながら元のソースを眺めたいときには
:split|terminal""platex %""
とすると下側の画面でコンパイルしてくれる。
自前でコンパイルできるようになったので、プラグインに頼らず自力で生きていこうと思った今日この頃。


さて、全微分は表面項なので落として良いと思っていたら、そうも行かないことに気がついた。
3週間前ぐらいの自分をぶん殴りたい。

374びぼーろく; windows subsystem for linux

windows subsystem for linux(WSL)にとうとう手を出してしまった。
こちらはライトユーザー(タコ)なのでこれぐらい動いてくれれば十分。
現在ノートPCは窓達、デスクトップPCはdebianと言う状況。

インストール方法はあちこちに書いてあるので全く困ることはなかった
debianっ子なので当然debianをインストール。
ただ、デフォルトでlessコマンドが入っていなかったりと意外と自分でインストールしないといけないパッケージが多かった。
aptでインストールできるのでtexlive-full,maxima,gnuplot,git,vim,aptitude,tmux,fishあたりと一緒にインストール。
suじゃなくてsudoで管理者権限を行使。

注意しないといけないのは、環境変数$PATHにwindows側のパスも入っている点。
一応linux側が優先になっているみたいだけど、同名のものは注意が必要。
(windows側は.exeがついているらしいが未確認。)


さて、WSLではlilypondが公式パッケージとして存在しなかった。少し調べてみると、どうやらWSLでサポートされていない機能があるらしくlilypondはまだ動かない(?)らしい
ま、lilypondは絶対必要なわけではないのでとりあえずtexやmaximaあたりが動けば十分。


Xは動いていないのでそのあたりも使いたい人は設定する必要がある。
まず窓の方にvcxsrvをインストールする。

インストール後、起動したvcxsrv(XLaunchというアイコンでも設定できるみたい)のプロパティで、「高DPIスケールの動作を上書きします。」あたりをいじると見やすくなりそう。

vcxsrvを起動後、最初の画面でDisplay number を0に設定。
(でもデフォルトの-1でも動くみたい。不思議。)
初回はファイヤーウォールについて聞かれるがとりあえずOKとする。ま、Xは内部からしか使わないし大丈夫...なのか?

linuxを立ち上げ、Bashだったら
export DISYPLAY:0.0
で設定終了。これでOKなはず。
基本的にはシェル上でなんやかんやする程度ならこれで十分そう。
デスクトップ環境をインストールできるらしく、mateをインストールしている猛者も居た。すごい。


言語は英語のまま。かっこいいとかそんなことではなく、文字化けしたときわけが分からないので英語のままにしている。

ターミナルとかはそのまま。もし気に入らなくなったらそのうち変えるかもしれない。

744びぼーろく; どうやら昨日が

 バッハの誕生日だったらしい。おめでとうございます。