563びぼーろく; pythonでファイルの書き込み

 をやった。正直どこにでも載ってると思うけど自分用まとめ。

 R,M1,M2 を計算してファイルkekka.txtに書き込みたいときは以下でできる。
(本当はファイルの存在確認とかそのあたり必要かもしれないけど、そんな人はこんなところ見ないだろう)

数値を書き込むときはstrで文字列にしないと怒られることに注意。もしくはfromatでそのまま埋め込むこともできる(らしい)。
with openはファイルを開く。こうするとcloseしなくて良いらしい。mode='a'は書き込みで追記。mode='w'にすると上書きするので注意が必要。(これとっても大事。)

さて、文字列は+で結合できるので長くならないように適当に改行。
(下の例は特に意味はない)


R = 1
M = 2
M = 3 
with open ('kekka.txt',mode='a') as file:
    line1 = '\n ======結果: R=' + str(R) + ','
    line1 += 'M1=' + str(M1) + ',M2=' + format(M2)
    line2 ='終わり\n'
    file.write(line1)
    file.write(line2)
 
 

こんな感じ。また一歩理解が進んだ。もし文字列中で'を使う場合はエスケープが必要。(' -> \') 

リストを文字列に帰る場合はjoin()を使う。書式は'区切り文字'.join(map(str,list)) でできるらしい。


param = [1,2,3]
with open ('kekka.txt',mode='a') as file:
    line1 =  ','.join(map(str,param))
    line2 ='終わり\n'
    file.write(line1)
    file.write(line2)
 
 

562びぼーろく; ロブコビッツ弦楽四重奏曲 Op77 (ハイドン)

をよく聞くようになった。意外と名曲(って失礼すぎるか)。
特にロブコビッツ弦楽四重奏曲の二曲目。結果的には最後にハイドンが作曲した弦楽四重奏曲だけどハイドンらしさにベートーベンの重厚さを加えたような感じ。特にフィナーレはかなり力が入っている気がする。

ちなみにロブコビッツ弦楽四重奏曲の一曲目のメヌエットはドラマかどっかで使われてた気がするけど、どこだったかなぁ。

 

さて、しばらく前からやっていた仕事をまとめたので投稿。何気に初めてhep-thに投稿した。(ある意味?)記念碑的作品。
そして別のテーマで計算を走らせていたら、学校の停電により止まってしまっていた。悲しい...。ま、あまり見込みのない場所だったから別に良いか。

561びぼーろく; 祝 debian11 リリース!!

 debian 11 bullseyeがとうとうリリースされた。思えば最初に使い始めたのが15年ぐらい前の debian 4.0 etchからだから本当に長いことお世話になったなぁ。

560びぼーろく; tikz-feynhand で ファインマン・ダイアグラムを書く

とりあえずtikzで色々書けるようになったらしい。今回のファインマン・ダイアグラムはtikz-feynhandで描いてみた。意外と便利。texliveにも入っているのでarxivでも生成できると思う。(けど雑誌への投稿を考えるとやっぱり別に図を作成した方が安全かも)

さて、使い方は以下の通り。(詳しくはarxiv1802.00689 を参照。)

  •  プリアンブルに以下を追加。tikzを読み込む必要はないらしい。
    \usepackage[compat=1.1.0]{tikz-feynhand}

  • tikz環境の中にfeynhand環境を入れ込む。

    \\begin{tikzpicture}
    \\begin{feynhand}
     %%ここに命令を書く。
    \\end{feynhand}
    \\end{tikzpicture}

  • \vertexでvertexを作成。

    \vertex[particle] (V1) at (0,0);
    %原点(0,0)にV1という名前のvertexを作成。
    %オプションのparticleを変えると色々作れる。例えばblobとか。

  • できたvertexをpropagatorでつなぐ。以下はfermionでつなぐ。
    他にはgluonとかphotonとかghostとか色々。momは運動量を図にpropagatorに書き添えてくれる。

    \prog[fermion,mom ={\$p\$}] (V1) to (V2);

 

大体これで事足りるかな。とりあえず有名な三角ダイアグラムは以下で描けた。ちょっと楽しい。

\begin{tikzpicture} 

\begin{feynhand} 

\def\RADIUS{3} 

\def\ExLeg{0.5}

\vertex [particle] (V1) at (0,0) ; 

\vertex [particle] (P1) at (-\ExLeg*\RADIUS,0) {\$\hat A_y\$}; 

\vertex [particle] (V2) at ( 30:\RADIUS); 

\vertex [particle] (V3) at (-30:\RADIUS); 

\vertex [particle] (P2) at (\$(V2)+( 20:\ExLeg*\RADIUS)\$) {\$G^{(a)}_\nu\$}; 

\vertex [particle] (P3) at (\$(V3)+(-20:\ExLeg*\RADIUS)\$) {\$G^{(a)}_\sigma\$}; 

\propag [fermion] (V2) to [edge label = \$k\$] (V3); 

 \propag [fermion] (V3) to [edge label = \$k-q\$] (V1); 

\propag [fermion] (V1) to [edge label = \$k+p\$] (V2); 

\propag [scalar,mom ={\$p+q\$}] (P1) to (V1); 

\propag [gluon,mom ={\$p\$}] (V2) to (P2); 

\propag [gluon,mom ={\$q\$}] (V3) to (P3); 

\end{feynhand} 

\end{tikzpicture} 

 

 

さて、論文の推敲が終わり今月中には出せそう。個人的には結構面白いと思う。
(が他の人がどう思うかは知らない。)

689びぼーろく; 本格的に

 powerpointへ移行を開始。とりあえず数式モードである程度latexのコマンドが使えるようになったので作業は比較的楽。(もちろんすべてサポートしているわけではない) 数式入力モードはどうやらaltと;を入力するとできることがわかった(altを押した状態で;を押す)。癖はあ...