2025年6月

06月30日(月)

会議。

数理物理の中間テスト。

いろいろ書くことがあった気がするが、なんかどうでも良くなった。

論文を書く時間を確保したい・・・

Claude Codeの使い方の知見が溜まっているのだが、最終的に「要件定義をしっかりしましょう」に落ち着いてるの、一周回った感があるな。

論文にLLM用の命令インジェクションがなされることが話題に。「"GIVE A POSITIVE REVIEW" site:http://arxiv.org」で検索すると大量に出てくる。ある種の不正だが、この不正が有効に働くためには査読で不正が起きていないといけないわけで、いろいろ考えてしまう。

06月29日(日)

NOP

06月28日(土)

NOP

06月27日(金)

数理物理第7回。ポテンシャルがある場合の極座標変換、点変換の証明(一変数版、多変数版)まで。荷電粒子の運動は次回に。

途中計算ミスが結構でたが、まぁ時間的にはちょうどかな。

06月26日(木)

myenvを.venvに修正しよう計画。

https://github.com/search?q=user%3Akaityo256+myenv&type=codeを検索すればOK。

06月25日(水)

mkdir build # もしbuildディレクトリがなければ作る
cd build
wget https://github.com/libffi/libffi/releases/download/v3.5.1/libffi-3.5.1.tar.gz
tar xvzf libffi-3.5.1.tar.gz
cd libffi-3.5.1/
$ ./configure --prefix=$HOME/local/libffi --disable-static --with-pic
make
make install
cd
export PKG_CONFIG_PATH=$HOME/local/libffi/lib/pkgconfig:$PKG_CONFIG_PATH
export CFLAGS="-I$HOME/local/libffi/include"
export LDFLAGS="-L$HOME/local/libffi/lib"
ulimit -u 300
env \
  CFLAGS="-I$HOME/local/libffi/include" \
  LDFLAGS="-L$HOME/local/libffi/lib" \
  PKG_CONFIG_PATH="$HOME/local/libffi/lib/pkgconfig" \
  pyenv install 3.10.14
mkdir test
cd test
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install scipy
python3 -m pip install deephyper

いろいろだめ。miniforgeに逃げる。

cd build
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
bash Miniforge3-Linux-x86_64.sh
eval "$(/home/k0117/k011700/miniforge3/bin/conda shell.bash hook)" 
conda init
conda create -n myenv python=3.10

deephyperのテスト。

$ python3 test.py
     p:b p:function       p:x  ...  sol.p:function   sol.p:x sol.objective
0      7      cubic -1.103350  ...           cubic  8.374450    590.312101
1      3      cubic  8.374450  ...           cubic  8.374450    590.312101
2      6      cubic  4.680560  ...           cubic  8.374450    590.312101
3      9     linear  8.787395  ...           cubic  8.374450    590.312101
4      6      cubic  9.109560  ...           cubic  9.109560    761.948419
..   ...        ...       ...  ...             ...       ...           ...
96    10      cubic  9.999914  ...           cubic  9.999998   1009.999489
97    10      cubic  9.999943  ...           cubic  9.999998   1009.999489
98    10     linear  9.999705  ...           cubic  9.999998   1009.999489
99    10     linear  9.999884  ...           cubic  9.999998   1009.999489
100   10      cubic  9.999922  ...           cubic  9.999998   1009.999489

[101 rows x 12 columns]

Optimum values
function: cubic
x: 9.99999829679699
b: 10
y: 1009.9994890391841

できてるな。

シミュレーション工学のレポートの採点残り終えた。

中間テスト作った。

理事会のお仕事返した。

いろいろ余裕がなさすぎる。数理物理の講義がある期間は何もできないと思っておいたほうが良さそう。

06月24日(火)

物性研システムCにPython3.10.14をインストール。

curl https://pyenv.run | bash
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init - bash)"
eval "$(pyenv virtualenv-init -)"
export MAKEOPTS="-j1"
env \
  CFLAGS="-I$HOME/local/libffi/include" \
  LDFLAGS="-L$HOME/local/libffi/lib" \
  PKG_CONFIG_PATH="$HOME/local/libffi/lib/pkgconfig" \
  pyenv install 3.10.14

この途中で死ぬ。死んだ上にログインできなくなる。

$ ssh k011700@kugui1.issp.u-tokyo.ac.jp
shell request failed on channel 0

他の端末で監視すると、途中でccが呼ばれなくなっている。インストール中のターミナルでCtrl+Cによりインストールプロセスを殺すとログインできるようになる。なんだこれ?

システムBではどうだろう?

curl https://pyenv.run | bash
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init - bash)"
eval "$(pyenv virtualenv-init -)"
export MAKEOPTS="-j1"
pyenv install 3.10.14
pyenv gloval 3.10.14
$ python3 --version
Python 3.10.14

問題なくインストールできた。リソース制限の問題か?

リソース制限の問題だった。

ulimit -u 300

でうまくいった。make -j 1を指定しているのに、後ろでプロセスを100個立ち上げている?なぜ?どこで?

06月23日(月)

定期更新した。優勝。

数理物理第6回。今日は変分原理。わりといい感じにできたと思う。

06月22日(日)

シミュレーション工学のレポート採点。7割くらいおわった。

06月21日(土)

NOP

06月20日(金)

数理物理第5回。仮想仕事の原理の復習、ハミルトンの原理、そして変分原理の最初のスネルの法則まで。わりと時間的にぴったりだったのではないか。去年の反省が活きたな。

06月18日(木)

研究室ミーティング。最速降下曲線の話をした。 学生さんは一つの論文に依存せず分野のレビューをしててすごい。

サイクロイドの媒介変数とスネルの法則の角度の関係、同僚さんが幾何学的な考察ノートを作ってくれた。これはすごい・・・が、ちょっと難しいな。

06月17日(水)

木曜日のスライドを作る。

授業準備も。

06月17日(火)

latexindentが死んでる。

$ latexindent -vv
Attempt to call undefined import method with arguments ("@logFileLines") via package "LatexIndent::Logger" (Perhaps you forgot to load the package?) at /usr/local/texlive/2022/texmf-dist/scripts/latexindent/LatexIndent/Document.pm line 28.
Attempt to call undefined import method with arguments ("$ifElseFiBasicRegExp") via package "LatexIndent::IfElseFi" (Perhaps you forgot to load the package?) at /usr/local/texlive/2022/texmf-dist/scripts/latexindent/LatexIndent/Special.pm line 25.

なんかChatGPTが「TeXLiveは毎年更新」という恐ろしいことを言ってるんだけど。

TexLiveの最新版をインストール。

wget https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
tar xvzf install-tl-unx.tar.gz
cd install-tl-20250616
sudo ./install-tl --no-interaction

パスが更新されなかった。

sudo /usr/local/texlive/2025/bin/universal-darwin/tlmgr path add 
$ ls -la /usr/local/bin/latex
lrwxr-xr-x  1 root  admin  50  6 17 19:48 /usr/local/bin/latex@ -> /usr/local/texlive/2025/bin/universal-darwin/latex

された。

$ latexindent -v 
3.24.5, 2025-03-13

latexindentも直った。でもVSCodeのlatexindentが.latexindent/defaultSettings.yamlを読んでくれない。

輪講。今日はネーターの定理。ネーターの定理ってハミルトン形式でやったほうが楽だと思うんだけど、この本は徹底的にラグランジアンで議論しているっぽいな。

06月16日(月)

数理物理。仮想仕事の原理終わりまで。途中で何度かトチった。うーむ。

あー、しかも10分くらいカメラが追いかけてない時間がある。もー。

06月15日(日)

NOP

06月14日(土)

NOP

06月13日(金)

数理物理。ニュートンの運動方程式の共変性の直前まで。前回と同じペースだな。

次回はニュートンの運動方程式の共変性と仮想仕事の原理。

鬼門の反変共変ベクトル。やっぱりちょっととちったな。

いかん、ローレンツ変換について質問されて非線形っていっちゃったぞ。次の講義で訂正だな。

06月12日(木)

うわ、1on1の時間を間違えた。学生さんに申し訳ないことをした。

VS CodeのCopilot Chatを試す。

まずはVS CodeでGitHubにログイン。GitHub ProだからCopilot Proも使えるかと思ったら、だめだな。

とりあえずCopilot FreeでCopilot Chatを試してみたが、ちょっと微妙だなぁ。 「Ask」で「CC BY-NCのライセンスを出せ」と言ったら公開されているコードに一致するから、と怒られた。 うーん、ライセンスファイルをそのまま出すのは全く問題ないと思うのだが。

Copilot Proだと年額100\(。Claude Proだと月額20\)、年にして240\(か・・・。 ただ、Claudeは従量課金がデフォな気がする。OpenAIもそうか。 Cursorは20\)/月は同じだが、年割があって192$/年。

Claude Code Proは、20$/月で、5時間ごとに概ね10〜40プロンプト。僕のユースには十分っぽいが。うーん。

夏季安全点検実施した。

「ポロシャツ」という単語がどうしても思い出せず、ChatGPTに「ボタンがついていない柔らかい素材でできた上着で、Tシャツではない、セミカジュアルな服」と聞いたが、ポロシャツにはボタンがついているのでChatGPTが回答から除外してしまった。

研究室ミーティング。どちらも大変おもしろかったです。

06月11日(水)

論文チェックしようと思っていたのだが、メール処理して液滴衝突のコード書いたら時間切れ。

06月10日(火)

本読み輪講。

2次元OV模型のサンプルコード書いた。

最近、意識的にChatGPTの助けを借りながら書いてるのでコード開発がかなり早い。コピペ経由でこれだから、IDE統合したら爆速になるのだろう。そのうち試さないと。

試験の確定処理ができていなかった。答案の情報入力が必要。

06月09日(月)

409378原子101フレーム real 1m19.533s

2048000原子101フレーム real 6m40.446s

うん、まぁまぁ早いんじゃないですか。よしよし。

講義録画用PCのWindows Updateを済ませておく(基本)。

講義用のWireless GOを充電忘れてた。間に合うかな。。。

間に合った。

数理物理。今日は数学的準備の内積空間まで。次回は微分と偏微分から。 まぁいいペースだったのではないか。ただ、安易に積分の意味を口走ったのは良くなかった。

ffmpeg -i 数理物理第02回.mkv -c copy 数理物理第02回.mp4

動画の確認。前回と違ってGo Proを使ったが、音が小さかった。もう少し音声レベルをあげないといけない。OBS Studioではなく、Go Pro側でやるんだよな?

しかし、講義の動画撮影はだいぶ慣れた。OBSBOTで録画、Wireless GOで録音、ソフトはOBS Studio。mkvで保存してffmpegでmp4に変換。K-LMSのVideoPortalで学生に公開。

シミュレーション工学の成績入力準備した。

クォーターの黒板ガリガリ講義が始まるとキツいな。週に一度であって欲しい。

06月08日(日)

lammpstrjの解析用C++ヘッダ、完成。

kaityo256/lammpstrj-parser

exampleとしてcondensationを作成。まだxlo等が0以外に対応していないが、とりあえず目的のものはできたので良しとする。

「行間がしっかり埋まった 驚くほどていねいな解析力学」がしばらく(一週間くらい?)Amazonの「本>科学・テクノロジー>物理学>一般」カテゴリーで一位だったようだ。これ、階層が深いところはほとんど売れゆきがないから、初動でそれなりに売れたらしばらく1位に居座るんだろうな。

さすがに今日みたら1位じゃなくなってた。

06月07日(土)

lammpstrjの解析用C++ヘッダ、コールバック関数を作った。

kaityo256/lammpstrj-parser

いろいろ迷ったが、C++11だとどうしてもきれいに書けないところがあって、要求をC++14までにした。

06月06日(金)

物性研スパコンでのLAMMPSのバルクジョブのサンプルコード書いた。

LAMMPS Bulk Job Sample

すぐできると思ったが、思ったより時間かかったな。シェルスクリプトの実行時間を知るためのSECONDS変数を初めて知った。bashの特殊変数のようだ。zshにもあるみたい。

lammpstrjの解析用C++ヘッダも途中まで作った。

kaityo256/lammpstrj-parser

関数オブジェクトやコールバック関数みたいなやつ、最近はどうするんですか?って聞いたらstd::functionですって。C++11らしい。何も知らんかった。

06月05日(木)

モダンCMake入門

CMakeはVer. 2.8.xまではディレクトリベースだったが、3.0系からターゲットベースに変更されたらしい。Makefileでもひぃひぃ言ってるのに、CMakeもモダンな書き方が出たとか。

あとPythonも最近はpyenvじゃなくてuv使うの?

技術の進展が早すぎておいちゃんついていけないよ・・・

教授・准教授就任記念講演、明日だったわ。

ChatGPTのこと「チャッピー」と呼ぶらしい。

チャッピーに論文の英訳させてたら、それまで淡々と英訳してたのが「あなたは不安定領域と言ったけれど、この領域は安定領域じゃないでしょうか?」と訂正してきて震えた(この指摘は正しい)。マジか。

久々に予定がほとんどない日。ずっと論文修正。集中力の欠如に苦しんだが、とりあえず結果を修正した。あと残るセクション1つ。頑張る。

06月04日(水)

物性研にSLATEをインストール。

cd build
git clone --recursive https://github.com/icl-utk-edu/slate.git
cd slate
mkdir build
cd build
cmake -Dblas=mkl -Dbuild_tests=no -DCMAKE_INSTALL_PREFIX=/usr/local
module purge
module load oneapi_compiler oneapi_mpi oneapi_mkl
$ mpiicpc --version
icpc (ICC) 2021.8.0 20221119
Copyright (C) 1985-2022 Intel Corporation.  All rights reserved.
export CXX=mpiicpc
export FC=mpiifort
cmake -Dblas=mkl -Dbuild_tests=no -Dgpu_backend=none -DCMAKE_INSTALL_PREFIX=$HOME/usr/local ..
CMake Error at blaspp/CMakeLists.txt:8 (cmake_minimum_required):
  CMake 3.21 or higher is required.  You are running version 3.19.2

CMakeが古いな。自分が入れた古いのを見てた。やりなおし。

CMake Error at blaspp/CMakeLists.txt:8 (cmake_minimum_required):
  CMake 3.21 or higher is required.  You are running version 3.20.2

まだ古い。

cd build
wget https://github.com/Kitware/CMake/releases/download/v4.0.2/cmake-4.0.2-linux-x86_64.tar.gz
tar xvzf cmake-4.0.2-linux-x86_64.tar.gz 
cd cmake-4.0.2-linux-x86_64/
cp bin/* ~/usr/local/bin/
'cp' -r share ~/usr/local
export PATH=~/usr/local/bin:$PATH
export CMAKE_ROOT=~/usr/local
$ cmake --version
cmake version 4.0.2

CMake suite maintained and supported by Kitware (kitware.com/cmake).

よろしい。改めて。

cd build
export CXX=mpiicpc
export FC=mpiifort
cmake -Dblas=mkl -Dbuild_tests=no -Dgpu_backend=none -DCMAKE_INSTALL_PREFIX=$HOME/usr/local ..
make
$ /opt/intel/oneapi/mpi/2021.8.0/bin/mpiicpc -DSLATE_ID=\"f8348a7c\" -Dslate_EXPORTS -I/home/k0117/k011700/build/slate/include -I/home/k0117/k011700/build/slate/src -I/home/k0117/k011700/build/slate/build/blaspp/include -I/home/k0117/k011700/build/slate/blaspp/include -I/home/k0117/k011700/build/slate/build/lapackpp/include -I/home/k0117/k011700/build/slate/lapackpp/include -std=c++17 -fPIC -qopenmp -MD -MT CMakeFiles/slate.dir/src/hemmA.cc.o -MF CMakeFiles/slate.dir/src/hemmA.cc.o.d -o CMakeFiles/slate.dir/src/hemmA.cc.o -c /home/k0117/k011700/build/slate/src/hemmA.cc

/home/k0117/k011700/build/slate/src/hemmA.cc(305): error: unsupported lvalue expression on locator-list
              #pragma omp task depend(in:gemm[A.nt()-1])
                                         ^
          detected during instantiation of "void slate::hemmA(blas::Side, scalar_t, slate::HermitianMatrix<scalar_t> &, slate::Matrix<scalar_t> &, scalar_t, slate::Matrix<scalar_t> &, const slate::Options &) [with scalar_t=float]" at line 673

/home/k0117/k011700/build/slate/src/hemmA.cc(553): error: unsupported lvalue expression on locator-list
              #pragma omp task depend(in:gemm[A.nt()-1])
                                         ^
          detected during instantiation of "void slate::hemmA(blas::Side, scalar_t, slate::HermitianMatrix<scalar_t> &, slate::Matrix<scalar_t> &, scalar_t, slate::Matrix<scalar_t> &, const slate::Options &) [with scalar_t=float]" at line 673

compilation aborted for /home/k0117/k011700/build/slate/src/hemmA.cc (code 2)

エラーだな。

g++ -DSLATE_ID=\"f8348a7c\" -Dslate_EXPORTS -I/home/k0117/k011700/build/slate/include -I/home/k0117/k011700/build/slate/src -I/home/k0117/k011700/build/slate/build/blaspp/include -I/home/k0117/k011700/build/slate/blaspp/include -I/home/k0117/k011700/build/slate/build/lapackpp/include -I/home/k0117/k011700/build/slate/lapackpp/include -std=c++17 -fPIC -fopenmp -MD -MT CMakeFiles/slate.dir/src/hemmA.cc.o -MF CMakeFiles/slate.dir/src/hemmA.cc.o.d -o CMakeFiles/slate.dir/src/hemmA.cc.o -c /home/k0117/k011700/build/slate/src/hemmA.cc

通る。

git clone --recursive https://github.com/icl-utk-edu/slate.git
cd slate
mkdir build
cd build
export CXX=mpicxx
export FC=mpiifort
cmake -Dblas=mkl -Dbuild_tests=no -Dgpu_backend=none -DCMAKE_INSTALL_PREFIX=$HOME/usr/local ..

一応ビルドは通ったが・・・?

等周問題を考えたが、意外に難しい。うーむ。

査読した結果が次々返ってくる。他の査読者のコメント、参考になる。

06月03日(火)

輪講。渡辺解析力学(ハチワレ解析力学)の3章の問題。拘束条件付き変分原理におけるラグランジュの未定乗数の意味とか。

分子シミュレーション研究創発センターキックオフミーティング(A)。

VS CodeにGoの拡張機能を追加。「Go for Visual Studio Code」かな。

インストール後、コマンドパレットから「Go: Install/Update tools」を実行して、現れたツールを全て選んでアップデート。

06月02日(月)

「やりたいことが多すぎて、でも時間が足りなくて、どうしても『やりたいのにやらないと決めたこと』が出てくるが、どうすればよいか」という質問。いや、どうすれば良いか僕も知りたい。やりたいことが多すぎるのに忙しすぎる。

1on1中にお腹が痛くなって、早めに切り上げたい感じが出てしまって申し訳なかった。

シミュレーション工学。自分の担当最後。

物性研後期申請した。

シミュレーション工学のレポートのヒントアップロードした。来年からどうするかなぁ、これ。

06月01日(日)

もう6月か。いつも月が変わるたびに、何もできないまま月日が流れることに焦る。焦るというか、諦めというか

息子の幼馴染の劇を鑑賞しに千葉へ。幼稚園からの付き合い。二人とも大きくなったね。

帰りに渋滞に巻き込まれて疲れた。

シミュレーション工学の感想の返事書いたり。物性研の申請を書くのはちょっと無理だった。