- 追加された行はこの色です。
- 削除された行はこの色です。
- 核と環境 へ行く。
#author("2025-10-27T23:38:12+09:00","","")
#author("2025-10-28T00:35:26+09:00","","")
[[News2023]]
* プログラム言語 [#ad00e8b0]
プログラム言語の最初のものはFORTRANという公式的なものを計算することを主に考えられた言語だった。つぎにデータを取り扱うためや、磁気テープや磁気ディスクなど多様な記憶媒体に対応するためのオペレーティングシステムと呼ばれ、複数の利用者のFORTRANのプログラムを実行させるプログラムができた。
それがMacOSやWindowsと呼ばれるもので、C言語で書かれていた。それらはたくさんの関数と呼ばれるものを使っていて、データの方は整数や不動点少数とそれを並べた単純なアレイと呼ばれる変数があるだけだった。
関数名と変数名が様々な機能を持ったライブラリ同士で同じものがあるとエラーが発生するようになってきた。
そこで登場したのがオブジェクト指向言語と呼ばれるもので、特定の作業を行うためのデータの集合体をクラスという名前で呼び、そのデータ群をオブジェクト名という実体化した名前でメモリーに配置することにする。
C++がその典型的なものである。そこで使われるクラスの典型的なものはWindowと呼ばれる計算機の画面に表示される4角い領域で、その中には文字列や画像などが表示されるわけである。その構造は同じようなもので別のwindowの中では文字列や画像だけが異なっている。
* Geant4は2025年でwin11で動く [#lfe39522]
ようやくwin11でもOKになったようだ。ただいつもソースからコンパイルしてたんだがQtはどうなのか。まあQt5でVSC2019しかだめ。となるとやっぱりトライアンドエラーみたい。いまのノートはVSC2022だし。Qtのアカウントは忘れているし。2021手帳を見たら「大学のアカウントで入った」とある。プロな人の[[インストールページ:https://llrgit.in2p3.fr/semenjuk/installg4/-/wikis/Windows-Installation/Win11-Installation/diff?version_id=7d77fe523e611a361dd5ac7edc243c26f5019b9c]]。Qtのアカウントは使えた。新しいのしか見当たらないのでアーカイブを選択してみた。Qt5.15.2が出てきた。8GのファイルをC:\Qtにインストールした。設定の環境変数を編集を検索して、以下をPathにセットした。その後再起動してPathを認識させる。
ようやくwin11でもOKになったようだ。ただいつもソースからコンパイルしてたんだがQtはどうなのか。まあQt5でVS2019しかだめ。となるとやっぱりトライアンドエラーみたい。いまのノートはVS2022だし。Qtのアカウントは忘れているし。2021手帳を見たら「大学のアカウントで入った」とある。プロな人の[[インストールページ:https://llrgit.in2p3.fr/semenjuk/installg4/-/wikis/Windows-Installation/Win11-Installation/diff?version_id=7d77fe523e611a361dd5ac7edc243c26f5019b9c]]。Qtのアカウントは使えた。新しいのしか見当たらないのでアーカイブを選択してみた。Qt5.15.2が出てきた。8GのファイルをC:\Qtにインストールした。設定の環境変数を編集を検索して、以下をPathにセットした。その後再起動してPathを認識させる。
C:\Qt\5.15.2\msvc2019_64\bin
去年のcmakeの記述が使えるようにユーザーの先頭にGeant4を作ってその下にGitHubから取ってきたソースコードをcmdに入ってunzipで展開した。その後cmakeでコンパイル用のmakefileを自動生成する。次のコマンドが実際のコンパイル。その次がインストール領域にインストールする作業となり膨大なファイルが作られ、移動することになる。
cd %homepath%\Geant4\geant4-11.3.2-build
cmake -DCMAKE_INSTALL_PREFIX="%HOMEPATH%\Geant4\geant4-11.3.2-install" -DGEANT4_USE_QT=ON -DGEANT4_INSTALL_DATA=ON "%HOMEPATH%\Geant4\geant4-11.3.2"
cmake --build . --config Release
cmake --build . --config Release --target install
「ファイルは、現在のコード ページ(932)で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。」というwarningが多発。無視で良さそう。hadronic\extended\Hadr04とFissionFragmentをやってみたが、FissonFragmentの方は何が起こっているのかよくわからなかった。
WindowsのQtが有料化しているみたいなので、Ubuntuだとそうでもなさそうでそっちが結局楽。
* 地球の温度のwin電卓計算 [#d13631eb]
[5772][x][0.25][x^y][0.25][x][0.004654][√][=]で278.4[K]となる。
アルベド0.3を入れるなら最初の[0.25]を0.25に0.7を掛けたもの[0.175]にする。254.7[K]で凍ってしまう。大気がないとそうなるが、今問題になっているのは摂氏15℃が1.5℃上がってしまったのをどうするか。
* ロスの大火災 [#t4ff3428]
山を吹き降りる乾燥した風は大被害をもたらす。断熱圧縮するから。そうすると相対湿度が下がって、木が燃えやすくなる。対流圏の上空の気温低下は暖められた空気の断熱膨張で概算できる。これらもべき乗で計算が必要。1.4乗がいつも出てくる。(5+2)/5=1.4。2原子分子気体には自由度5の内部エネルギーと圧力と体積による潜在エネルギーがあるということ。
* Winの電卓で太陽定数計算 [#qcc73ee5]
[5.68][exp][8][+/-][x]([5772][x^y][4])[x][4.654][exp][3][+/-][x^2][=]で1.366e3ワットのそれらしい数になる。エクセルなんかでも使う指数表記。ネビア数のexpornentを使っているので混乱必至。[x^y]がxのyべき乗。電卓の[exp][y]で[10][x^y][y]みたいなことをしてるというのが理解困難。太陽の視半径がネットでは16分となっているのも大変。ラジアンにすると4.654e-3となる。ふつうの人には無理かも。ステファン・ボルツマン定数に温度の4乗を掛けて視半径の2乗を掛けてるわけだが。
* 原子炉、格納容器、圧力抑制室の圧力 [#b8d04c9c]
弁護士伊東さんのページのPNGファイル。11日15:35の津波でSBO。その日のうちに1号機がメルトダウン、12日14:30ベント成功、15:36に水素爆発、電源車のケーブル切断で電源復帰できず。構内はがれきの山。これで、2、3号機の運命も決まったか。
#ref(./kanteia600.png,50%)
次に3号機13日夕方メルトダウン、13日8:41ベント操作、14日11:01に水素爆発、作業員の上にがれきが降り注いだが死者は出なかった。続いて2号機14日夕方メルトダウン、15日の6:14に4号機水素爆発で退避命令、6:28のD/Wが750kPaでS/Cが0kPaを記録したあと退避となり記録が飛ぶ。S/C圧力がD/Wとその前からずれ過ぎで信用できない。
#ref(./tepcoa600.png,75%)
#ref(./tepcoa151617-600.png,75%)
格納容器雰囲気モニターシステム(Container Ambient Monitor System)のデータ。15日6:28で退避となった。D/W内の線量率は恐ろしい高さ。線量6程度が致死量。
格納容器雰囲気モニターシステム(Container Ambient Monitor System)のデータ。15日6:28で退避となった。4号機爆発の後、作業エリアでも線量率10mSv/hの所が出た。D/W内の線量率は恐ろしい高さ。線量6程度が致死量。
#ref(./tepcocams1415.png,50%)
* jupyter notebook使い方 [#i8fb6f8b]
Pythonプログラミングお宅の世界なので無視してもよい。まずminicondaを入れる。コマンドプロンプトで動作させる。
それはpythonの仮想環境というもの。pythonのversionの変化にも対応できるようになっているはず。アップデート方法は何だったかな。基本はbaseをいじるので固定されたそのversionなら以下。
conda update --all
久しぶりに使ってbaseが古いversionだと思ったら
conda update -n base conda
コマンドプロンプトで以下をタイプして起動。
jupyter notebook
久しぶりに使ってみるとnotebook 7というのを使いなさいと言っている。関連ページを見ると以下のコマンドで6.4から7にアップデートできるみたい。電車の中なので家に帰ってやることにする。
conda install conda-forge::notebook
conda-forgeというのはanacondaのパッケージを置いておくところみたい。
TensorFlowを入れていないなら以下のコマンドをミニコンダプロンプトで打っておく。
conda install tensorflow
この状態で[[「初めてのニューラルネットワーク」:https://www.tensorflow.org/tutorials/keras/classification?hl=ja]]をやるといつものエラーとなる。エラーメッセージにもフラグのセットが示されている。つまりOSの環境変数にフラグをたてる必要がある。やり直しとなり、jupyterなら最初にするのは以下。
import os
os.environ['KMP_DUPLICATE_LIB_OK']='TRUE'
この後は、HPのコピーを押して、notebookにペースト、notebookの実行ボタンを押す作業を繰り返す。
終わるときはファイルメニューにshutdownがある。
* 物理の実験の基本単位はボルト [#xc59da3d]
基本は電池の電圧が1.5V程度だということ。かつ日常的には100Vの交流がつかわれているが、課金されている単位が電力量1kWhで30円ほど。電圧と電流を掛けたものが電力でワットが単位。100Vの機器に10A流して1時間使った量。交流なので電圧、電流とも振幅が100Vや10Aの2の平方根倍。正弦関数の性質からそうなる。プログラムで考えると以下のもの。
#ref(alternateC.py)
粒子物理では素電荷に1ボルト電位差を掛けた電子ボルトでエネルギーの基本単位とする。赤い光は2電子ボルトで青い光は3電子ボルトほど。
* 福島原発事故の1号機の崩壊熱 [#h2e24e7d]
崩壊熱は数時間立つと減少する。1号機の熱出力は1.5GWでその6.6%が最初の崩壊熱で時間とともに減少することをグラフ化する。なかなか減らないという印象がある。
#ref(decayHeat.py)
* チェルノブイリ原発事故の原因 [#c676afa9]
外部電源の喪失に備えて低出力の運転中に、タービンの停止のための主蒸気弁を閉じるという試験を行なった。黒鉛炉であるチェルノブイリ原発は低出力運転には適していなかった。運転を安定にするために制御棒を使うが、低出力運転では水の中の蒸気の割合が少なくなってしまっている。これがわずかな出力上昇で蒸気が増えると、水の熱中性子吸収が減少するために制御できない反応度の上昇を発生させる。とんでも無い実験したという事だった。
* 情報機器のWifiとBlueTooth [#i33d93e3]
これはTCP/IP通信とシリアル通信のことだが、スマホのアプリが何をしているのかの例としてTCP/IP通信のクライアント、入力機器としてゲームコントローラーを使う例がTelloのスマホアプリとなる。ドローン本体はサーバーが動くので、スマホ側で普通のルーターに変えてTelloを選択しておく。アプリを立ち上げてコントローラーをBTでつないだら、コントローラーで操作可能となる。後はGameSir・T1dのR2+Yで離着陸。右側Stickで前進後退左右、左側で回転上下となる。
* Visual Studio commandを立ち上げたら [#x1c56bee]
使うのは、cd, dir, type, where, echo, path, set, notepad, doskey /hなど。Ubuntu、macの、cd, ls, less, which, printenv, echo $PATH, export, gedit, historyが対応する。>(リダ入れクション)を使って端末への出力をファイルにかえるのは両方同じ。トップディレクトリに行くにはcd %homepath%、linuxではtargetなしのcdでいってしまう。command(cmd)に対応する仮想端末立ち上げはMacではランチャーから、Ubuntuではデスクトップで右クリック。
* フェルミのベータ崩壊の理論が標準理論に [#c8a29899]
昔の教科書ではCvというのがフェルミ結合定数になり、真木先生の本だと10e-5/Mp**2と書いてある。理論の教科書には必ずミューオンの寿命が書いてある。歴史的には中性子や14Oの寿命の測定の話が弱い相互作用の理論の記述には必ず出てくる。具体的な計算のプログラムをかなり前に書いたので、リンクを載せておく。計算の時のエネルギーの次元はMeV。
https://www.takashimake.com/typesetter/public_html_old/busshitsu2/kougi.html
* Javascriptで簡単に結合エネルギーを計算 [#vdd25a2d]
かまろぐというページに簡単な例があった。これをいじって、計算する例ができた。ダウンロードして、ブラウザで開くと動作します。簡単に読めるので無害とわかる。以下をクリックしても動作。
#ref(weizsacker.html)
実際の結合エネルギーは原子核の質量と関係しており、それはダルトンユニットというもので核図表の英語版のリンクをたどると調べることができる。質量から結合エネルギーを計算する例として、特に核分裂やベータ崩壊でプルトニウムの生成に関係する部分を計算するエクセルファイルをアップしておく。ベータ崩壊では親核の結合エネルギーより娘核の結合エネルギーに0.8MeV足した数が大きいと崩壊が起こる。プルトニウムがギリギリ生成することがわかる。
#ref(neutronExitation.xlsx)
* ウランの核分裂 [#a706f835]
放射能はウランがなければ発見されなかった。92番元素のウランはベクレルによって放射能が発見され、1932年の中性子の発見につながってゆく。そのわずか4年後には原子核の質量公式の論文が出ているらしい。原子核の授業ではこの式が出てくるが、核分裂で重要なのは、中性子数が奇数の核が核分裂を起こしやすいということ。実際には235Uと239Puしかない。あまり書かれていないが対エネルギーEdeltaが一番効く。簡単に調べることができるプログラムを書いてみた。
#ref(weizsacker.cc)
MSVCやG++でコンパイルして以下をタイプし、結合エネルギーEbを眺めると理屈がわかる。
weizsacker 235 92
weizcacker 236 92
236Uが強く結合するので、変形して分裂する。液滴モデルと呼ばれる。変形に必要なエネルギーは6MeV程度と思われる。映画の「オッペンハイマー」の日本公開が待ち遠しい。
トリウムは中性子が偶数で熱中性子では無理。そこで高速中性子を打ち込んで無理やり核分裂させるやり方がある。陽子数83のビスマスも中性子が奇数なので一見有望だが、電荷が微妙に小さいので変形した後に分裂を加速する力が働かないようだ。ビスマスの後、どうやって92個まで宇宙で元素合成が進んだのか不思議すぎる。つまりウランは神元素。
原子核の質量は魔法数で微妙に小さくなるが、これは外側を回る原子核に軌道角運動量とスピン角運動量が同じ向きにそろう性質があるため。