TeXでプレゼン - LaTeX Beamerを使う人のためのTips集

TeXでプレゼン - LaTeX Beamerを使う人のためのTips集

Beamer について

突然ですが,TeXでスライドが作れるってご存知でしたか?
Beamerを使えばできちゃうんです(まあぶっちゃけつらいんですけど).

例えばこちらのスライドはBeamerを使って作っています.

案外綺麗に作れそうでしょ?
PowerPointに飽きたとかあの微妙な操作性にイライラして仕方ないという方は,是非検討してみてはいかがでしょう.

概要

個人的にはBeamerが好きで周りにも勧めているのですが,あれができないこれができないといった声をたまに聞きます.
Beamerは日本語情報が絶妙に揃っていないので,調べようにも調べづらいということでしょう.
特にプレゼンテーションで使用するようなテクニックは通常の文書作成とは少し違いますから,なかなか情報が蓄積していかないように感じましたので,Tipsをまとめていこうと思います.

  • 図や表の絶対座標での配置
  • 数式への注釈づけ
  • 動画の貼り付け
    • ファイルにリンクを張る方法
    • PDFに埋め込む方法

以上をご紹介します.

基本的な使い方についてはほかのサイトやBeamerのドキュメントを参照してください.

続きを読む

PlayOnLinux上のExcel 2010で日本語入力を可能にする

PlayOnLinux上のExcel 2010で日本語入力を可能にする

環境

  • PlayOnLinux 4.2.10 (Wine 1.7.52)
  • fcitx 4.2.9.1 + Mozc

症状

  • PlayOnLinux (Wine) 上で動作している Excel 2010 に日本語入力ができない
    • 候補などは出るが,確定したときに実際に文字が入力されない
  • いろいろなサイトに書いてある以下のようなレジストリ変更を行っても依然として入力できない
    [Software\\Wine\\X11 Driver]
    "InputStyle"="root"
  • fcitx の XIM Frontend アドオンのオプションを変更しても変化がない
  • XMODIFIERS="@im=fcitx" などを実行時につけても変化がない

解決方法

  • LANG="ja_JP.UTF8" を指定して起動する
    • 私の環境のデフォルトのロケールが en_US.UTF8 なのでそのせいかもしれない

PlayOnLinux では次のように設定を行う.
PlayOnLinuxでの設定方法

あわせて,InputStyle レジストリを書き換えておくと便利かもしれない.
これでLinux上で快適に事務書類をやっつけることができるようになった.

参考

Symbolic Math Toolboxでは==演算子で恒等式を評価できない場合がある

Symbolic Math Toolboxでは==演算子で恒等式を評価できない場合がある

現象

if 文に cosh(x)^2 == sinh(x)^2 + 1 を入れても TRUE として評価されないという現象が発生しました.

妙な現象

(x はシンボリック変数です)

解決方法

ドキュメンテーションによると,sym/eq (シンボリック変数に対する == 演算子) は方程式の定義を行うものとして扱われているようです.
要するに,通常の変数に対する == 演算子とは違って,{0, 1} の値を返すものではないのですね.

方程式が恒等式であるかどうかを評価するには,isAlways 関数を使用すれば良いようです.

isAlways関数を使って万事解決

ちなみに simplify 関数でも同様のことができますが,sym/isAlways の中身を見てみると全く別の処理を行っているようです.

追加の検証と所感

試しに syms x y として2つの変数を定義し,x=y として代入を行った後に x==y を評価してみます.
なるほど
すると,上の画像のように方程式 x==yy==y として評価され,isAlways を使わない if 文による判定にもパスしています.
つまりは,if 文中にシンボリック変数の方程式が放り込まれたときには,左辺と右辺がシンボルとして等価かどうかが判定されているのではないかと考えられます.

このような挙動の違いがあるにもかかわらず,何の警告も出ずに if 文中での方程式の使用が許されてしまうのはちょっと微妙なんじゃないかなあと個人的には思います.

いずれにせよ,恒等式を if で評価する場合は isAlways ということで解決できます.
ドキュメントをちゃんと読みましょうということですねー.

Symbolic Math Toolbox について

Symbolic Math Toolbox は MATLAB 上でシンボル計算を可能にするツールボックスで,要するに Mathematica みたいなことができます.
このツールボックスの便利なポイントは,MATLAB の強力な数値計算エンジン・関数群とシンボル計算を組み合わせることで,数式による理論から数値によるシミュレーションや実験までの流れがスムーズに構築できるようになっている点です.
これを使いはじめるまでは,数理モデリングを Mathematica で行ってから導出した状態方程式を MATLAB に写経してシミュレーションを回す,という非常に面倒な流れを踏んでいました.
また,処理した後のシンボリック変数は matファイル に保存できるので,再利用も楽ちんです(Mathematicaはこの辺が弱いような気がします).

マイクロマウスと制御理論 (2)自由度と非ホロノミック拘束

マイクロマウスと制御理論 (2)自由度と非ホロノミック拘束

概要

マイクロマウスと制御理論 の第2回めの記事です.
第1回では,マイクロマウスの典型的な構造である2輪台車の数学モデルの紹介と,壁トレース制御に関する考察を行いました.

マイクロマウスと制御理論 (1)壁トレース制御

2部にわけるということにしていましたが,今回書いてみたところ予想以上に内容が盛り沢山になってしまったため,3部に再編することにします.
今回の記事は,自由度と制御できる変数の数,劣駆動性と非ホロノミック拘束についてを主な内容として書いていきます.
次回,第3回の記事では,絶対運動と相対運動のどちらを制御するか(どの座標系に注目するか)による違いを書きたいと思います.

続きを読む

[rogy Advent Calendar 2015] マイクロマウスと制御理論 (1)壁トレース制御

[rogy Advent Calendar 2015] マイクロマウスと制御理論 (1)壁トレース制御

まえがき

rogy Advent Calendar 2015,20日目は ざくろくんの Dynamorphism 〜 Haskellでも動的計画法がしたい! 〜 でした.
DPなのに再帰的な手法によって計算されるって,よくあるメモ化再帰の計算オーダ改善としてDPが出てくる話の流れに馴染みがある私からすれば「あれ,話が逆なんじゃないかな」と最初思ったのですが,後で詳しく読んでみます.
今回は毛色が変わってロボットの制御に関する話です.

概要

マイクロマウスは,小型ロボットが迷路を走行するスピードを競う競技で,35年以上前から続く長寿大会の一つです.
2015年機体の Xiphosura 4輪のマウス
2014年機体の カブトガニ兄貴 こちらは2輪
マイクロマウスで多く用いられるのは,2輪や4輪の台車型の構造をした車両ロボットで,自動車と同様に真横に動くことができないような数学的に特殊な構造を有しています.
真横に動けないという構造的な制約によって多くの困難が生じるのですが,ほとんどの競技者はこの困難を経験的に獲得した手法によって解決していることが多いように見受けられます.
一方で,このような構造を持つ系に対する制御理論は80年代ごろから盛んに研究されていますが,数学的側面から考察されているものが多数であり,実用面について弱いという指摘がよくなされます.

その中で,今回はマイクロマウスという題材に絞って,どのように制御理論が活用できるかについて実用上の観点から考察したいと思います.
分量が多くなりそうなので,今回は前半をAdvent Calendarの一環として書き,後半を12/26に公開する予定です.

目標

第1回(12/21)

  • 2輪台車の数学モデルについて紹介する
  • 迷路の区画の真ん中を走るための「壁(トレース)制御」について解析する

第2回(12/29)

  • 自由度と制御できる変数の数,劣駆動性と非ホロノミック拘束について解説する
  • 絶対運動と相対運動のどちらを制御するかによる違いを説明する

結論を先に示すと

  • 壁との距離を制御するという考え方では原理的に安定化できない
  • 相対運動のつなぎ合わせで走行軌跡を考えるオーソドックスな手法は,制御理論の観点からもある意味で合理的である

続きを読む

[techaday:0016] 3桁の2進数は少なくとも身につけよう

[techaday:0016] 3桁の2進数は少なくとも身につけよう

2015年ももうすぐおわりますね

はじめに

以前の記事で,2進数は3桁ずつ読めば無理なく10進数への変換が暗算でできるようになるよー,というお話をしました.
[techaday:0006] 2進数は下から3桁ずつ読もう
この記事への反応として,3桁の2進数なら確かに計算すればすぐに出るけど,覚えようという気にならないというお言葉をいただいたので,一言レベルですが8進数との関連に触れながら書こうと思います.

前提知識

  • 2進数とは何かがわかればおっけー

効能

  • とりあえずこれだけ覚えればいろいろできるようになる

続きを読む

[techaday:0015] 覚えておきたいLinuxコマンドの典型的なオプション

[techaday:0015] 覚えておきたいLinuxコマンドの典型的なオプション

例えば gcc -v

はじめに

Linux 大好きな皆さんなら任意の作業をターミナルから離れなくてもできますよね?(ほんとだろうか)
突然そんな無茶ぶりをされた時に重要になるのが,コマンドに付加するオプションに関する知識です.
逆に言うと,オプション1つ知らないだけですごく遠回りをしながら作業をしてしまう可能性もあるわけです.

そんなわけで,今回は典型的なコマンドラインオプションを例を交えながら見ていきましょう.きっと他にも便利なオプションがないか調べたくなりますよ.

え?ターミナルでブラウジングはできない? w3m があるじゃないですか w3m が.

前提知識

  • シェルをちょっと使える
  • コマンドを叩くことに恐怖心があまりない

効能

  • これまでターミナル上で実行することを諦めていたような処理ができるようになるかもしれない
  • コマンドのオプションについて興味を持つようになるかもしれない

続きを読む