ほげとTeXとそれから私

TeXとかなんとか

Random Walk

こんにちは.

今回は私が作成した,Random Walk(ランダムウォーク)のテキストを公開します.これは私の卒論として作成したのですが,様々な参考書を元に血反吐を吐きながら勉強し,その中で,割愛しすぎてブチギレた,誤植に苦しめられたなどの経験を他の確率論を勉強している仲間には味わってほしくないため,ここに公開します.

内容としては,基本的な確率論,確率過程論,そしてRandom Walkについてですが,途中に加群論についても記載してあります(自由加群,ユニモジュラー行列など).

確率論専門でない人間にも読めるくらい丁寧に証明を書きました.全読者に幸あれ.

以下,ダウンロードリンクもあります.

rw.pdf - Google ドライブ

TeXでプログラミング

こんにちは.

今回はプログラミングをTeXで扱っていこうと思います.私が以前作成した,autocount.styでも使っていますが,TeXでもプログラムを組むことができます.詳しい説明は他のサイトでもありますが,このサイトではなるべく簡単に,例を交えて説明しようと思います.以下,必要な構文を紹介していきます.ちなみに,TeX版とLaTeX版がありますが,LaTeXTeX版を使うことは可能です.

 

・変数の作成

TeXで変数を作成して代入する際,2通りある.

[TeX版:\hogeという変数を作成して1を代入] \newcount\hoge \hoge=1

[LaTeX版:hogeという変数を1を代入して作成する] \setcounter{hoge}{1}

 

数値計算

変数に1を足す(引き算は「-」をつけて負の数にする).

[TeX版:\hogeに足す] \advance\hoge by 1

乗除は,\advanceの部分を,\multiply,\divideにそれぞれ変えるのみ.

[LaTeX版:hogeに足す]\addtocounter{hoge}{1}

と記述する.また,1を足すだけなら

\stepcounter{hoge}

でもよい.

 

グローバル変数

ローカル変数とグローバル変数が何者なのかは各自プログラミングの参考書等で調べてほしい.TeX版でグローバル変数にする際は,\globalをつける.

\global\hoge=1

\global\advance\hoge by 1

など.

 

・文字列化

[TeX版]

数値を文字列として扱う際は,\theを用いる.これを用いると,TeX版の変数とLaTeX版の変数を共存させることができる.以下が,TeX版の\hugaとLaTeX版のhogeを共存させた例である.

\addtocounter{hoge}{\the\huga}

[LaTeX版]

\value{hoge}とすることで文字列化できる.

\addtocounter{hoge}{\value{huga}}

 

・if文

TeXでは,if文が実装されているが,一般的なプログラミング言語と違い,ifひとつでなんでもできるわけではなく,用途によって数種類のものを使い分けなければいけない.例えば,ifnumは,数値の比較に使われるもので,

\ifnum <関係式> <合致したときの命令> \else <不一致時の命令>

で記述できる.ifの中にifを用いるときは以下に例を与えるが,注意点として,ifの終わりには終了を意味する\fiを記述する.

\ifnum \the\hoge=1 サンプル$1$\else{\ifnum \the\hoge=2 サンプル$2$}\elseサンプル$3$}\fi}\fi

この実行結果は,\hogeが1ならサンプル1,2ならサンプル2が,それ以外ならサンプル3が出力される(よくあるプログラミング言語と違って,比較演算子は==でなく,=).

詳しいifの種類に関しては,以下のページに詳しく記載されているため,そちらを参照してほしい.

TeX入門/マクロの作成 - TeX Wiki

 

・補足

新しい関数を定義するとき,\newcommandを使うが,何も記述がないときはあらかじめ指定しておいた値を勝手に代入してくれる機能がある.たとえば,

\newcommand{\hoge}[2][huga]{$#1 と #2$}

とすると,

\hoge[piyo]{piyopiyo} → piyoとpiyopiyo

\hoge{piyopiyo} → hugaとpiyopiyo

となる.この際,[ ]であることに注意.

 

以上,説明でした.私も一部しか知らないため,わかり次第更新していきます.

(2021/12/3更新)

hoge.sty

私が愛用している自作.styファイルをアップします.

パッケージは,autocount,skull,scsnowman,その他一般的なパッケージ(ascmac,amsmath,amsfonts,amsthm,amssymb,bm,fancybox,latexsym)を含んでいるため,\usepackage{hoge}のみの記述だけで済みます.dvipdfmxを使う際は,\documentclass[dvipdfmx]{...}を記述しておくことをオススメします.

drive.google.com

中学生テスト対策問題作成ツール(for TeX)

みなさん,こんにちは.

今回は私が中学生の家庭教師用に作ったソフトをせっかくなので配布します.分野は「比例と反比例の文章題」です.簡単な使い方としては,

①「いくつ」に作成したい問題数を入力

②「何列」に1を入力(他の数字を入力することでtabular環境で使える$$付きのものが出力されるが,文章題なので表示難)

③「答え何列」にarray環境で使うための列数を入力.(表示的に2列が限界感あり)

※ \rmm{}というコマンドを用いているため,必要に応じて

\newcommand{\rmm}[1]{\mathrm{#1}}

を記述しといてください.

ファイルは以下にアップしています.ドライブの都合上,zipで圧縮しています(pythonにてexe化しているため,パソコンにウイルス判定されてはじかれる可能性大いにあり).設定で特別扱いして許可してあげてください.

drive.google.com

汝に幸あれ.(たまにあるバグは許して)

「Bounding Box」の数値に困っているそこのあなた!

全宇宙のみなさん,おはこんばんにちは.今日も元気にハッスル更新(執筆時AM 02:37).

さて今回は皆さん「Bounding Box」どうしてますか,って話です.

私はよくTeXに画像を挿入する際,「\includegraphics」を用いているのですが,この時環境によって「no BoundingBox」とかいう,パソコンがあたかも私をあざ笑うかの如く\hahaha/出してくるエラーに悩まされていました.思い出すだけでも腹が立つ.今回はこれの対処法について述べるぞ.同士よ,喜ぶがいい.

 

まず,そもそも「Bounding Box」ってなんじゃって人のために軽く説明しておきます.あくまでも私は情報系が専門ではないため,マジレスはやめてください.坊,泣いちゃうぞ(千とち...(以下略)).「Bounding Box」とは,画像の実寸値に関わる情報です.記述法としては「bb=a b c d」という感じに4つの数字がスペースを用いて記述されます(bbはBounding Boxの頭文字より使われている).4つの数字の単位は「bp」で,「1 bp = 1/72 インチ」といった感じになっています.TeXはこのbpを用いて画像の大きさを把握し,それを拡大縮小して画像を挿入しています.

まぁこういった感じに「Bounding Box」が大事であるとわかってもらえたとおもうのですが,これを確認するのはちょいと大変なんです.パソコンで画像のプロパティなんかをみたときに,「123×456」みたいにかいてあるのがありますが,これは「bp」ではなく,「px」,日本語ではピクセルという,また別のものなんです.一応これをそのまま使うことも可能なんですが,場合によってはうまくいかないことも.

 

そんなみなさんに朗報です!画像のアドレスを入力するだけで「bb=・・・」を出力してくれるソフトを自作しました,てへぺろ

drive.google.com

ソフトは毎度のように上のリンク内においておきます..zipなんで解凍してください.ちなみにimtobb_win.exeのやつがWindows用で,もう一方のがMacなり多分Linuxでも使えるやつです(Linuxは未検証).使い方としては,このソフトを起動すると,画像ファイルのアドレスを入力するように言われるので,以前の記事に書いた,ドラッグ&ドロップなどを用いて入力してください(もちろん手打ちでも大丈夫よ.C:/User/...みたいなやつのことね).ちなみに,"とか'とかスペースとかはちゃんと無い状態のアドレスじゃないとエラーが出ます.ちゃんと打てると,「bb=・・・」って出力されるので,コピペして「\includegraphics」で使ってやってください.このソフトの一つ難点なところが,Pythonで作ってるんでトロイの木馬みたいな感じでウイルス扱いされてブロックされるんですよ.なんか調べても仕方ないっぽいんで,使う場合は各自でこいつを脅威リストから外してやってください.お手数おかけします.ソフト自体はテストでは大丈夫だったけど万が一誤作動したらごめんなさい(jpgはテスト済).

 

以上,「Bounding Box」の話でした.画像挿入はTeXでは定番だったりするから役に立ったかな?

【注意】一応いろいろやってアップロードはできたのですが,ウイルス認定されちゃいます.使用する場合はどうにか許可してください.悪い人のせいで制限が厳しいなんて嫌になっちゃいますね.

中学理科のまとめ

3年ほど前に塾講師をやるときに自分がとても忘れているもんだから,自分用に作った資料というものが存在します.今回はそれを晒そうと思います.あくまでもTeX初心者のときに作ったものなので,その辺許してちょ.

drive.google.com


このページを見た全中学生に幸あれ.

P.S. 今は小学5年生に算数を教えているため,完成したらその資料もいつか掲載するね.

 

著作権は私にありますが,金銭を伴わない範囲でご自由に使用して大丈夫です.あら優しいのねなんでモテないのかしら(自問自答).