学生実験 1-1 : LaTeX によるレポート作成(當間)



更新履歴





実験の進め方

内容と達成目標
  • 情報工学実験1,2においてはテーマ毎に1つ以上のテーマが与えられ,テーマ毎にレポート提出が求められる.
  • 今回のテーマ「LaTeXによるレポート作成」では幾つかの課題(Level X)を通して以下の項目を達成することを目標とする.
    • 達成目標1:一般的な書籍・学術論文に見られる数式・図表・目次等を含めた文書を LaTeX を用いて作成することができる.
    • 達成目標2:目的・目標を把握して実験に取り組み,過程・結果・考察を理論的に考え,レポートとして書き上げることが出来る.
  • 注意点:実験では必ずしも全ての手順を示すとは限りません.分からない場合には何らかの方法(先生やTA,周りの学生,先輩,google 先生に聞いたり,自分で試行錯誤してみたり・・)で解決しましょう.その過程を通して自分で学ぶスキルと自己解決するスキルを身につけることも大切です.
  • 工夫:実験で課している課題は最低限のレベルです.各自,気になることがあればチャレンジし,必要に応じてレポートとしてまとめましょう.
実験の進め方
  • テキスト・補助教材:本ページや参考文献参照
  • 作業スタイル:個人作業(1人1レポート).
評価基準
減点方式.主に以下の点に関してチェックを行う. 減点箇所が見あたらない場合には満点となる.

減点項目
  • 表紙に含めるべき情報が欠落している場合.
  • 適切にコマンドを用いていない場合(節・図・表・数式・列挙・参照など)
  • 出力を強引に作成・整形している場合(「\\」による手動改行,全角スペースによる文字間隔補正など).
  • サンプル出力と*大きな*ズレがある場合.
  • 誤字,脱字.
  • 提出期限を過ぎた場合.

その他:大学では一般社会に通用する技術だけでなく,一般常識も学びます.期限を守ることやコピペだけで仕事を済ませないこと,また必要に応じてコミュニケーションを取る事も忘れずにやってください.

課題と提出方法
  • 全ての Level にトライし,レポートとしてまとめよ.
  • 1名1レポート提出.
  • 表紙には以下の項目を記述すること.
    • 課題番号,タイトル,担当教員名
    • 氏名,学籍番号
    • 実験日,提出期限日,提出した日
  • レポートは LaTeX で作成し,印刷物を提出すると共に tex ファイル及び,作成したスクリプト等一式を以下の場所に保存する事.提出方法やフォルダ名は以下の通り.

    以下は ~/jikken1 に提出物を保存している場合の例です. 修正する場合も同じコマンドで構いませんが,アカウント名(j050xx)を間違えないように注意する事! rsync 自体の説明は例えばここを参照してください.

    % cd   (ホームディレクトリに移動)
    % rsync  -auve  ssh \
         ~/jikken1/ \
         j050xx@naha:/Users/teacher/tnal/jikken1-fri/j050xx/
    % rsync  -auve  ssh \
         ~/jikken1/ \
         j050xx@naha:/Users/teacher/tnal/jikken1-tue/j050xx/
    
    上記はコマンドが長いので「\」を用いて改行していますが, 一行にまとめて書いても良いです.

  • 提出期限:次回実験日の開始時刻前までに 705 室へ(4/14のクラスの期限は4/24,4/18のクラスは4/28).

0. 事前準備

  1. X11.appをインストール.
  2. EasyPackageのpkg/ptex-euc-pkg, math/gnuplot, graphics/ImageMagick, graphics/gimpをインストール.

    各アプリケーションの説明は参考文献・サイトを参照.


1. LaTeXによるレポート作成

1.1 LaTeXとは?

レポートや論文等を綺麗に出力するための文書整形ツール(言語)です. C言語やJavaと同様にLaTeXはコンパイラ言語なので,「作成(プログラミング)→コンパイル→出力確認→適宜修正」といった手順で作成します.

1.2 LaTeX を使う利点

Word等のワープロソフトと比較して・・・

1.3 クイック・スタート!

課題:Level 1
以下の手続きの通り,実際に LaTeX を使って文章を作成しなさい.
  1. (準備)今回の実験用のディレクトリを作成してください(以下はサンプルです.各自で使いやすい用に作成してください).
    > mkdir jikken1
    > mkdir jikken1/latex
    > cd jikken1/latex
    
  2. (文章作成)以下の文章を j050xx-1.tex という名前で保存しましょう.各行の意味は下表の通りです.
    \documentclass[a4paper,10pt]{jarticle}
    \begin{document}
    これはてすとです.
    \end{document}
    
  3. (X11)X11.app を起動し,作成した文書を保存したディレクトリへ移動してください.

    X11.appの場所:アプリケーション→ユーティリティ→X11.app
    (Dockへ登録すると便利でしょう)

  4. (コンパイル)各種の tex コマンド(\documentclass など)を文章に適用した出力を生成します.
    > platex j050xx-1.tex
    
  5. (出力確認)実際の見た目を確認します.
    > xdvi j050xx-1.dvi
    
  6. (PDF作成)印刷用,配布用に他の人から閲覧可能な一般的な形式(ここではPDF)に変換します.
    > dvipdfmx j050xx-1.dvi
    

注記1:X11は出力を確認する(xdviを使う)ためだけに使っています. xdvi を使わず,dvipdfmxでPDFを直接作成してから確認する場合には, X11を使わなくても文章を作成することが出来ます(不便ですが).

注記2:上記の例ではコンパイル platex を一度しか実行していませんが, 本来なら複数回実行すべきです.これは,「一度目のコンパイルで文章や 図表を配置し図表番号を確定した後に,二度目のコンパイルで番号を 参照先へ埋め込んだり,目次を作成する」といったプロセスを経るためです. うまく参照できない場合は2回以上コンパイルした後に確認してみてください.

表1:サンプルソースにおける意味解釈

\documentclass[a4paper,10pt]{jarticle}
\begin{document}
これはてすとです.
\end{document}
  1. 用紙設定(A4),文字サイズ(10pt),文書タイプ(jarticle)
  2. 文章の始まり
  3. 本文
  4. 文章の終わり




2.1 LaTeX で文書作成する際の決まり事

詳細は LaTeX Tipsの基礎ゼミレジュメや, 文書整形システム LaTeX 入門 を参照すると良いでしょう. 以下は上記資料からの抜粋で,必要最小限を整理したものです.

  1. LaTexコマンド(命令)

    LaTeXの命令は原則として「“\”で始まり,半角空白で終わる」.

  2. コメントアウト(メモ等出力させたくない箇所を出力させない)

    「半角パーセント“%”から改行までの内容」はコメントアウトされまる.

  3. そのままでは出力されない記号

    以下の記号は,そのまま入力しても出力できない特殊文字である. 出力には見えないが「半角空白」も含まれる. ソースファイル等,見た目通り出力させる場合には, 命令ならば「\verb|###|」や バックスラッシュによるエスケープ(\#),, またはverbatim環境(\begin{verbatim} ... \end{verbatim}) を使うことで可能である.

    <そのままでは出力されない記号>
     , #, $, %, &, _, {, }, <, >, \, |, ^, ~
    

  4. 環境と命令

    LaTeXでは,文書を論理構造もしくは表現構造に分けて作成します. 分けられた構造と,それをLaTeXで出力するために使用する環境・命令 を対応づけたのが以下の図になります.


    図1:論理構造とLaTeX命令・コマンドの対応例

    環境の場合は,以下のように \begin と \end で中身を囲う用にして使います.

    \begin{環境名}
    中身
    \end{環境名}
    

    命令の場合は,以下のように々な形式で使われますので,参考文献に挙げているコマンド一覧等を参考に調べて使用してください.

    \命令
    \命令{引数}
    \命令{引数1}{引数2}{引数3}
    

  5. 空白・改行・段落

    半角空白文字(半角スペース)は, コマンドの終了文字(制御文字)として利用しているため, 出力上では無視されます. また,改行も単体では無視されてしまいますので, 段落を変える場合には「空行(改行だけの行)」を挿入することになります. 実際に試してみてください.


2.2 良く使われる環境の使い方

良く使われる環境(個条書き・数式・図・表)の使い方についてはここを参考にしてください.


課題:Level 2

このサンプルと同様な出力を得る TeX ファイルを作成せよ. ただし,名前・学籍番号・日付を変更すること. また,提出する際には TeX ファイル本体を指定の場所(下記)に置くこと. ソースファイルはファイル名を「アカウント.tex」(例:j05001.tex)とせよ.

提出方法はここを参照.





参考文献・サイト

レポートの書き方
LaTeX関連
tgif / gnuplot関連



用語

エスケープ,エスケープ処理
  • C言語での「printf("\n");」による改行,
  • シェル(tcsh等)で正規表現を用いて「ls *」で全てのファイルを表示させる場合,
など,言語を用いて機械に何らかの指示を行う場合, その指示を効率良く伝えるために制御文字(上記の\や*)を利用します. しかし,ファイル名に\が含まれている場合など,制御文字を「ただの文字(列)」として使用したい事もあります. そのように「次の文字は制御文字ではなくただの文字です」と伝える処理をエスケープと呼びます. このページも参考にどうぞ.