物理の駅 by onsanai

Physics Station → PhSt 質問・疑問・間違いの指摘は、コメントに書くか、直接伝えるときっと良いことがあります。主にWindows or Ubuntu用の記事です

Woods-Saxon potentialをPythonで描画する

import numpy as np from matplotlib import pyplot as plt v0 = 14 A = 15 a = 0.5 r0 = 1.25 R = r0*A**(1/3) x = np.linspace(0.0, 10.0) y = -v0/(1+np.exp((x-R)/a)) plt.plot(x, y, "b-") plt.title(r"Woods-Saxon potential") plt.text(3, -v0*0.8, r…

ポアソン分布と二項分布をPythonで描画する

Pythonを用いた ポアソン分布の確率分布の描画。適宜meanを変えてね。 from scipy.stats import poisson import matplotlib.pyplot as plt mean = 2.3 xs = [] prob = [] for i in range(7): print(i,poisson.pmf(i, mean)) prob.append(poisson.pmf(i, mean…

Windows Server 2019にIntel LAN Adapter I219-Vのドライバをインストールする

Intelのコンシューマー用のネットワークアダプターは、いろんな思惑から、Windows Server用のドライバを提供していないことがある。しかし、Windows10とServer2019は同じものなのでドライバが使えないわけではない。使うためには、やや専門的な知識を必要と…

環境変数を設定したコマンドプロンプトの簡単な作成方法

バッチファイル(拡張子がbat)のファイル作っておき、それを起動するのが簡単な作成方法である ファイル名は例えば setenv.bat とし、中身には以下のように記述する。この例では、C:\ をPATHに追加している。 @echo off PATH=C:\;%PATH% cmd /k 作成後、 sete…

calibreのアンインストール時に拡張子への関連付けが消えない問題の解決

Bug #1856268 “File Associations Not Removed On Uninstall” : Bugs : calibre ここで報告されてる通り、アンインストール時に関連付けの登録が消えないのは仕様通りだそうだ。 例えば、64bit版をインストールし、起動時に(無意識に)関連付けをしてしまうと…

Windows用のSlackから出力したjson形式ログファイルを閲覧するためのビューア

友人のソフトウェアを紹介する kenkyu-note.hatenablog.com 世界には自分を超える変態が多数存在する github.com

Pythonで動画ファイル (形式.mp4)から画像を切り出す

note.nkmk.me OpenCVを使うとすぐに実装できる。ほぼ上記URLのサンプル通り。 import cv2 import os def save_all_frames(video_path, ext='jpg'): if not os.path.exists(video_path): return cap = cv2.VideoCapture(video_path) if not cap.isOpened(): r…

Surface Book 3がゴミになった件

Surface Book 3はゴミなので絶対に買うなという話 answers.microsoft.com

ウェブ上にあるPDFファイルをダウンロードする方法

import urllib.request url = "https://test.test/test.pdf" filename = "test.pdf" urllib.request.urlretrieve(url, filename)

Pythonで2次元ヒストグラムをモルワイデ図法で描画する方法

stackoverflow.com を参考にした。 2Dヒストグラムのbinデータを自力で用意し、pcolormesh で描画する。その方法は pythonのmatplotlibで2次元ヒストグラム(hist2d)のビンの値を直接操作する - 物理の駅 by onsanai で解説している。 モルワイデ図法にするコ…

Pythonで矢印をうまく描画する関数 quiver

matplotlib.pyplot.arrowを使わず、matplotlib.pyplot.quiverを使うとうまくかける。矢印の始点(px, py)、矢印のベクトル(vx, vy)、色(colors)を作り、quiverに与える。 ベクトルは、範囲に収まるように適宜係数をかける。(今回だと *0.1 ) scale = 1,scale_…

漫画のEPUBファイルから画像をPythonで取得する方法

pypi.org が便利だった。 pip install EbookLib でインストール カバーebooklib.ITEM_COVERと、画像ebooklib.ITEM_IMAGEをそれぞれ開き、バイナリ形式で出力する。 import ebooklib from ebooklib import epub import os book = epub.read_epub('filename.ep…

LINEとSlackの暗号化の話 LINEは本当に危険か?

LINEは危険という話をよく聞く。本当なのか。コミュニケーションツール Slack と比べてどうか。 Slackはすべてのデータをサーバー側と経路で暗号化しているため、仮にSlackが不正侵入されたり、通信経路で盗聴されても平文(暗号化前の元の文やデータ)が漏…

ミスミで規格外の金属部品を3DCADデータから作れるサービス meviyを使ってみる

これまで、ミスミで売っていないような金属部品は、3D CADで作成→2D 図面に落とす→見積り依頼→不明点の解消→発注→製作→納品 という流れで制作していた。3Dから2Dに落とすところに相当な時間がかかることが問題だった。 ミスミのmeviy オンデマンド製造サービ…

Tex revtex4-2.clsの入手方法

https://ctan.org/tex-archive/macros/latex/contrib/revtex からZIPをダウンロードする。Google Chromeだと警告が出るので、無理やりダウンロードする。 展開すると以下のファイルが見える revtex\aip revtex\aps revtex\auguide revtex\sample revtex\aip4…

C++ OpenCVでalphaチャンネルなし画像からalphaチャンネルを作る

入力画像は、アルファチャンネルあり、なしBGR、グレースケールの3種類に対応した。 アルファチャンネルは8bitの4チャンネルの4つ目で、0-255で与える。0の場合は完全に透過する。 今回は、BGRの輝度値が真っ白付近(245-255)を透過する条件とした。 変換前(…

メールアドレスの誤記について

イベント参加者を募集するときにメールアドレスを収集する機会があった。その時の経験則として、5%の人がメールアドレスの誤記をしてくることが分かった。さらに、多くの場合は明確な誤記なのでこちらで修正が可能であるが、一部は氏名が分からないと修正し…

高付加状態でEISTを無効にすると処理が速くなる

ことがあるらしい。 EIST(Enhanced Intel SpeedStep Technology)

Ubuntu 18.04 LTS で再起動後にNVIDIA driverに接続できなくなる問題の解決法

$ nvidia-smi Wed Nov 18 16:42:39 2020 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 440.33.01 Driver Version: 440.33.01 CUDA Version: 10.2 | 以下略 と表示されていたが、再起動後 $ nvidia-smi NV…

C++ Eigenを使った正規分布のフィッティング手法

過去に、ROOTとPythonで正規分布のフィッティングをした。 phst.hateblo.jp だが、ROOTはWindowsでx64と共存しないので、x64と共存するライブラリだけを使ったフィッティングを試みた。まずは、 ガウス分布のフィッティング用のサンプルデータ Sample data …

Windowsでマウスの動きがガクガクになったときは、ポインターオプションからポインターの精度を高める

Windowsでマウスの動きがガクガクになったときは、ポインターオプションからポインターの精度を高めるにチェックを入れてみよう。 Logicoolのソフトを入れると、この「ポインターの精度を高める」のチェックが外れてしまったらしい。fucking.

なぜSlackだったのか

Slackである必要性はなかった。 安定したサーバー・接続が容易 モダンなデザインかつマルチプラットフォームなクライアント 中央集権的(場所の管理権限有)であり分権的(部屋を追加したり人を呼べたり)である 通知の自己管理 部屋を分けれる 他のサービスとの…

TexLive2020のインストールメモ

Windowsでは、メジャーバージョン(例:2019→2020等)のアップデートに対応してないので、新規インストールする必要がある。念の為、過去のバージョンはバックアップを取っておこう。 ISOをダウンロードした。texlive2020-20200406.iso。マウントして、install-…

Android11のマナーモードの設定

この記事は問題提起なので、解決はできていません。 Android9かAndroid10では 通知の鳴動制限 というのがあり、 サイレント (いかなる通知でも鳴動されない) アラームのみ (アラームの割り込み鳴動が許可) 重要な通知のみ (アラームと設定した重要な通知のみ…

7zip with Zstandard (Zstd)をインストールする

github.com facebookのメンバーが作った高速な圧縮・展開が可能なZstandard (Zstd) が使える、7zipのあるバージョン

Windows用 画像閲覧ソフトウェア IrfanView のインストール

インストール forest.watch.impress.co.jp IrfanView(64bit版) IrfanView日本語化モジュール をインストールする。 日本語化 Option -> Properties/Settings -> Language -> JAPANESE.DLL を選択してOK 画像循環時の設定 画像が循環したときに、フォルダ選…

PsExecを使うためのリモート側(アクセスされる側)の設定

ネットワークの種類はプライベートにする Firewallで以下を有効にする 135/tcp(RPCエンドポイント・マッパー) 445/tcp(ダイレクト・ホスティングSMB) 1025~65535/tcp(RPC動的ポート) コマンドなら管理者権限にて netsh advfirewall firewall add rule…

自分のパソコンが拡張命令 (AVX-512等)に対応しているか確認する方法

cpuid x86およびx64で使用可能な命令(訳注: 拡張命令含む)を生成します。この命令は、サポートされている機能とCPUタイプに関する情報をプロセッサに問い合わせます。 docs.microsoft.com 実行例 Surface Book 2 GenuineIntel Intel(R) Core(TM) i7-8650U CP…

ThreadPoolの引数を取得する方法と、処理順序を制御できるcondition_variableの使い方

CPUは複数あるので並列化できるが、出力は並列にする意味がない。また、CPUを使った処理は順不同で良いが、出力は順に行いたい。こういう目的のためには、ThreadPoolと、std::condition_variableを使う。 以下の例では、友人が作ってくれた ThreadPool を使…

なぜパスワードで暗号化したファイルをメールで送ってはいけないのか

セキュリティの基本は「人は愚かである」という前提に立つことである。しかし、我が国のセキュリティ意識は多くは「頑張ればなんとかなる」精神に立っており、しばしば誤った頑張り方が重大なインシデントを招く。その一つが、 個人情報や機密情報を送ろうと…