粗大メモ置き場

個人用,たまーに来訪者を意識する雑記メモ

Tex : 定理や式分岐などを書くセット (dcasesを使おう)

よく忘れるのでこの際テンプレとしてメモ。
特にcasesで分岐のフォントが小さい時にdcasesというパッケージがある(&styファイルが異なる)のは初耳でした。

定理を書くtheoremのテンプレ。screenの四角付き。

\begin{screen}
\begin{theorem}
	関数 $ f(x,y)$ において点 $ (a,b)$$ f_x(a,b)=0$,  $ f_y(a,b)=0$ をみたすとき, $ f(a,b)$ が極値となるための判定条件は次の通りである.\\ 
	但し,$\displaystyle D(a,b)=f_{xy}(a,b)^2-f_{xx}(a,b)f_{yy}(a,b)$とする。
	\begin{enumerate}
		\renewcommand{\labelenumi}{(\roman{enumi}).}
	\item $ D(a,b)<0$,  $ f_{xx}(a,b)>0$ のとき, $ f(x,y)$ は点 $ (a,b)$ で極小値をとる.
	\item $ D(a,b)<0$,  $ f_{xx}(a,b)<0$ のとき, $ f(x,y)$ は点 $ (a,b)$ で極大値をとる.
	\item $ D(a,b)>0$ のとき, $ f(x,y)$ は点 $ (a,b)$ で極値をとらない.
	\item $ D(a,b)=0$ のとき,個別に判定する.
	\end{enumerate}
\end{theorem}
\end{screen}

こうなります。
f:id:ossyaritoori:20170113001621p:plain

式分岐を書く,caseのテンプレ。

\dfrac{\partial^2 \bm{J}}{\partial \theta_{1x}\partial \theta_{1y}} = 
\begin{cases}
-\omega_{yx} \leq 0 & (y < x, x \neq 2)\\
-\omega_{xy} \leq 0 & (y > x, x \neq n)
\end{cases}

こうなります。
f:id:ossyaritoori:20170113001702p:plain

場合分けでは見た目的にはdcasesを用いた方が良い

mathtool.styをインクルード。

\usepackage{mathtools}

dcasesと書くだけです。

\dfrac{\partial^2 \bm{J}}{\partial \theta_{1x}\partial \theta_{1y}} = 
\begin{dcases}
-\omega_{yx} \leq 0 & (y < x, x \neq 2)\\
-\omega_{xy} \leq 0 & (y > x, x \neq n)
\end{dcases}

この書き方だとわかりませんがw
Σなどを用いているなら違いがわかると思います。
f:id:ossyaritoori:20170113011020p:plain

Tex 改行をまたいで括弧をつける

Tex小ネタです。

 \left\{ xxxxxxxxx \right\}

と書いて大きい括弧を書けるのは周知のとおりですが,これに対して次のように改行を挟むとエラーが出ます。

 \left\{ xxxxxxxxx \\
 yyyyyyyyy  \right\}

解決法は,\left.\right.を用いて以下のように書きます。地味にめんどくせぇ…

 \left\{ xxxxxxxxx \right. \\
 \left. yyyyyyyyy  \right\}

iTunesを用いたバックアップからの復元・データ移行 -セッションが失敗したため、iTunesはiPad”xxx”を復元できませんでした-の解決

実家に帰ったら親にiPadのデータ移行をしてほしいと頼まれました。
なんだそれだけかと思ったらこれがなかなかうまく行きません。

iTunesを用いたiPhoneiPadのバックアップ,復元の注意点

詳細な手順は他のサイトを見てもらうとして,この際に気をつけるべきは

- 使用しているiOSiTunesは正しくアップグレードされているか
OSやiTunesのバージョンが異なるとエラーの元なので一度環境を整えてからやってみてください。

ちなみにソフトを最新にした後のウチの環境は,
PC:windows7
メモリ:2G
CPU:Corei3(4年前くらいの)
です。メモリ2Gって…orz

それでもうまくいかない!

うちはそれでもうまく行きませんでした。

復元をボタンを押してもしばらくすると
iTunesiPad”xxx”を復元できませんでした』のエラーが出ます。

そこで以下のサイトの情報を見つけました。
セッションが失敗したため、iTunesはiPhone”xxx”を復元できませんでした。iPhoneの復元ができない。 | Astro.jp

解決法は,,,

”バックアップから復元中”のwindowをクリック,ドラッグし続ける!

な,何を言っているのかわからないと思うが(以下略
f:id:ossyaritoori:20170102010912p:plain:w200

試しにwindowをポチポチクリックとドラッグしていたらこれが実際効いたんです!
対象のプロセスを常に最優先にしていないとリソースが足りなくなる的な何かなんでしょうか。


このままでは時間と労力をとても消費します…
うちのは1時間くらいかかったので人力ではやめたほうが良さそうです。

自動でクリックし続けるソフト(簡単)

クリック動作を自動でやってくれるものとして,
連打くんというツールがあるみたいです。
Vector:連打くん (WindowsMe/98/95用ソフト / ユーティリティ)

上記のURLでダウンロード可能です。

フリーソフトなので自己責任で管理をお願いします。

簡単操作かつ強力だったので以降これでやっていきます。

f:id:ossyaritoori:20170102020324p:plain

UWSC を使う(経験者向け)

同種のソフトにUWSCがあります。こちらは任意にプログラム可能であるため,もっと凝った操作が可能です。
自動ツール作成経験者はこれを使ってもいいでしょう。(私も持ってますがやらない)

また,AutoClickPositionsというソフトを用いてみましたがクリック頻度が低くおすすめできません。

Pythonで書く(暇人向け)

Pythonインスコしているなら自分で自動クリックプログラムを書くことができます。
以下に基本ルーティンを書きます。
マウスの座標をうまく取得してループで回せばきっとなんとかしてくれることでしょう。

正直pythonインスコ出来てて,まともに動くPCなら上記問題は起きないかと思いますが。

# -*- coding: utf-8 -*-
from ctypes import *
user32 = windll.user32
import time
 
if __name__ == "__main__":
    #ここから処理
    x = 0 #座標指定
    y = 0
    user32.SetCursorPos(x,y) #カーソル座標移動
    user32.mouse_event(0x2,0,0,0,0) #左クリックを押す
    time.sleep(0.2) #0.2秒待機
    user32.mouse_event(0x4,0,0,0,0) #左クリックを放す

『連打くん』を使った復元成功法

予め言いますがこの作業は通しで10時間以上かかります。急ぎでなくかつPCを触らない就寝時などに行ってください。
連打くんを用いることで時間を大幅に短縮!
すごいぞ!連打くん!

プログラムを解凍してexeファイルを実効すると,
f:id:ossyaritoori:20170102020324p:plain
のような画面が出ます。

クリック間隔を1秒前後にして,「F9」を押すと自動でクリックし始めます。
従って入れる数字は1000より少し小さいくらいがおすすめです。
そして「F10」をおして終了します。

コツ

最初の「かかる時間を計算しています」のところが1番シビアな印象です。
ここは人力でwindowをクリックした方が良いかもしれません。

その後残り時間が表示されるようになったら連打くんにまかせる,といった手法を取りました。

おまけ

クリック間隔とかかる時間の関係。

  • クリック間隔:3秒 → かかる時間25時間(推定)
  • クリック間隔:0.8秒 → かかる時間1時間(推定)

なんなんだ。

まとめ

  • バックアップの復元で困ったときはウインドウをクリックし続けると良い。
  • フリーソフト「連打くん」を使って連打させよう。
  • 古いパソコンは買い換えよう。
  • iTunesきらい。

opencv_2410core.pdb not found とか出たら

安心してください。基本的にはあなたのプログラムの何処かでセグフォってます。
ただそれだけです。

このpdbファイルのサーバーとか関係なしにこのエラーがでることがあります。
何が言いたいかって言うとVisualStudioは滅べってこと。

勝った気になる勝利BGMの個人的メモ

※この記事はオタクコンテンツや子供っぽい内容を含みます。
耐性の無い方は生暖かい目で見てください。

勝利BGM

定義:アニメや映画などで問題が解決したなど好転した際に流れる音楽

性質上,バトル物に多く収録される傾向にあります。
メジャーなものが多いですがマイナーな奴らは探すのが大変なので…


勝利BGM - YouTube

種目別BGM紹介

ロックぽいやつ

ジョジョから2つほど。お仕置きBGMとも呼ばれていますね。
www.youtube.com
www.youtube.com

テクノっぽいやつ

いろいろここに入れていいか迷ったんですけどね。

まどか☆マギカより,マミさんのテーマ。
いや,これ流れたら「勝った!」って思うじゃん…?
www.youtube.com

アニメ版ピンポンより。これもすごくカッコイイ。ぜひ見てください。
www.youtube.com

お祭り風

要はNARUTO系です。NARUTOのBGMもアツイの多いですけど,勝った気になるのは以下のやつかな。
www.youtube.com
www.youtube.com

これも挙げるとキリがないですね。

オーケストラ風

グレンラガンより。爽やかなオーケストラのサウンドが良い。
www.youtube.com

フルメタル・パニックTSRより。本編も見てください。是非。
www.youtube.com

遊戯王より「熱き決闘者たち」。オシリスの天空龍!!(意味不明)
www.youtube.com

FlipFlappersより「Trading Places」大逆転の意味。個人的激推し。
www.youtube.com



まどマギ映画版より。勝利?いやしかし雰囲気で加えておきたかった。
www.youtube.com

ジャズ?

ロックマンエグゼより。これじゃないやつも好きなんですけど見つからない。
www.youtube.com

コナンのアレ。作業中にこれ流れたら帰って寝たくなるな…
www.youtube.com

ポケモン

ポケモンのBGMは流石わかりやすさに降ってる感じがあって好きです。
抜けるような爽やかなサウンドが個人的にお気に入り。
機会があったらCD買おうかなってくらいです。あんまり語るとこれだけで記事がかけそう。

www.youtube.com
www.youtube.com
www.youtube.com
www.youtube.com
ンギモッヂイイ!!

歌あり

歌があるとBGMとしてはちょっとアレなんですけどノれる曲は多いです。

Bleachより。余談ですが小さい頃Bleach見た時はそのオサレさに感服したのを覚えてます。
www.youtube.com
ソウルイーターより。岩崎琢バンザイ。
www.youtube.com
キルラキルより。サビの所をよく聞いたかと思います。
www.youtube.com

終わりに

地味に疲れた…おすすめあったら教えてください。
今期だとフリップフラッパーズの勝利BGMとか加えたいしアクティブレイドとかもw。
あと焼き立てジャパンのあれとか加えたかったけどどこいったんだろ。

【卒論・修論】 分割Texファイルを単体でもコンパイルできるようにする(docmuteパッケージ)

みなさん卒論・修論書いてますか?
私はね,こないだフォルダを作りました。今回はファイル分割の話を少しします。

2016/12/27追記:\includeがうまく機能しない?→\inputを使う。

大規模な文ではソースを分割すべき

卒論修論になると数十から百ページ超の長い文章を書くことになるかと思われます。
こういう場合は複数のtexソースに分けてコンパイルするのがおすすめです。

普通のやり方ではmasterのtexファイルをコンパイルしてincludeされている分割ソースをそれぞれコンパイルしていきます。
ただ,これだと一つの章を作った場合にどのようになるのか確認することができません。

docmute パッケージを使う。

以下の記事を参考にしました。
d.hatena.ne.jp


masterファイルのプリアンブルに

\usepackage{docmute}

と書くことで,\documentclass~で始まる文書の外側を無視してくれます。
従って単体でもコンパイルできるように書きつつ,masterからのincludeを阻害しないようにすることができます。

docmute.styの導入

styファイルは以下のURLで取得できます。
ftp://ftp.u-aizu.ac.jp/pub/tex/CTAN/macros/latex/contrib/docmute/docmute.sty

これをディレクトリのpathのある所に置くか,以下の記事を参考に置けば完了です。
styファイルを置く場所・置いた後にすること - 粗大メモ置き場

実用的にはプリアンブルも\includeしてしまう

分割ソースも単体でコンパイルできるようにするには使用するパッケージやマクロなどの宣言をいちいち書き込む必要があります。
これではせっかく項目ごとに分けたのに非常に見づらくなってしまいます,
そこでプリアンブルは 「 preamble.tex 」などのソースにまとめてしまい,以下のように簡略化するのが良さそうです。

12/27訂正:\includeから\inputに変更。
両者のコマンドは改行するしない程度の違いがないはずですが,プリアンブルの挿入では\inputの方が良いようです。

\documentclass[fleqn]{jreport}
\input{preamble}

\begin{document}

本文

\end{document}

とりあえずこれで書き始めてみますか。

実際にぶち当たったバグ

・preamble.texにもろもろのパッケージなどを記述したはずなのに読んでくれるときと読んでくれない時があります。
・masterファイルがTexStudioによって開かれてるか否かで挙動が変わることもあります。謎。
・プリアンブルはinputの方が安定するというかincludeだとどうもうまく行かないようです。参考までに

HDDからSSDのお引っ越し(Windows+Ubuntuのデュアルブート環境)

記事の1週間後の追記ですが,やはりSSDは快適です。起動と復帰速度の向上によりデュアルブート環境ではためらいなしに環境間の移動が可能です。

こないだamazonサイバーマンデーで250GのSSDを5000円強で買ったので
お古のレッツノートの環境をお引っ越しさせます。

ハードとソフトの環境,準備物

  • 交換用SSD 250GB

SSDサムスンが間違いが無いでしょう。以下のものを使いました。

  • 移行用ソフト

www.samsung.com

USBでsataと接続できるケーブルが必要です。


デュアルブートの環境の複製

ネットで調べる限りデュアルブートの環境の複製はかなり面倒です。
sumsung製のSSDを使う限りにおいて移行用ソフトをそのまま使えるので今回は
「windows10を移して」+「Ubuntuの環境をSSDで構築,元のデータを後入れ復元する」
という手順を踏みます。

なお,windows側から全てのパーティションが見えているなら一発でうまくいくかもしれません。誰か試してみてください。

手順1:windows10の移行

  • 移行用ソフト

www.samsung.com

のページから Migration のソフトをダウンロード,展開して起動します。

この際,USBでSSDを繋いでおいてください。
うまく行けば以下のように上段にHDD,下段にSSDが認識された以下のような形になります。

f:id:ossyaritoori:20161220095637p:plain:w350

この後に「開始」ボタンを押すだけで完了です。
ちなみに書き込み容量にもよりますが,半日は覚悟した方がいいかもしれません。
私は128GB分書き込んで5時間弱かかったかと思います。



ソフトの使い方,マニュアルは
http://www.samsung.com/semiconductor/minisite/ssd/downloads/software/Samsung_SSD_Data_Migration_User_Manual_v30_JPN.pdf
にありますので詳しい所はこちらを御覧ください。

パーティション分け

Ubuntu16.04 + Windows10 のデュアルブート環境を構築する - 俺とプログラミング

よくある手法では「ディスク管理」→「ディスク領域の縮小」を用いてUbuntu用のパーティションを作成します。
これが地味に曲者で容量を130Gほどあけても80G程度しか作れないと出ます。
移動禁止ファイルをうまく移動できないのが原因らしいですが,これだと困るのでフリーのソフトウェアを用いました。
HDDのパーティション分割・結合はEaseUS Partition Masterで決まり! | 処分か?再生か?パソコン・スマホの格安運用法!

パーティション分けなくてもなんとかなる

Ubuntuのインストールディスクできれいに分けることは可能みたいです。

私は後ほどこちらの方法を試したのですがこっちの方がインストール作業は楽ちんかもしれません。
ただデータ領域がext4形式でフォーマットされるのでWindows側から見れない構成にはなりやすいです。

今はDropBoxなど共有の方法がたくさんあるのでそこまで悩むほどではないですが。

手順2:Ubuntuのインストール & 移行

Ubuntuはインストールディスクを使って普通に入れます。

2-A : ホームディレクトリをコピーする

試してないので参考文献を参考にしてください。home直下をコピーすればイケルそうです。

2-B : dpkg コマンドでパッケージを復元 ※追記注意あり

dpkg コマンドを用いてパッケージ復元をすることで環境を再構築することにします。


1、現在のUbuntuにインストールされているパッケージ名をファイルに書き出す。
ファイル名はpackageとします

 sudo dpkg --get-selections > package

作成されたファイル、packageをUSBメモリに保存。

2、新PCに同じバージョンのUbuntuをインストール、起動、動作確認。

 sudo apt-get update

USBメモリを挿してpackageファイルに書き出したパッケージ名を読み込ませる。

 sudo dpkg --set-selections < /USBメモリのマウント場所/package

3、読み込んだパッケージのインストー

 sudo apt-get dselect-upgrade


これで大体済んだかな。
>> 追記,インストールの順番がある場合(anacondaの後にtensorflow等)この方法では環境を再現できませんでした。やり方を変える必要があるかもしれません。

個人メモ

なお,tensorflowのインスコに関してはこのサイトがいいです。
Ubuntu Linux に TensorFlow をインストール – Python でデータサイエンス