FC2ブログ
texでキレイな連立方程式を書こう!

こんにちは!最近久々にtexを使っているのですが、場合分けつきの連立方程式を綺麗に書こうと思ってつまづきました笑 今回は場合分けの条件付きの連立方程式を綺麗に書く方法を調べて試したので、それについてまとめます。

今回書きたい式

image

今回texで書きたい式はこちらです!ちなみにこの式はPearson type III 確率密度関数の特別な場合のものです。なんのことでしょう笑 この式を書くためのコードは以下です。


1: p(x)=\left\{

2: \begin{array}{ll}

3: \lambda ^2x {\rm exp}(-\lambda x),&x>0, \\

4: 0,&x\leq 0.

5: \end{array} \right.

6: \end{eqnarray}

重要なのは黄色で強調した部分です。{}の中身をllにするところがポイントです。これにより列が左揃えで2つ作られるので、条件付きで連立方程式が書けます。私はこの部分を l だけにしていたので、タブを表す&を入れてもエラーが出て先に進めませんでした...。

これがわかったのはこちらのページを見たからです!ありがとうございます。参考までに。

スポンサーサイト



テーマ:問題と解決 - ジャンル:コンピュータ

[2014/05/31 14:58] | latex | トラックバック(0) | コメント(0) | page top
Latex ~pdf作成できない!~

こんにちは!レポート作成にはLatexとWinshellを使っている管理人です。
レポート締め切り間際は慌ただしくなることがたまにありますが、そんな忙しい時になんとdviファイルからpdfが作成できないというトラブルが発生してしまいました。
その時はdviを一度xpsに変換してそれを更にpdfに変換するという方法で乗り切ったのですが、さすがに毎回その手順を踏むのはシンドいので、解決策を真剣に探してみて、解決したので以下にまとめていきます。

使用環境及び症状

私が遭遇した症状と、それが発生した環境は以下の通りです。

原因究明

さて、先ほど書いたように、エラーメッセージが出ていないため一体どこから手をつけようかと考えてみました。
dviは作成されて、pdfが作成されないことから、問題はdvipdfmxにあることが容易に想像出来ます。あとは詳細なエラーメッセージをどうやって手に入れるかです。

texコンパイル時に作成される.log ファイルを覗いてみましたが、関係のありそうなログは出力されていません。
そこでdvipdfmxをコマンドラインから起動することを考えてみました。

コマンドラインに以下のように入力します。


dvipdfmx "yourDviFileName.dvi"

yourDviFileNameの部分はご自身のdviファイル名に書き換えてください。これを実行すると以下の様なエラーメッセージが得られました。


1: C:\Documents and Settings\○○○\デスクトップ\check2>dvipdfmx -vv sample.dvi

2: <FONTMAP:psbase14.map><FONTMAP:dvipdfm.map><FONTMAP:cid-x.map>sample.dvi -> sample.pdf

3: DVI Comment: TeX output 2014.01.06:0839

4: <AGL:texglyphlist.txt><AGL:pdfglyphlist.txt><AGL:glyphlist.txt>[1(Image:tiger.ep

5: s[./tiger.eps][PS]

6: pdf_image>> Converting file "./tiger.eps" --> "C:/DOCUME~1/○○○/LOCALS~1/Temp/

7: dvipdfm-x.234052393bb13aa2f57d430326714f32" via:

8: pdf_image>> rungs -q -dNOPAUSE -dBATCH -dEPSCrop -sDEVICE=pdfwrite -dCompatibi

9: lityLevel=%v -dAutoFilterGrayImages=false -dAutoFilterColorImages=false -dGrayIm

10: ageFilter=/FlateEncode -dColorImageFilter=/FlateEncode -dUseFlateCompression=tru

11: e -sOutputFile='%o' -c .setpdfwrite -f '%i' -c quit

12: pdf_image>> ...GPL Ghostscript 9.10: **** Could not open temporary file ''

13: **** Unable to open the initial device, quitting.

14:

15: ** WARNING ** Filtering file via command -->rungs -q -dNOPAUSE -dBATCH -dEPSCrop

16: -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dAutoFilterGrayImages=false -dAutoF

17: ilterColorImages=false -dGrayImageFilter=/FlateEncode -dColorImageFilter=/FlateE

18: ncode -dUseFlateCompression=true -sOutputFile='C:/DOCUME~1/○○○/LOCALS~1/Temp/

19: dvipdfm-x.234052393bb13aa2f57d430326714f32' -c .setpdfwrite -f './tiger.eps' -c

20: quit<-- failed.

21: ** WARNING ** Image format conversion for "./tiger.eps" failed...

22: ,Page:1)

23: ** ERROR ** pdf_ref_obj(): passed invalid object.

24:

25: Output file removed.

ちなみに自分が得た実際のエラーメッセージをコピーし損ねたので、上のエラーメッセージはこちらのページから拝借しました。

このメッセージからghostscriptの実行が上手くいってないということがわかります。(12行目あたりより。)

ここまでわかれば解決策に辿り着けそうです。

解決策

この問題を解決するために以下の手順を行いました。

  • C:\temp というフォルダが無ければ作成する。
  • ユーザー環境変数のTEMP,TMP,TMPDIRにC:\tempを指定する。%USEPROFILE~的な変数が指定されていたらそれと書き換える。

環境変数の変え方について分からない人は、私の以前の記事のPathの部分をTMPとかに読み替えていただければいいと思います。

上記手順を実行したところ、きちんとpdfが作成されるようになりました!
どうもghostscriptはUSERPROFILE以下にあるディレクトリが一時ファイルディレクトリに割り当てられていると、失敗することが多いようです。
これで安心してレポートが書けます笑

今回の問題を解決するにあたって、こちらのページを参考にさせていただきました。ありがとうございます。

テーマ:トラブル - ジャンル:コンピュータ

[2014/03/29 19:37] | latex | トラックバック(0) | コメント(0) | page top
レポートのtodo管理!~Winshell編~

レポートのtodo管理

こんにちは!最近レポートばかり書いていて、大学生気分を満喫しているところです笑
レポートはWinshellを使ってlatexで書くのですが、レポートを書くのを中断するときに、何をやらなきゃいけないのか忘れた!となるときがたまにあります(*_*;
メモか何かに書いておけばいいのですが、せっかくエディタを使っているのですから、eclipseとかのIDEについているようなtodo機能でかっこよくtodo管理したいですよね?(もしかして自分だけ?) というわけで今回は、Winshellにも標準で搭載されているtodoリストの使い方について紹介します!

Winshellでtodoリスト!

Winshellに搭載されているtodoリストは以下の画像に示したタブをクリックすると見れます。

Microsoft PowerPoint - プレゼンテーション1
図1:タスクタブの位置(クリックして拡大)

タスクを追加するには、以下の画像のように%todo と書いて、その後ろにタスクを書いてください。Winshellでは、%より後ろはコメントとして扱われるので、文章自体には現れません。todo追加
図2:todoの追加とtodoリスト(クリックして拡大)

そしてtexファイルをコンパイルしてからタスクタブをクリックすると、図2のように、todoの内容とtodoコメントが入っている行数が表示されます!

まとめ

このようにWinshellのtodo機能を使えば、レポートで付け足さなければいけない文章やその位置をメモしておくことが出来ます。そして各todoはやり終わったら消すと効率的だと思います。皆さんもぜひ試してみて下さい!
それでは!

テーマ:プログラミング - ジャンル:コンピュータ

[2014/01/16 23:49] | latex | トラックバック(0) | コメント(0) | page top
Winshell 補完して!

Winshellへの補完候補の追加

先日の記事でlatexのパッケージの追加の仕方について書きました。私はlatexのエディタにWinshell(本家ページ。英文。少し重いかもしれません。) を使用しています。このWinshellはCtrl+Spaceで入力候補を補完してくれるのですが、新しく追加したパッケージの挿入コマンドなどは補完してくれません(*_*; まぁ当然かもしれませんが笑 それが少し不便に思ったので、補完候補の追加が出来ないか調べて試したところうまくいったので書きたいと思います。

補完候補のxmlファイルを編集する。

補完候補が詰まっているファイルが無いか調べてみたところ、こちらのページに書いてある、C:\Program Files\WinShell 以下にある、AutoCompletionList.xmlをいじればよさそうだということが分かりました。
早速そのファイルを開いてみると、各要素が以下のようなxml構造になっていました。(以下に挙げるのは要素の一例です。)

<ListEntry>
      <Display>\begin{abstract}</Display>
      <Insert>\begin{abstract}#newline##cur##newline#\end{abstract}#newline#</Insert>
      <Image></Image>
</ListEntry>

<ListEntry>というタグが補完候補一つ分を表していることがファイルから読み取れます。

<Display>というタグはWinshell上でCtrl+Spaceを押したときに表示される補完候補の検索結果ウィンドウに表示される文字を表しています。

<Insert>タグは補完候補を選んだ時に実際に補完される文字を表しています。

#newline#は補完時の改行を、#cur#は補完時にカーソルが移動する場所を表しています。

<Image>タグは補完候補ウィンドウに表示されるイメージ(セクション記号とかの補完を思い浮かべていただければいいと思います。)を表していると思うんですが、ファイルを見ただけではいまいちどのように指定すればいいかわかりませんでした(*_*;

これと同じような形式でファイルに自分が追加したい候補をファイルの好きな位置に加えてあげて、Winshellを再起動すると、見事補完候補が追加されました!
これで自分の好きなように補完候補がいじれるようになったので、ますますレポートがはかどります(・ω・)笑

引っかかったところ

補完候補を追加する際に、ファイルの保存権限が無くて新しく作成したファイルを保存できませんでした。これはWinshellの標準インストール設定ではCドライブのProgram Files以下にWinshell用ディレクトリが作成されていることが原因です。このProgramFilesというフォルダには下手にいじると面倒なことになる大事なファイルがたくさん保存されているので、不注意でユーザーが変更を加えてしまわないように、このような処置がとられています。

しかし、今回の場合は目的が分かってやっているので、今回のファイルを開くエディタを管理者権限で実行してください。Windowsの場合はエディタを起動するときに左クリックではなく右クリックをして出てくるメニューから「管理者権限で実行」を選べば出来ます!
なので今回は管理者権限でxmlファイルを開き、自分の追加したい補完候補を書き込んでください!

テーマ:プログラミング - ジャンル:コンピュータ

[2014/01/12 00:50] | latex | トラックバック(0) | コメント(0) | page top
latexでソースコード!

latexでレポートを書くときに、ソースコードを表示したい!

こんにちは!レポートはTex派です!レポートを書いているとなんやかんやプログラムのソースコードを文書に入れなきゃいけないことが出てきます。理系なので笑
先日たまたまソースコードをtex文書に入れなければならないことがあったので、その時のパッケージ導入手順をメモがてらまとめておきます。

listingsとjlistings

latexでソースコードをきれいに出力するためのパッケージとして、listingsというものがあります。(リンク先はCTANのダウンロードページ。英文。latexのパッケージは大体CTANから落とせばいいということを最近知りました。) このlistingsの導入に関して、以下のページを参考にさせていただきました。

http://d.hatena.ne.jp/Kshi_Kshi/20110219/1298117610

上記ページのリンクから、必要なパッケージがダウンロードでき、さらに手順も示されています。ありがとうございます!jlistingsも忘れずに入れましょう!
しかし、上記ページの著者様も引っかかっていたように、latexのインストール環境によっては、パッケージのインストールがうまくいかない場合があります。そこで調べてみたところ、以下のページが、環境を確かめつつインストールする方法の参考になりました。

http://ameblo.jp/masayan24/entry-10360005851.html

私はWindows8.1で行いましたが、コマンドプロンプトから問題なく出来ました!
listingsの具体的な使い方は、以下のページに載っています。
ちなみに\usepackageするときは、listingsのままで大丈夫でした。

http://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings (英文)

まだあまり色の設定方法とか把握していないので、今後使いながらブログに書いていきたいと思います!

それでは!

テーマ:プログラミング - ジャンル:コンピュータ

[2014/01/08 22:02] | latex | トラックバック(0) | コメント(0) | page top
| ホーム |