物理の研究の備忘録

高エネルギー物理学とかいうマニアックな研究分野の博士課程にいるわたしの備忘録。主にPCの設定とかプログラミングとか雑多な感じで

SL7にrootを入れる

Scientific Linux7 にrootを入れてみる。 UbuntuやMacには以前入れたので以下を参照。 Ubuntuにrootを入れる - 物理の研究の備忘録 Mac High Sierraにrootを入れる - 物理の研究の備忘録 基本Macでやったのと同様にgitでやってみる。 最初の環境の設定以外は…

TVをデュアルディスプレイでPCに繋いだ際に画面の端がはみ出る問題の対処法

HDMIケーブル等でテレビをPCに繋げば2画面で快適に作業することができる。ただ、テレビ側の画面の端がはみ出てしまうことがある。 原因はTV側の設定 テレビにはデフォルトでオーバースキャンという機能がonになっていることが多い。 これはテレビを受信する…

Mac High Sierraにrootを入れる

ここでいうrootはcernの開発してる解析ライブラリをさします。 最近SierraからHigh SierraにOSをアップグレードしたら今まで動いていたrootが(案の定)動かなくなってしまった。 多分pathとかの設定がいろいろ変わっちゃってるんだと思うんだけど、error me…

Linux環境でPython、機械学習を使って手書き文字を識別する

基本的には以下のサイトの通りに(言われるがままに)やっみた。 【機械学習】Python3 + scikit-learn で識別率99%の手書き数字の分類器を作った - 株式会社クイックのWebサービス開発blog 自分の環境はUbuntu 16.04 LTS 環境構築 1.apt-get使ってぱーっと入…

物理屋さんのiPhoneアプリ開発日記1~X codeを使ってみる~

はじめに クソゲーを作りたい。 これは俺の長年の悲願である。 もともと単純作業だったりすごくくだらないクソゲーが好きなので自分でもiPhoneアプリを作ってみたいと思い、Swiftの勉強を始めることにした。 もはやブログのタイトルとまったく関係なくなって…

c++使いのSwift備忘録

今日から趣味でSwiftの勉強を始めたので普段俺が使ってるc++との違いなどを備忘録的にまとめてみる。 Swiftとは2014年にAppleによって発表された割と新しいプログラミング言語のことだ。Mac関連やiOSアプリを開発しようと思ったらSwiftとお友達になるのが1…

負の二項分布(Negative Binomial Distribution)について学ぶ

負の二項分布とは 負の二項分布を使う機会があったのだけど、定義がいっぱいあってよくわからないので調べたことをまとめてみる。 日本語版wikipediaだと一つの定義しかないが、英語版wikipediaの項目(Negative binomial distribution)が割と充実していた…

なぜ加速器を使うのか?〜素粒子と初期宇宙〜①

さて、ここでは加速器や素粒子についておおまかな背景を述べる。 僕は原子核衝突実験の人なので、だいぶそっち方面に偏った説明になるかもしれない。 加速器の話 スイス、フランスの国境付近に CERN(欧州原子核研究機構)と呼ばれる研究所があり、せるんと…

高エネルギー物理の基礎〜はじめに〜

はじめに さて、このブログは今までタイトルの通り自分用の備忘録として使ってきた。 PCとかプログラミングの設定などのメモを中心に書いてきたが、せっかくなので自分が専攻している物理学、特に高エネルギー物理学と呼ばれるものについてもまとめておこう…

丸め誤差の恐怖〜浮動小数点数の扱いに注意する〜

丸め誤差は予想以上に厄介であることを思い知らされた。 こいつのせいで予想外のバグとの格闘に時間を割かれてしまったのだ。 自分への戒めとしてこの文章を残す。 丸め誤差とは? 簡単な例として10/3を考えよう。10を3で割り切ると 3.33333.... と永遠に続…

g++でc++11の機能を使ってコンパイルする時のメモ

コンパイルの方法 g++ -std=c++11 -O2 -Wall ‘root-config --cflags —libs’ -o test test.C とすればtestという名前のオブジェクトファイルができる。 ./test とかすれば実行される。 main関数に引数を与える場合は ./test (引数1) (引数2) とかやれば通る。…

c++ でテキストファイルを読み込んでループを回す時のメモ

データ解析においてテキストファイルに書かれたデータを読み込む機会は結構多い。 俺も今までさんざん使ってきたんだけど、結構細かい書き方忘れちゃうし、曖昧な箇所も多いのでこの際ちゃんと覚える。 例えば次のような内容のテキストファイル(test.dat)…

Linuxで自分の使ってるシェルの種類を確認するときのメモ

自分の使ってるシェルを確認 $ echo $SHELL で現在使ってるシェルの種類がわかる。自分の環境だと。 /bin/tcsh とでた。 cshを拡張、バグ修正したものがtcshらしい。 csh、tcshはcsh系と呼ばれ、 sh、bash、kshはsh系と呼ばれる。文法とかも微妙に違う。 zsh…

rootのTProfileで任意の幅でrebinしたりProfileどうしを足したり割ったりする方法

いくつかのTProfile(or histogram)同士でrebinしたりProfile同士を足したり割ったりしたい。 今まではGetBinContent()でビンの中身持って来て足したりとか脳筋っぽいことをしてたんだけど、 histogramと違ってProfileの場合はエラーの計算とかがめんどくさ…

c++でstd::stringを分割する方法のメモ

stringで文字列を定義した時に途中で分割する必要が出てきた。 例えば "8:3"という文字列を:で区切って8と3をそれぞれ取り出したい場合について考える。 調べるとそれっぽいページが出てきたのでやってみる。 C++ 文字列クラス std::string 入門 どうやらstd…

ラドンって知ってますか?~身近な放射性物質であるラドンのまとめ~

放射能の恐怖 3.11以降(といってももうずいぶん経ちますが)ニュースや新聞でも放射線を扱う話題が増えてきました。 原発に賛成とか反対とかいろんなことが言われてますが、どうも放射線に対して正しい知識をもってない人が感情論で意見を主張している例が…

誰が原子をみたか『江沢洋』

せっかくブログを始めたので書評でも書く。 書評というか感想だけど。 今回紹介するのはこの本。 だれが原子をみたか (岩波現代文庫) 作者: 江沢洋 出版社/メーカー: 岩波書店 発売日: 2013/01/17 メディア: 文庫 クリック: 10回 この商品を含むブログ (7件)…

Firefoxをvimのキーバインドで操作する方法〜vimperatorを入れよう〜

動機 vim。言わずと知れたテキストエディタである。 vimを使ってコードや文章を書くときは基本的にキーボードしか使わない。移動もコピペもすべてキーボード上のショートカットで行うのである。例えばカーソルの移動も矢印キーなんか使わず"hjkl"の4つを使…

Ubuntuにrootを入れる

さて、Ubuntu 16.04 LTSをPCに入れることができたので、次にrootを入れる。 rootっていうのはCERN(欧州原子核研究機構)で開発されている、高エネルギー物理解析でよく使われるデータ解析用のフレームワークです。 rootをインストールする方法は大きく分けて3…

Ubuntu16.04を入れたときの最初にした設定

おうちのPCにUbuntu16.04を入れたので、最初にした設定等をめも。 16.04は比較的新しく出たばかりなのでいろいろと不安ではある。 1、ディレクトリを英語表記にする これは16.04に限った話じゃないけど、Ubuntuのディレクトリ名はデフォルトで日本語になっ…