セミナーI
目次
この講義について
- 開講時間: 3年後期火曜4限
- 単位数: 1.0 単位
- 場所: 工学部1号棟3F視聴覚室
講義目標
4年生で研究をスタートさせるために必須となる「コンピュータ」と「材料化 学」の知識を身につける。予習復習を必ず行って講義に参加すること。主体的 な態度で講義に参加することを求めます。疑問に思ったことは自主的に調べ、 教員や先輩に積極的に質問することを心がけてください。
課題をこなせないなど計算機に不向きな学生は、別途実験することにします。
講義予定
スケジュール
- 第01回 環境構築
- 第02回 シェル操作とEmacs
- 第03回 Python演習 基本文法
- 第04回 Python演習 class
- 第05回 Python演習 numpy
- 第06回 Python演習 matplotlib
- 第07回 Python演習 scipy
- 第08回 Python演習 re
- 第09回 Python演習 subprocess
- 第10回 Python演習 pandas
- 第11回 Python演習 データ解析
- 第12回 C言語演習 基本構文1
- 第13回 C言語演習 基本構文2
- 第14回 C言語演習 構造化
成績評価
- 公欠を除いて、3回講義を休むと自動的に不可になります。遅刻欠席の場合は減点されます。
- タイピング速度が規定のレベルに達しないと減点されます。
- 予習を行っている前提で講義を進めます。予習していなかった場合は減点されます。
- 計算機の演習をクリアしないと、計算機の研究テーマを担当できません。
- セミナーIの成績は課題で評価します。
セットアップ
はじめに
本文章は新しく配属された学生向けに実験やシミュレーションで得たデータを 整理してグラフを作成し、論文や発表資料で利用するための必要最低限なコン ピュータの知識についてまとめたものです。研究室では実験やシミュレーショ ンから得られる大量のデータを解析する必要があります。Excel等の一般的な 表計算ソフトでは不十分なため、UNIXを使った解析プログラムの使い方やプロ グラミングを習得する必要があります。コマンド操作などで最初は苦労するか と思いますが、使っているうちにだんだんと慣れてきます。計算機を学習する コツは、「楽する方法を常に探求」することです。研究で必要な単純作業はス クリプト化すれば単純ミスなしに行えますし、毎回行うデータ処理は、プログ ラムを書けばコマンド1行で終わります。せっかく10研に配属されたので無機 化学や物理化学だけではなく計算機を使える人間になって修了してください。
Google Drive
講義で扱うファイルや課題は、Google Driveで配布します。各自、クライアントをインストールして大学アカウントでログインし、PCからGoogle Drive上のファイルにアクセスできるようにします。
https://www.google.com/intl/ja_jp/drive/download/
Windows
図を作ったり論文を書いたりする際には、無駄な視覚効果は動作が遅くなるだ けなので、パフォーマンスを優先して作業を行うよう設定します。
パフォーマンスを優先する
Windows標準の視覚効果を使わないよう設定します。以下のようにたどってパフォーマンス優先に設定してください。
コントロールパネル→システム→詳細情報→システムの詳細設定→パフォーマンス
タスクバーを整理する
タスクバーによくわからないアイコンが並んでいる場合は、整理したほうが良 さそうです。
remapkeyによるキー配列変更 (CtrlとCapsLocksのswap)
unixによるコマンド入力はctrlキーを多用します。ノートパソコンのキーボー ドは、Ctrlキーが左下にあり押し辛いです。remapkeyで左小指の左にあるCaps Lockと左下にあるCtrlキーを入れ替えます。Altキーも多用するのでスペース キーのすぐ左の無変換とAltを交換した方が使いやすいかと思います。 remapkeyを管理者権限で実行して元のキー 配列(ベース)から変更したいキー配列にドラックするとキー配列の変更ができ ます。変更が完了したら保存して再起動するとキー配列が入れ替わっています。 remapkeyのダウンロード
WSL (WindowsでLinux環境を作る)
Windows上でLinux環境を構築します。WSLとLinuxのセットアップは以下のURL
を参照してください。
WSLを利用したLinux環境の構築
MacOS
MacOSはベースがUNIXなので、そのままUNIX環境が使えます。Google Driveの研究室共通/MacOSのReadme.htmlを参照してセットアップしてください。
シェルとEmacs演習
UNIX操作
UNIXはターミナルからコマンドを入力してコンピュータを操作(CUI)します。 GUIと比べて最初は難しいですが、慣れると全ての作業が早くできますし、 コンピュータ操作を簡単にスクリプト化できるので、同じような作業をする 場合に早く行えるようなります。コマンドやファイル名は正確に覚えておく 必要がありません。TABによるコマンド補完や履歴機能を使うと最小で入力 ができます。代表的なコマンド編集の操作は以下のとおりです。emacsとほ とんど同じなので丸覚えしましょう。なお矢印キーでも履歴を辿れますが効 率がわるいので全てCtrlを使うようにしてください。"C-"はCtrlキーを押し ながらという意味です。
TAB コマンドやファイル名の補完。連打で補完候補がでてくる。 C-h カーソルの左を消す C-a カーソルを行頭に移動 C-e カーソルを行末に移動 C-f カーソルを右に移動 C-b カーソルを左に移動 C-k カーソルから行末までカット C-p 履歴を一つ前にたどる C-n 履歴を一つ先にたどる C-y カットしたコマンドの挿入
UNIXコマンド
標準的に利用するコマンドをまとめています。 01unix-command.pdf
UNIX文化は小さいコマンドをパイプ等で組み合わせて利用します。例えばls した結果からhogeを含むファイルを探す場合、以下のようになります。
ls | grep hoge
またディレクトリにいくつファイルがあるか数える場合は、以下のようになります。
ls | wc -l
標準的なコマンドは全て覚える必要がありませんが、manコマンドで必要に応 じて調べる癖をつけてください。manコマンドを利用してもよいですが、大抵 の情報はネット上から得られます。大窪に聞いても教えてあげます。コマンド を知らないばっかりに、無駄な単純作業の繰り返しで時間を浪費することだけ は止めてください。
Emacs (高機能エディタ)
テキストファイルを編集するためのソフトウェアをテキストエディタと呼びま す。Windowsのメモ帳やword pad、有償版では秀丸と使用目的は同じです。 UNIXではviエディタが標準で使えます。Emacsは、高機能過ぎてやや重い面も ありますが、プログラムを書いたり論文を作成したり、メールの読み書きまで 全てのテキスト処理に利用できます。カーソルの移動やコピーペースト等、基 本的なことすべてをキーボードで行えます。キーの操作が独特で最初はとっつ きにくいが、使っているうちに慣れるので挫折しないこと。テキストの種類に よって様々なモードが存在します。
起動
emacs
.bashrcでemacsは以下のような.bashrcで以下のようにalias(別名)をつけています。
alias emacs="emacsclient -nc -a \"\""
emacsデーモンが起動していなかったらemacsデーモンを立ち上げ、すでに emacsデーモンが立ち上がっていたらemacsclientがデーモンに接続します。 タスクマネージャーで確認すれば、emacsデーモンが動いているかどうか確 認できるでしょう。
コマンド
emacsを利用するための必要最低限なコマンドを書いています。emacsは何で もできるエディタで世界中で使われていますが、何でもできる反面、操作が 複雑すぎて難しいと感じる人が多くないようです。ただし慣れるとテキスト 処理のすべてを高速で行うことができます。基本コマンドのチートシートを 参照しながら習得してください。 emacs_reference.pdf
Emacsの生活
Emacs上ですべての作業が完結します。よく使う便利な機能は以下のとおり。
- eperiodic (周期表)
- yalatex (latexによる文章作成)
- lookup (辞書)
- wanderlust (メール)
- text-translate (翻訳)
- ispell (スペルチェック)
- org-mode (スケジュール、プロジェクト管理)
- python-mode (pythonのプログラム作成)
- c-mode (Cのプログラム作成)
