74 | 卒業論文の準備
75 | 卒業論文のテンプレートをダウンロードし、リポジトリとして管理、指導教員をコラボレータとして招待する。あらかじめLaTeXのインストール を参照して、LaTeXの環境を整えておくこと。また、ホームディレクトリにgithub
というディレクトリが作られており、その下にリポジトリを作ることを想定しているが、異なるディレクトリ構成をしている場合は適宜読み替えること。
77 | 卒業論文の書き方
78 | 以下のスライドを参照。
79 | 主に数値計算系の卒論の書き方
81 | リポジトリの作成
82 | どこでも良いが、たとえばgithub
ディレクトリにて卒論リポジトリをクローンする。
83 | cd
84 | cd github
85 | git clone https://github.com/kaityo256/graduate_thesis.git
86 | ターミナルで上のディレクトリに移動し、VS Codeでフォルダを開く。
87 |
88 | VS
89 | Codeでthesis.tex
を開き、ビルドが通ることを確認する。次に、指導教員、名前、学籍番号を修正の上でもう一度ビルドする。
90 | ビルドが通ったら、ターミナルで
91 |
92 | を実行し、リポジトリの情報を削除する。その上で、新たにGitリポジトリを作成する。
93 | git init
94 | git add .
95 | git commit -m "Initial commit"
96 | これが卒論のリポジトリとなる。
97 | GitHubへのpush
98 | 次に、卒論リポジトリをGitHubにpushする。GitHub にアクセスし、新しくリポジトリを作成せよ。
100 | 名前は先程設定したディレクトリ名と一致させる。Descriptionは適当でよいが「卒業論文リポジトリ」と書いておくとわかりやすいだろう。また、Privateリポジトリに設定するのを忘れないこと。
101 |
102 |
103 | private
104 |
105 | 準備が整ったら「Crate
106 | repository」をクリックし、現れた3つの選択肢から「…or push an existing
107 | repository from the command
108 | line」の内容をコピペして、ターミナルで実行する。こんな感じになるはず(username
は自分のGitHubアカウント名に変更すること)。
109 | git remote add origin git@github.com:username/graduate_thesis.git
110 | git branch -M main
111 | git push -u origin main
112 | pushしたら、リポジトリの当該ページをリロードして、内容があることを確認しよう。
113 | コラボレータの追加
114 | 卒論リポジトリ(graduate_thesis)の、上のメニューの「Settings」をクリックし、左側に現れた「Collaborators」をクリックする。
115 | すると、「Manage access」の下に「Add people」ボタンが現れるので押す。
116 | 現れた画面の検索画面に指導教員のアカウント(kaityo256)を入れて、現れたアカウントを選び、「Add
117 | kaityo256 to this repository」をクリックして追加する。
118 | すると、教員に招待状が飛び、教員が承諾するとリポジトリのWatchersが二人に増える。
119 |
120 |
121 | watchers
122 |
123 | これで招待は完了である。あとはガンガン卒論を書くだけ。
124 |
125 |
126 |
127 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/happy_writing.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/happy_writing.pdf
--------------------------------------------------------------------------------
/graduate_thesis/slide/happy_writing.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/happy_writing.pptx
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/calc.plt:
--------------------------------------------------------------------------------
1 | set term png
2 | set out "calc_a.png"
3 |
4 | set xlabel "Parameter" font "Arial,20"
5 | set ylabel "Accuracy" font "Arial,20" offset 1.5,0
6 | set y2label "Elapsed Time" font "Ariak,20" offset 1.0,0
7 | set ytics 0.2
8 | set key at 0.95, 0.2
9 | set y2tics
10 | p [0:1] 1-exp(-x/0.2) lw 2 t "Accuracy"\
11 | ,x**2 axis x1y2 lw 2 t "Elapsed Time"\
12 |
13 | set out "calc_b.png"
14 |
15 | p [0:1] 1-exp(-x/0.15) lw 2 t "Accuracy"\
16 | ,1.3*x**2 axis x1y2 lw 2 t "Elapsed Time"
17 |
18 | set out "calc_accuracy.png"
19 | set xlabel "Parameter" font "Arial,20"
20 | set ylabel "Accuracy" font "Arial,20" offset 1.5,0
21 | unset y2label
22 | unset y2tics
23 |
24 | p [0:1] 1-exp(-x/0.2) lw 2 t "X"\
25 | ,1-exp(-x/0.15) lw 2 t "Y"\
26 |
27 |
28 | set out "calc_etime.png"
29 | set xlabel "Parameter" font "Arial,20"
30 | set ylabel "Elapsed Time" font "Arial,20" offset 1.5,0
31 | unset y2label
32 | unset y2tics
33 |
34 | p [0:1] x**2 lw 2 t "X"\
35 | ,1.3*x**2 lw 2 t "Y"
36 |
37 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/calc_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/calc_a.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/calc_accuracy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/calc_accuracy.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/calc_b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/calc_b.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/calc_etime.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/calc_etime.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/compare.dat:
--------------------------------------------------------------------------------
1 | 0.0 1.8 1.8
2 | 0.05 1.9000000000000001 1.893303299153681
3 | 0.1 2.0 2.0
4 | 0.15 2.1 2.1124139231977233
5 | 0.2 2.2 2.2287093850145174
6 | 0.25 2.3 2.3479791131926087
7 | 0.3 2.4000000000000004 2.469673904420343
8 | 0.35 2.5 2.5934231071694884
9 | 0.4 2.6 2.718958683997628
10 | 0.45 2.7 2.846077258715482
11 | 0.5 2.8 2.974618943088019
12 | 0.55 2.9000000000000004 3.104454556490581
13 | 0.6 3.0 3.2354774386215785
14 | 0.65 3.1 3.3675979539922496
15 | 0.7 3.2 3.500739661654694
16 | 0.75 3.3 3.634836561362456
17 | 0.8 3.4000000000000004 3.7698310613518666
18 | 0.85 3.5 3.905672444967877
19 | 0.9 3.6 4.042315691307932
20 | 0.95 3.7 4.179720552879086
21 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/compare.plt:
--------------------------------------------------------------------------------
1 | set term png
2 | set out "compare1.png"
3 | set xtics 0.2
4 | set pointsize 1.5
5 | set key at 0.9,2.5
6 | set xlabel "Parameter" font "Arial,20"
7 | set ylabel "Performance" font "Arial,20" offset 1.5,0
8 | p "compare.dat" u 1:2 pt 6 t "Original", "compare.dat" u 1:3 pt 7 t "Improved"
9 |
10 | set out "compare2.png"
11 | set ylabel "Relative Performance" font "Arial,20" offset 1.5,0
12 | p [0:1] [0:] "compare.dat" u 1:($3/$2) pt 7 , 1.0 w l lt 1 lc 0 t ""
13 |
14 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/compare.py:
--------------------------------------------------------------------------------
1 | with open("compare.dat", "w") as f:
2 | for i in range(20):
3 | x = i/20.0
4 | y1 = 1.8+0.2*(x*10)
5 | y2 = 1.8+0.2*(x*10)**1.1
6 | f.write(f"{x} {y1} {y2}\n")
7 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/compare1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/compare1.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/compare2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/compare2.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/makefile:
--------------------------------------------------------------------------------
1 | all: pressure.pdf temperature.pdf
2 |
3 | %.pdf: %.plt %.dat
4 | gnuplot $<
5 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/pressure.dat:
--------------------------------------------------------------------------------
1 | 0.000000 0.076746
2 | 0.100000 0.153113
3 | 0.200000 0.129370
4 | 0.300000 0.255012
5 | 0.400000 0.342940
6 | 0.500000 0.363159
7 | 0.600000 0.392173
8 | 0.700000 0.485353
9 | 0.800000 0.560002
10 | 0.900000 0.584184
11 | 1.000000 0.600301
12 | 1.100000 0.655430
13 | 1.200000 0.708430
14 | 1.300000 0.770298
15 | 1.400000 0.821017
16 | 1.500000 0.878243
17 | 1.600000 0.938813
18 | 1.700000 0.899709
19 | 1.800000 0.992124
20 | 1.900000 0.957411
21 | 2.000000 0.957770
22 | 2.100000 1.002748
23 | 2.200000 1.030979
24 | 2.300000 0.993238
25 | 2.400000 1.035059
26 | 2.500000 1.079327
27 | 2.600000 1.067774
28 | 2.700000 1.088222
29 | 2.800000 1.014483
30 | 2.900000 1.060700
31 | 3.000000 1.004719
32 | 3.100000 0.977854
33 | 3.200000 0.985009
34 | 3.300000 0.946374
35 | 3.400000 0.934600
36 | 3.500000 0.903904
37 | 3.600000 0.842505
38 | 3.700000 0.785440
39 | 3.800000 0.738538
40 | 3.900000 0.682106
41 | 4.000000 0.628450
42 | 4.100000 0.543530
43 | 4.200000 0.501760
44 | 4.300000 0.456949
45 | 4.400000 0.406471
46 | 4.500000 0.331076
47 | 4.600000 0.287935
48 | 4.700000 0.198031
49 | 4.800000 0.217296
50 | 4.900000 0.109402
51 | 5.000000 0.049208
52 | 5.100000 -0.008406
53 | 5.200000 -0.120247
54 | 5.300000 -0.103480
55 | 5.400000 -0.184503
56 | 5.500000 -0.260423
57 | 5.600000 -0.305795
58 | 5.700000 -0.407264
59 | 5.800000 -0.423474
60 | 5.900000 -0.530573
61 | 6.000000 -0.497032
62 | 6.100000 -0.592853
63 | 6.200000 -0.680692
64 | 6.300000 -0.702482
65 | 6.400000 -0.684862
66 | 6.500000 -0.770748
67 | 6.600000 -0.825998
68 | 6.700000 -0.845308
69 | 6.800000 -0.839664
70 | 6.900000 -0.919335
71 | 7.000000 -0.921051
72 | 7.100000 -0.942356
73 | 7.200000 -0.890375
74 | 7.300000 -0.926596
75 | 7.400000 -0.936562
76 | 7.500000 -0.920437
77 | 7.600000 -0.930854
78 | 7.700000 -0.958842
79 | 7.800000 -0.946813
80 | 7.900000 -0.929041
81 | 8.000000 -0.876022
82 | 8.100000 -0.885424
83 | 8.200000 -0.887395
84 | 8.300000 -0.852686
85 | 8.400000 -0.759463
86 | 8.500000 -0.791867
87 | 8.600000 -0.699003
88 | 8.700000 -0.701994
89 | 8.800000 -0.667582
90 | 8.900000 -0.572355
91 | 9.000000 -0.579868
92 | 9.100000 -0.439644
93 | 9.200000 -0.401292
94 | 9.300000 -0.374946
95 | 9.400000 -0.362705
96 | 9.500000 -0.209403
97 | 9.600000 -0.229497
98 | 9.700000 -0.111866
99 | 9.800000 -0.051495
100 | 9.900000 -0.061715
101 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/pressure.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/pressure.pdf
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/pressure.plt:
--------------------------------------------------------------------------------
1 | set term pdf
2 | set out "pressure.pdf"
3 | set xlabel "t"
4 | set ylabel "P"
5 | p "pressure.dat" pt 6 t "Data"
6 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/temperature.dat:
--------------------------------------------------------------------------------
1 | 0.000000 0.030656
2 | 0.100000 0.226214
3 | 0.200000 0.354588
4 | 0.300000 0.462068
5 | 0.400000 0.506927
6 | 0.500000 0.582236
7 | 0.600000 0.635741
8 | 0.700000 0.691733
9 | 0.800000 0.760633
10 | 0.900000 0.842820
11 | 1.000000 0.799868
12 | 1.100000 0.889887
13 | 1.200000 0.907637
14 | 1.300000 0.884642
15 | 1.400000 0.911289
16 | 1.500000 0.978254
17 | 1.600000 0.975612
18 | 1.700000 0.968580
19 | 1.800000 0.980929
20 | 1.900000 0.973105
21 | 2.000000 0.973630
22 | 2.100000 0.966390
23 | 2.200000 0.982205
24 | 2.300000 1.054615
25 | 2.400000 1.014414
26 | 2.500000 1.009726
27 | 2.600000 1.002803
28 | 2.700000 1.025221
29 | 2.800000 1.048200
30 | 2.900000 1.020860
31 | 3.000000 1.050002
32 | 3.100000 1.073200
33 | 3.200000 1.061927
34 | 3.300000 1.048494
35 | 3.400000 1.052235
36 | 3.500000 1.000904
37 | 3.600000 1.089005
38 | 3.700000 1.093406
39 | 3.800000 1.048212
40 | 3.900000 1.081557
41 | 4.000000 1.030941
42 | 4.100000 1.012604
43 | 4.200000 1.098430
44 | 4.300000 1.008387
45 | 4.400000 1.012908
46 | 4.500000 1.053116
47 | 4.600000 1.018520
48 | 4.700000 1.013750
49 | 4.800000 1.014594
50 | 4.900000 1.043472
51 | 5.000000 1.077015
52 | 5.100000 1.041737
53 | 5.200000 1.053984
54 | 5.300000 1.065342
55 | 5.400000 1.091302
56 | 5.500000 1.075180
57 | 5.600000 1.085479
58 | 5.700000 1.005050
59 | 5.800000 1.004593
60 | 5.900000 1.003951
61 | 6.000000 1.099452
62 | 6.100000 1.015273
63 | 6.200000 1.094934
64 | 6.300000 1.064762
65 | 6.400000 1.036196
66 | 6.500000 1.054861
67 | 6.600000 1.078094
68 | 6.700000 1.020924
69 | 6.800000 1.003881
70 | 6.900000 1.065066
71 | 7.000000 1.090724
72 | 7.100000 1.046184
73 | 7.200000 1.076903
74 | 7.300000 1.082257
75 | 7.400000 1.063614
76 | 7.500000 1.051683
77 | 7.600000 1.029655
78 | 7.700000 1.022601
79 | 7.800000 1.059821
80 | 7.900000 1.006351
81 | 8.000000 1.030099
82 | 8.100000 1.071467
83 | 8.200000 1.046288
84 | 8.300000 1.005401
85 | 8.400000 1.018802
86 | 8.500000 1.066947
87 | 8.600000 1.020674
88 | 8.700000 1.073361
89 | 8.800000 1.041894
90 | 8.900000 1.020906
91 | 9.000000 1.050430
92 | 9.100000 1.017214
93 | 9.200000 1.021574
94 | 9.300000 1.068343
95 | 9.400000 1.023766
96 | 9.500000 1.082745
97 | 9.600000 1.086929
98 | 9.700000 1.046770
99 | 9.800000 1.032597
100 | 9.900000 1.003302
101 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/temperature.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/temperature.pdf
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/temperature.plt:
--------------------------------------------------------------------------------
1 | set term pdf
2 | set out "temperature.pdf"
3 | set xlabel "t"
4 | set ylabel "T"
5 | p "temperature.dat" pt 6 t "Data"
6 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/test.py:
--------------------------------------------------------------------------------
1 | import random
2 | from math import exp,sin, pi
3 |
4 | with open("pressure.dat", "w") as f:
5 | for i in range(100):
6 | x = i * 2 * pi / 100
7 | y = sin(x) + random.random() * 0.1
8 | f.write(f"{i*0.1:02f} {y:04f}\n")
9 |
10 | with open("temperature.dat", "w") as f:
11 | for i in range(100):
12 | x = i * 2 * pi / 100
13 | y = 1.0 - exp(-x/0.4) + random.random() * 0.1
14 | f.write(f"{i*0.1:02f} {y:04f}\n")
15 |
16 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/zuru.dat:
--------------------------------------------------------------------------------
1 | 0.0 10.8 10.8
2 | 0.05 10.9 10.893303299153681
3 | 0.1 11.0 11.0
4 | 0.15 11.100000000000001 11.112413923197725
5 | 0.2 11.200000000000001 11.228709385014518
6 | 0.25 11.3 11.34797911319261
7 | 0.3 11.4 11.469673904420343
8 | 0.35 11.5 11.593423107169489
9 | 0.4 11.600000000000001 11.718958683997629
10 | 0.45 11.700000000000001 11.846077258715482
11 | 0.5 11.8 11.97461894308802
12 | 0.55 11.9 12.104454556490582
13 | 0.6 12.0 12.23547743862158
14 | 0.65 12.100000000000001 12.36759795399225
15 | 0.7 12.200000000000001 12.500739661654695
16 | 0.75 12.3 12.634836561362457
17 | 0.8 12.4 12.769831061351868
18 | 0.85 12.5 12.905672444967877
19 | 0.9 12.600000000000001 13.042315691307932
20 | 0.95 12.700000000000001 13.179720552879086
21 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/zuru.plt:
--------------------------------------------------------------------------------
1 | set term png
2 | set out "zuru1.png"
3 | set xtics 0.2
4 | set pointsize 1.5
5 | set key at 0.9,2.5
6 | set xlabel "Parameter" font "Arial,20"
7 | set out "zuru1.png"
8 | set ylabel "Relative Performance" font "Arial,20" offset 1.5,0
9 | p [:] [:] "zuru.dat" u 1:($3/$2) pt 7 , 1.0 w l lt 1 lc 0 t ""
10 |
11 | set out "zuru2.png"
12 | set ylabel "Relative Performance" font "Arial,20" offset 1.5,0
13 | p [:] [0:] "zuru.dat" u 1:($3/$2) pt 7 , 1.0 w l lt 1 lc 0 t ""
14 |
15 |
16 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/zuru.py:
--------------------------------------------------------------------------------
1 | with open("zuru.dat", "w") as f:
2 | for i in range(20):
3 | x = i/20.0
4 | y1 = 10.8+0.2*(x*10)
5 | y2 = 10.8+0.2*(x*10)**1.1
6 | f.write(f"{x} {y1} {y2}\n")
7 |
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/zuru1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/zuru1.png
--------------------------------------------------------------------------------
/graduate_thesis/slide/sample/zuru2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/graduate_thesis/slide/sample/zuru2.png
--------------------------------------------------------------------------------
/homebrew/README.md:
--------------------------------------------------------------------------------
1 | # Homebrewのインストール
2 |
3 | ## Homebrewとは
4 |
5 | Homebrew(ホームブリュー)とは、主にMacで使われるパッケージ管理システムである。欲しいソフトウェアを簡単にインストールするのに使われる。一般にソフトウェアは別のライブラリに依存するが、パッケージ管理システムはその依存関係を認識して自動的に必要なライブラリもインストールしてくれる。今後、MacはHomebrewで必要なソフトウェアを管理するため、最初にインストールしておこう。
6 |
7 | ## Homebrewのインストール
8 |
9 | もしインストールされていないのなら、まずHomebrewをインストールする。
10 |
11 | まず「ターミナル」を開く。Command+Spaceでスポットライトを開き、Terminal.appを選べば起動する。実行したら、今後良く使うのでDockに追加しておこう。ターミナルが開いたら、以下を実行せよ。
12 |
13 | ```sh
14 | brew
15 | ```
16 |
17 | `zsh: command not found: brew`と言われたらインストールされていない。インストールするには[https://brew.sh/ja](https://brew.sh/ja)の指示に従い、ターミナルで以下のコマンドを実行する(以下のコマンドは変更される可能性があるため、最新版の指示に従うこと)。
18 |
19 | ```sh
20 | /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
21 | ```
22 |
23 | 上記をターミナルにコピペして実行せよ。途中、パスワードが要求されるので入力すること。
24 |
25 | `Press RETURN/ENTER to continue or any other key to abort`と表示されたらエンターキーを押す。Home brewのインストールが終わったら、パスの設定を促すメッセージが出る。
26 |
27 | ```txt
28 | ==> Next steps:
29 | - Run these commands in your terminal to add Homebrew to your PATH:
30 | echo >> /Users/watanabe/.zprofile
31 | echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/watanabe/.zprofile
32 | eval "$(/usr/local/bin/brew shellenv)"
33 | ```
34 |
35 | このうち以下の三行(人によって異なる)を実行しておくこと。
36 |
37 | ```sh
38 | echo >> /Users/watanabe/.zprofile
39 | echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/watanabe/.zprofile
40 | eval "$(/usr/local/bin/brew shellenv)"
41 | ```
42 |
43 | これにより、`brew`にパスが通る。
44 |
45 | もう一度`brew`を実行し、使い方が表示されればインストール成功である。
46 |
47 | ```sh
48 | brew
49 | ```
50 |
51 | ```txt
52 | Example usage:
53 | brew search [TEXT|/REGEX/]
54 | brew info [FORMULA...]
55 | (snip)
56 | Further help:
57 | brew commands
58 | brew help [COMMAND]
59 | man brew
60 | https://docs.brew.sh
61 | ```
62 |
--------------------------------------------------------------------------------
/homebrew/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
74 | Homebrewのインストール
75 | Homebrewとは
76 | Homebrew(ホームブリュー)とは、主にMacで使われるパッケージ管理システムである。欲しいソフトウェアを簡単にインストールするのに使われる。一般にソフトウェアは別のライブラリに依存するが、パッケージ管理システムはその依存関係を認識して自動的に必要なライブラリもインストールしてくれる。今後、MacはHomebrewで必要なソフトウェアを管理するため、最初にインストールしておこう。
77 | Homebrewのインストール
78 | もしインストールされていないのなら、まずHomebrewをインストールする。
79 | まず「ターミナル」を開く。Command+Spaceでスポットライトを開き、Terminal.appを選べば起動する。実行したら、今後良く使うのでDockに追加しておこう。ターミナルが開いたら、以下を実行せよ。
80 |
81 | zsh: command not found: brew
と言われたらインストールされていない。インストールするにはhttps://brew.sh/ja の指示に従い、ターミナルで以下のコマンドを実行する(以下のコマンドは変更される可能性があるため、最新版の指示に従うこと)。
83 | /bin/bash -c " $( curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh) "
84 | 上記をターミナルにコピペして実行せよ。途中、パスワードが要求されるので入力すること。
85 | Press RETURN/ENTER to continue or any other key to abort
と表示されたらエンターキーを押す。Home
86 | brewのインストールが終わったら、パスの設定を促すメッセージが出る。
87 | ==> Next steps:
89 | - Run these commands in your terminal to add Homebrew to your PATH:
90 | echo >> /Users/watanabe/.zprofile
91 | echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/watanabe/.zprofile
92 | eval "$(/usr/local/bin/brew shellenv)"
93 | このうち以下の三行(人によって異なる)を実行しておくこと。
94 | echo >> /Users/watanabe/.zprofile
95 | echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/watanabe/.zprofile
96 | eval " $( /usr/local/bin/brew shellenv) "
97 | これにより、brew
にパスが通る。
98 | もう一度brew
を実行し、使い方が表示されればインストール成功である。
99 |
100 | Example usage:
102 | brew search [TEXT|/REGEX/]
103 | brew info [FORMULA...]
104 | (snip)
105 | Further help:
106 | brew commands
107 | brew help [COMMAND]
108 | man brew
109 | https://docs.brew.sh
110 |
111 |
112 |
113 |
--------------------------------------------------------------------------------
/howtoreview/howtoreview.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/howtoreview/howtoreview.pdf
--------------------------------------------------------------------------------
/howtoreview/howtoreview.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/howtoreview/howtoreview.pptx
--------------------------------------------------------------------------------
/howtoreview/howtosurvey.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/howtoreview/howtosurvey.pdf
--------------------------------------------------------------------------------
/howtoreview/howtosurvey.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/howtoreview/howtosurvey.pptx
--------------------------------------------------------------------------------
/illustrator/README.md:
--------------------------------------------------------------------------------
1 | # Adobe Illustratorの使い方
2 |
3 | Adobe Illustrator(イラストレータ)は、ベクターイメージドローソフトだ。とりあえず「多機能なPowerpointみたいなもの」と思えば良い。理系では、ポスターを作るのに良く使われるが、パンフレットなど、Adobe Illustrator形式(`.ai`)での入稿もあったりするので、簡単な使い方を知っておいて損はない。しかし、イラストレータは非常に多機能であり、そのすべてを説明することはできない。以下では、通常使うにあたって気をつけるべきことと、特にPowerPointとの使用感との違いについて説明する。
4 |
5 | ## ファイルについて
6 |
7 | ### アートボードサイズ
8 |
9 | イラストレータでは、描画する領域を「アートボード」と呼ぶ。最初に、アートボードのサイズなどを決める必要がある。イラストレータを起動し、「ファイル」→「新規」を選ぶと「新規ドキュメント」画面になる。ここでサイズを決めることができる。サイズのプリセットとして「A4」などが現れる。しかし、多くの場合ポスターで使うのはA0、もしくはA1であろう。特に大判プリンタでは「A0ノビ」と呼ばれるサイズが使われることが多い。これはA0にトンボと呼ばれる印をつけるために余白を設けたもので、サイズは幅914mm、高さ1292mmである。「A0ノビ」の紙に「A0」で印刷してしまうと余白が出てしまって後で裁ち落としをする必要があるため、「A0ノビ」の紙には「A0ノビ」で印刷した方がよい。
10 |
11 | というわけで、まずは「A0ノビ」で作成してみよう。「プリセットの詳細」に「ポスター」と記載し、幅914mm、高さ1292mm、裁ち落としは全て0mmで作成しよう。
12 |
13 | すると白い画面が出てくる。この上で様々な作業をするが、まずはファイルを保存しよう。最初に「コンピュータまたはCreative Couldに保存」と出てくるが、コンピュータに保存することにして、「次回から表示しない」をチェックしてから「コンピュータに保存」を選ぶ。
14 |
15 | すると、デフォルトで「ポスター.ai」というファイルになっているはずだ。この`*.ai`という拡張子がAdobe Illustrator形式であり、全ての編集情報を持っている。保存時に「Illustrator オプション」が出てくる。ここはあまり気にせず、デフォルトのままでよい。
16 |
17 | ### PDF出力の注意
18 |
19 | 次に、PDFで保存してみよう。ここでは、例えば印刷屋にPDF入稿することや、大判プリンタにPDFで持っていくことを想定する。「ファイル」の「別名で保存」で、出てきたダイアログから「ファイルの種類」を「Adobe PDF (*.PDF)」にしよう。ここで「Adobe PDFを保存」ダイアログが出てくるが、これをデフォルトのままで保存するとトラブルが起きやすいので、修正が必要だ。
20 |
21 | まず、「一般」のオプションで「Illustratorの編集機能を保持」「サムネールを埋め混み「上位レベルのレイヤーからAcrobatレイヤーを作成」等にチェックがついているが、これらは全て外しておく。
22 |
23 | 次に「圧縮」について、カラー画像やグレースケール画像が「ダウンサンプルしない」になっているはずだ。特に写真を多く含むポスターでは、このままの設定ではファイルサイズが非常に大きくなることがある。適当な手法「ダウンサンプル(バイリニア法)」を選び、ある解像度(ppi)を超える場合に、どこまで落とすかを指定する。これは何度も試して、出来上がりのPDFの解像度が許容範囲か確認するしかない。
24 |
25 | 保存すると「Illustratorの編集機能を保持」をチェックせずに保存すると編集機能が使用できないよ、といったメッセージが出るが気にしなくてよい。
26 |
27 | さて、このまま「PDF」で保存すると、左上にあるファイル名が「ポスター.pdf」になったはずだ。これに気づかないまま続けて修正をしがちなので気を付けたい。修正をするなら再度「ポスター.ai」を開く必要がある。
28 |
29 | 「別名で保存」をすると、拡張子がPDFに変わった後に気づかないまま編集を続けてしまう可能性があるため、PDFを出力する場合は「複製を保存」を選ぶと良い。「複製を保存」した場合は、開いているファイルは`*.ai`ファイルのままなので混乱が起きにくい。
30 |
31 | ### 画像の埋め込み確認
32 |
33 | イラストレータに画像ファイルを入れたい時、ドラッグアンドドロップで入れることが多いだろう。適当な画像をデスクトップに保存し、イラストレータにドロップしてみよう。すると、画像のプロパティに「リンクファイル」と表示される。これはAIファイルには画像の場所のみ保存している状態であり、AIファイル自身には画像ファイルは含まれない。そのままPDFにすると、リンクのままとなるため、印刷時に「画像が見つからない」というエラーとなる。
34 |
35 | これを防ぐには、画像をファイルに「埋め込む」必要がある。画像ファイルをクリックして出てくる「プロパティ」の下の方に「クイック操作」があり、そこで「埋め込み」をすれば埋め込むことができる。
36 |
37 | 多くの画像ファイルを扱うと、埋め込み忘れが生じがちだ。その場合、PDFに保存する前に「ウィンドウ」から「リンク」を選び、「リンクウィンドウ」を表示すると良い。「リンク」に画像一覧が表示されるが、右側に「鎖マーク」がついていたら「外部リンク」状態だ。「リンクウィンドウ」で鎖マークのついた画像を選び、下の「リンクへ移動」ボタンを押すと、アートボードで当該画像が選択状態になる。この「リンク」画面が表示されたまま「画像」の「埋め込み」をしてみよう。鎖マークが消えたはずだ。
38 |
39 | 「PDFに保存する前にリンクを確認する」癖をつけておきたい。
40 |
41 | ## オブジェクト
42 |
43 | イラストレータはベクターイメージドローソフトであり、全てのデータが「線分」で構成されている。この線分の集まりを「パス」と呼ぶ。「オブジェクト」は「パス」の集合で構成されている。線分は、点をつなぐことで構成されている。その点を「アンカーポイント」と呼ぶ。例えば円や長方形はどちらも4つのアンカーポイントで構成されている。
44 |
45 | ### 色と線
46 |
47 | オブジェクトは線分である「パス」から構成されており、それらの「塗り」と「線」を指定することで「塗りつぶし」や「周りの線」の色を指定できる。イラストレータを起動すると左に矢印やペンが書かれたツールバーが表示されるはずだ。まずはそこから「長方形ツール」を選ぼう。
48 |
49 | この状態で、アートボード上でマウスをドラッグすると、インタラクティブに長方形を作ることができる。また、「長方形ツール」が選択された状態でアートボードをクリックすると、幅と高さを入力し、指定のサイズの長方形を作ることができる。
50 |
51 | アートボードに長方形を置いたら、塗りと線の色を変えてみよう。先ほどの長方形が選択された状態でツールバーの「塗りと線」をクリックすると、色を変更できる。ちなみに「白字に赤の斜め線」が「無し」、つまり透明だ。
52 |
53 | 何も選択されていない状態で「塗りと線」の色を修正すると、「次に描画するオブジェクト」の塗りと線の色がそれになる。
54 |
55 | いくつか長方形を描いたら、それらを削除しよう。ツールバーの「選択ツール(V)」を選ぼう。よく使うので、キーボードショートカット「V」を覚えておくと良い。選択ツールになっている状態でクリックしたり、マウスをドラッグすることでオブジェクトを選択できる。その状態でDelキーを押せば削除できる。
56 |
57 | ### アンカーポイントの修正
58 |
59 | オブジェクトが線分でできており、線分の性質がアンカーポイントで決まることを確認するため、円を修正してハートマークを作ってみよう。まずはツールバーから「楕円形ツール」を選ぼう。おそらく最初は「長方形ツール」が表示されているため、そこをクリックで長押しすると「楕円形ツール」が選べる。しかし、キーボードで「L」を入力した方が切り替えが楽だ。ツールバーの選択の切り替えはキー入力の方が楽なので、よく使うものは覚えておくとよい。
60 |
61 | 円を一つ置こう。普通にマウスドラッグすると楕円になるが、「シフトキーを押しながらドラッグ」で円になる。後でハートにするので、塗りつぶしを赤、線を黒にしておこう。
62 |
63 | この状態で「ダイレクト選択ツール(A)」を選ぶ。これは、オブジェクト上のパスやアンカーポイントを選択できるツールだ。カーソルが黒いと全体選択ツール、白いとダイレクト選択ツールである。「A」と「V」で切り替えられるので覚えておきたい。
64 |
65 | ダイレクト選択ツールを選んだ状態で、円の一番したのアンカーポイントを探す。マウスオーバーで「アンカー」と出てくる。クリックすると「アンカーポイント」に「ハンドル」が出てくる。このハンドルがパスの曲率を決める。マウスでハンドルのサイズを0にしよう。円の下が尖るはずだ。さらに、サイドのアンカーポイントのハンドルをまげて、尖りを大きくしよう。
66 |
67 | 次に「アンカーポイントツール(Shift+C)」を選ぶ。そして、円の上部のアンカーポイントを選び、右方向にドラッグすると、ハンドルが伸びる。そのまま右のハンドルの先を右上に引っ張ろう。ハートの右側が出来上がる。次に、一度「ダイレクト選択ツール(A)」を選び、円の上部のアンカーポイントを選択して、左側のハンドルを表示してから、「アンカーポイントツール(Shift+C)」を選択し、左側のハンドルを左上にひっぱればハートの完成だ。概形ができたら、「ダイレクト選択ツール(A)」でハンドルをいじることで形を修正できる。
68 |
69 | ### なげなわツール
70 |
71 | パスはアンカーポイントを結ぶ線分であるため、アンカーポイントをつなぐことで新たなパスを作ることができる。これを利用して、円二つを接続してカプセルっぽい図形を作ってみよう。
72 |
73 | まずは円を二つ、左右に配置しよう。その状態で「ダイレクト選択ツール」にして、円の半分を選択して削除する。お互いに向かい合う半円ができたら「なげなわツール(Q)」を選択し、半円の上の点が両方含まれるように領域をドラッグする。二つのアンカーポイントが選択できたら、「オブジェクト」の「パス」の「連結(Ctrl+J)」を選ぶ。すると、二つのアンカーポイントの間を結ぶパスが出来上がる。同様に下側もパスを接続すると、カプセルの完成である。
74 |
75 | ### ペンツール
76 |
77 | 「ペンツール (P)」を使うと、パスの上にアンカーポイントを増やしたり、何もないところにアンカーポイントを置いたりすることができる。これを利用してパックマンを描画してみよう。
78 |
79 | まず円を描画する。この円は上下左右4つのアンカーポイントで構成されている。円が選択された状態で「ペンツール(P)」にして、円弧の中央をクリックするとアンカーポイントを増やすことができる。その右上の円弧と、右下の円弧の中央あたりにアンカーポイントを増やそう。そして「ダイレクト選択ツール」で「右」のアンカーポイントを左にドラッグすると、唇に丸みを帯びたパックマンができあがる。あとは「ダイレクト選択ツール」でハンドルを調整すればパックマン画像を作ることができる。
80 |
81 | ### パスファインダー
82 |
83 | 複数のオブジェクトを、合体させたり切り抜いたりできる。
84 |
85 | 例えば正方形を作り、半分削除して45度回転させ、それと長方形を重ねて両方選択した状態で、「ウィンドウ」の「パスファインダー」を表示、形状モードから「合体」を選ぶと、矢印の完成だ。
86 |
87 | 他にも「前面のオブジェクトで後ろをクリップする」ことができる。たまに使いたくなるので覚えておくと良い。
88 |
89 | ### 効果
90 |
91 | オブジェクトには様々な効果を載せることができる。よく使うのは「ぼかし」であろう。「スターツール」で星を描画しよう。線は無し、塗りは黄色にする。この状態で「効果」から「ぼかし」「ぼかし(ガウス)」を選ぶとぼやける。他にも効果は多数あるので試してみると良いだろう。
92 |
93 | ## レイヤー
94 |
95 | PowerPointでも「最前面/最背面に移動」などがあったように、オブジェクトには「上下」の重なりがある。この順番を決めるのがレイヤーだ。デフォルトで右側に「レイヤーウィンドウ」がある。アートボードにオブジェクトを作成すると、現在のレイヤーに「サブレイヤー」が作成され、そのサブレイヤーに配置される。このサブレイヤーの順序をマウスで入れ替えることで「重なり順序」を変えることができる。
96 |
97 | レイヤーもしくはサブレイヤー単位で可視化、編集のロックが可能だ。左にある「目」マークは可視化マークであり、クリックすると見えなくなる。背景を一時的に見えなくしたりするのに使う。さらに、ロックするとマウス選択などの対象外となる。やはりこれも背景に使うと便利だ。
98 |
99 | レイヤーはデフォルトで一つだが、いくつでも増やすことができる。ポスターを作る際は、背景などを背景レイヤーとして作成し、ロックしておくと便利だろう。
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
74 | 数値計算用PCセットアップ資料
75 | ガイダンス
76 | Speakerdeckへのリンク。[File]をクリックすると、PDFやパワーポイントファイルがダウンロードできる。
77 |
107 | セットアップ編
108 | 「上から順」にセットアップしていくことを想定しており、下の物は上のセットアップが終わっていることが前提となっているものがある。
109 |
123 | 開発編
124 |
139 | 執筆編
140 |
145 | 古い情報
146 | 以下はWindowsでWSL2を使わなかった時の情報。
147 |
150 | ライセンス
151 | Copyright (C) 2020 - present Hiroshi Watanabe
152 | この文章と絵(pptxファイルを含む)はクリエイティブ・コモンズ 4.0 表示
153 | (CC-BY 4.0) で提供する。
154 |
155 |
156 |
157 |
--------------------------------------------------------------------------------
/lammps/Dockerfile:
--------------------------------------------------------------------------------
1 | from centos:centos7
2 |
3 | COPY vmd-1.9.4a38.bin.LINUXAMD64-CUDA10-OptiX600-RTX-OSPRay170.opengl.tar.gz /vmd/
4 |
5 | RUN yum -y install glx-utils make libXinerama libXi perl \
6 | && cd /vmd \
7 | && tar xvzf vmd-1.9.4a38.bin.LINUXAMD64-CUDA10-OptiX600-RTX-OSPRay170.opengl.tar.gz \
8 | && cd vmd-1.9.4a38 \
9 | && ./configure LINUXAMD64 \
10 | && cd src; make install
11 |
12 | CMD ["vmd"]
13 |
--------------------------------------------------------------------------------
/lammps/fig/folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/folder.png
--------------------------------------------------------------------------------
/lammps/fig/open_vmd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/open_vmd.png
--------------------------------------------------------------------------------
/lammps/fig/pymol_ellipse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/pymol_ellipse.png
--------------------------------------------------------------------------------
/lammps/fig/vmd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_application.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_application.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_cannot_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_cannot_open.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_dialog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_dialog.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_dmg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_dmg.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_open.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_representation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_representation.png
--------------------------------------------------------------------------------
/lammps/fig/vmd_shortcut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/vmd_shortcut.png
--------------------------------------------------------------------------------
/lammps/fig/xquartz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lammps/fig/xquartz.png
--------------------------------------------------------------------------------
/lammps/pymol.md:
--------------------------------------------------------------------------------
1 | 次に、サンプルディレクトリをコピーしよう。
2 |
3 | ```sh
4 | cp -r /usr/local/Cellar/lammps/2020-03-03/share/lammps/examples/ellipse .
5 | ```
6 |
7 | 長いが、タブ補完を駆使すれば入力が楽になるだろう。
8 |
9 | できた`ellipse`ディレクトリに入って、lammpsを実行しよう。
10 |
11 | ```sh
12 | cd ellipse
13 | lmp_serial < in.ellipse.gayberne
14 | ```
15 |
16 | いろいろ表示されて、最後に
17 |
18 | ```txt
19 | Total # of neighbors = 3096
20 | Ave neighs/atom = 7.74
21 | Neighbor list builds = 46
22 | Dangerous builds = 0
23 |
24 | Please see the log.cite file for references relevant to this simulation
25 |
26 | Total wall time: 0:00:01
27 | ```
28 |
29 | といった表示が出れば実行は成功だ。
30 |
31 | ### 入力ファイルの修正
32 |
33 | 次に、入力ファイルを修正しよう。ターミナルで`in.ellipse.gayberne`があるディレクトリがカレントディレクトリになっている状態で、
34 |
35 | ```sh
36 | code in.ellipse.gayberne
37 | ```
38 |
39 | と入力すると、VSCodeで`in.ellipse.gayberne`が開かれるはず。もし`command not found`と言われたら、まずVSCodeを開き、Shift+Command+Pで「コマンドパレット」を開いて「shell」で検索して「シェルコマンド: PAHT内にVS Codeをインストールします (Shell Command: Install code command in PATH)」を選択し、実行する。その後、再度先程の命令を実行すると、VSCodeで`in.ellipse.gayberne`が開かれるはず。
40 |
41 | VSCodeでin.ellipse.gayberneを開いたら、以下の行を探す。
42 |
43 | ```sh
44 | #dump 1 all custom 100 dump.ellipse.gayberne &
45 | # id type x y z c_q[1] c_q[2] c_q[3] c_q[4]
46 | ```
47 |
48 | この二行の行頭の`#`を削除して保存しよう。
49 |
50 | ```sh
51 | dump 1 all custom 100 dump.ellipse.gayberne &
52 | id type x y z c_q[1] c_q[2] c_q[3] c_q[4]
53 | ```
54 |
55 | この状態で、またlammpsを実行しよう。
56 |
57 | ```sh
58 | lmp_serial < in.ellipse.gayberne
59 | ```
60 |
61 | すると、今度は同じディレクトリに`dump.ellipse.gayberne`ができているはず(`ls`で確認しよう)。
62 |
63 | これは原子の起動を保存したファイルで、これを後からPyMolで読み込んで可視化する。
64 |
65 | ### PyMolのインストール
66 |
67 | 本当はVMDを使う予定だったのだが、最新のMacでVMDが動かないことがわかったので、とりあえずPyMolでしのぐことにする。
68 |
69 | [ここ](https://pymol.org/2/)からmacOSのディスクイメージをダウンロードし、PyMolをアプリケーションにコピーしてインストールせよ。
70 |
71 | その後PyMolを起動すると、Activationについて聞いてくるので、とりあえず「Skip Activation」を選ぶ(30日間の試用期間に入る)。
72 |
73 | 次に、LammpsのdumpファイルをPyMolのファイルに変換する。ターミナルで以下のディレクトリに移動せよ。
74 |
75 | ```sh
76 | cd /usr/local/Cellar/lammps/2020-03-03/share/lammps/tools/pymol_asphere/src
77 | ```
78 |
79 | そこで
80 |
81 | ```sh
82 | make
83 | ```
84 |
85 | を実行すること。すると、実行可能ファイルができるので、それをパスが通ったところにシンボリックリンクを作ろう。
86 |
87 | ```sh
88 | cd /usr/local/bin
89 | ln -s /usr/local/Cellar/lammps/2020-03-03/share/lammps/tools/pymol_asphere/bin/asphere_vis
90 | ```
91 |
92 | 次に、色ファイルを設定する。先程、シミュレーションを実行したディレクトリに移動して、`colors.ellipse`ファイルを作成しよう。
93 |
94 | ```ls
95 | cd
96 | cd lammps
97 | cd ellipse
98 | code colors.ellipse
99 | ```
100 |
101 | VSCodeが開き、`colors.ellipse`が新規作成されたはずだ。ファイルの中身は以下のように記入せよ(最後の改行を忘れないこと。全体で3行になる)。
102 |
103 | ```txt
104 | 1 marine 0.7 1
105 | 2 red 1.0 3 1 1
106 |
107 | ```
108 |
109 | 上記を保存したら、ターミナルで以下を実行せよ。
110 |
111 | ```sh
112 | asphere_vis colors.ellipse dump.ellipse.gayberne ellipse.py -r 4 -o
113 | ```
114 |
115 | 以下のように出力されたら成功だ。
116 |
117 | ```txt
118 | Read in 2 atom types from flavor_file.
119 | Wrote 41 frames to output file.
120 | ```
121 |
122 | もし、以下のように「1 atom」しか認識されなかった場合、最後の改行を忘れているので、再度ファイルを修正すること。
123 |
124 | ```txt
125 | Read in 1 atom types from flavor_file.
126 | Wrote 41 frames to output file.
127 | ```
128 |
129 | このスクリプトにより`ellipse.py`が作成されたはずである(`ls`で確認せよ)。
130 |
131 | PyMolの「File」「Run Script」から、先程作成した`ellipse.py`を選んで実行すると、こんな画面が表示されるはずだ。
132 |
133 | 
134 |
135 | この状態で右上にある「Play」をクリックすると、アニメーションが表示されるはずである。
--------------------------------------------------------------------------------
/lammps/vmd-docker.md:
--------------------------------------------------------------------------------
1 | # MacでVMD
2 |
3 | 以前のMacはVMDが対応していなかったのでDocker経由で実行していたが、現在は対応したので以下の情報は不要。
4 |
5 | ## XQuartzのインストール
6 |
7 | まず、XQuartzをインストールしよう。[ここ](https://www.xquartz.org/)から、`XQuartz-2.7.11.dmg`をダウンロード、インストールする。
8 |
9 | XQuartzは「アプリケーション」→「ユーティリティ」にインストールされるので起動する。「xterm」というウィンドウが開けばインストールできてる。
10 |
11 | その後、XQuartzの「環境設定」の「セキュリティ」タブで、「接続を認証」と「ネットワーク・クライアントからの接続を許可」の両方にチェックを入れる(デフォルトで「接続を認証」にはチェックが入っているはず)。
12 |
13 | 
14 |
15 | さらに、ターミナルから
16 |
17 | ```sh
18 | defaults write org.macosforge.xquartz.X11 enable_iglx -bool true
19 | ```
20 |
21 | を実行しておく。以上の変更を適用するためにXQuartzを再起動すること。
22 |
23 | ## Dockerのインストール
24 |
25 | 次に、Dockerをインストールする。[ここ](https://www.docker.com/products/docker-desktop)から「Download for Mac」→「Get Docker」でダウンロードできるのでインストールする。
26 |
27 | インストール後、Dockerを起動する。最初にDocker IDの入力を求められるウィンドウが出るが、無視して消して良い。右上にクジラのような小さいアイコンが表示されたらDockerが起動している。
28 |
29 | Dockerの動作を確認しよう。ターミナルで、
30 |
31 | ```sh
32 | docker ps
33 | ```
34 |
35 | を実行し、
36 |
37 | ```txt
38 | CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
39 | ```
40 |
41 | と表示されたらDockerが起動している。
42 |
43 | ```txt
44 | Error response from daemon: dial unix docker.raw.sock: connect: connection refused
45 | ```
46 |
47 | と表示されたらDockerが起動していないので起動すること。
48 |
49 | ## Dockerイメージの作成
50 |
51 | まず、Dockerイメージ作成用のディレクトリを作成し、そこにDockerfileをダウンロードしよう。
52 |
53 | ```sh
54 | cd
55 | mkdir docker-vmd
56 | cd docker-vmd
57 | wget https://kaityo256.github.io/lab_startup/lammps/Dockerfile
58 | ```
59 |
60 | 次に、Linux版のVMDをダウンロードする。[ここ](https://www.ks.uiuc.edu/Research/vmd/)に行って、「Download (all versions)」をクリックする。
61 |
62 | 次に「Version 1.9.4 LATEST ALPHA (2019-10-17) Platforms:」の「LINUX_64 OpenGL, CUDA, OptiX, OSPRay」を選ぶ。すると、「Registration/Login」画面が現れるので、メールアドレスと、適当なパスワードを入力する。初回登録時には「New User Registration」画面となるので、必要事項を入力の上で「Register」を押す。
63 |
64 | ライセンスに同意することを示すと、ダウンロードが始まる。ダイアログが出たら「Save File」を選ぶこと。ダウンロードが完了したら、ダウンロードしたファイルを、先程作成したディレクトリ`docker-vmd`にコピーする。例えば、「ダウンロード」フォルダにダウンロードされたなら、
65 |
66 | ```sh
67 | cp ~/Downloads/vmd*.tar.gz .
68 | ```
69 |
70 | で現在のディレクトリにコピーされるはずである。
71 |
72 | 現在、`~/docker-vmd`ディレクトリには、以下のDockerファイルとtar.gzファイルの2つのファイルがあるはず。
73 |
74 | ```sh
75 | $ ls
76 | Dockerfile vmd-1.9.4a38.bin.LINUXAMD64-CUDA10-OptiX600-RTX-OSPRay170.opengl.tar.gz
77 | ```
78 |
79 | この状態でDockerイメージをビルドする。
80 |
81 | ```sh
82 | docker build -t vmd .
83 | ```
84 |
85 | 最後に
86 |
87 | ```txt
88 | Successfully tagged vmd:latest
89 | ```
90 |
91 | と表示されたら正しくビルドされている。
92 |
93 | 次に、先程の`melt`ディレクトリに移動して、以下のコマンドを実行する。
94 |
95 | ```sh
96 | cd
97 | cd lammps
98 | cd melt
99 | docker run -e DISPLAY=$(hostname):0 -v ~/.Xauthority:/root/.Xauthority -v $(pwd):/lammps -it vmd
100 | ```
101 |
102 | ここまで正しく実行されていればVMDが起動したはずである。
103 |
104 | ```txt
105 | Can't open display: watanabe-mbp.local:0
106 | ```
107 |
108 | などと言われたらXQuartzが起動していないので起動せよ。
109 |
--------------------------------------------------------------------------------
/lastpass/README.md:
--------------------------------------------------------------------------------
1 | # LastPassと多要素認証
2 |
3 | ## はじめに
4 |
5 | これから、GitHubをはじめとして、MendeleyやGrammerlyなど、いくつかの「アカウント」を管理することになる。この時、パスワードを個別に管理するのは煩わしいし、かといってパスワードの使いまわしをするのはセキュリティ的に問題がある。
6 |
7 | こういう問題の一つの解決法として、「強く守った一つのアカウントに、他のパスワードを記録する」という方法がある。例えば、何かのサイトで「Googleでログイン」や「Twitterでログイン」というのを見たことがあるだろう。これは「Google」や「Twitter」のアカウントは「守られている」ことを仮定して、ユーザ認証をそちらに任せる仕組みだ(詳細については「OAuth」で検索してみよ)。
8 |
9 | 他にも、「パスワードを忘れた」というボタンがついているサイトも多い。このボタンを押すと、登録されているメールアドレスにパスワードの初期化用の手段が贈られてくるが、これは「メールアカウントは守られている」ことを仮定している。
10 |
11 | このように、「あるメインのアカウントは強く守っておき、他のアカウントはメインのアカウントに認証を任せる」方法は有効である。この哲学に従い、複数のパスワードを、一つのパスワードマネージャに管理させよう。
12 |
13 | パスワードマネージャはなんでも良いが、
14 |
15 | * 無料である
16 | * 複数のデバイスから同じデータにアクセスできる(クラウド対応)
17 | * 多要素認証に対応している
18 |
19 | をすべて満たす「LastPass」をおすすめする(他には、1Password等が有名)。もちろん、好きなものを使ってよい。
20 |
21 | パスワードのクラウド対応については、「パスワードデータがネットワークの向こう側に保存される」ことを不安視する人もいるかもしれない。これについては、「クラウドからパスワードが流出する」リスクと、「パスワードマネージャを使わないことで、パスワードを忘れたり、つい使いまわしたりしてしまうリスク」を比較し、どちらを重視するか、各自で検討して欲しい。以下、パスワードマネージャとしてLastPassを使った場合、多要素認証導入までの方法を紹介する。
22 |
23 | ## LastPassのインストール
24 |
25 | LastPassはブラウザの拡張として使うタイプのパスワードマネージャであるので、普段使うブラウザでアクセスしよう。だいたいのブラウザにはLastPass拡張が用意されていると思うが、特に希望がなければGoogle Chromeを推奨する。
26 |
27 | まず、[https://www.lastpass.com/](https://www.lastpass.com/)に行って、「Get LastPass Free」をクリックしよう。
28 |
29 | 
30 |
31 | メールアドレス(Email)がアカウント名となる。普段使うメールアドレス(例えばGmail)を設定すること。
32 |
33 | マスターパスワードは、最も重要なパスワードとなるので、強いパスワードにすること。LastPassは
34 |
35 | * 12文字以上
36 | * 数字を一つ以上含む
37 | * 大文字小文字が混ざる
38 | * メールアドレスにしてはならない
39 |
40 | ことを求めており、記号を入れることを必須にしていない。JPCERTも[記号を含めて短い、パスワードが長い方が強度に寄与する](https://www.jpcert.or.jp/pr/stop-password.html)という見解を打ち出している。とりあえず12文字あれば良いだろう。「パスワード生成」などで検索して、適当なサイトでパスワードを作ってから、紙などにメモしておこう(なくさないように)。もしくは、pwgenを使うのも良い。
41 |
42 | ```sh
43 | brew install pwgen #Macの場合
44 | sudo apt install -y pwgen
45 | ```
46 |
47 | でインストールし、
48 |
49 | ```sh
50 | pwgen -y 12
51 | ```
52 |
53 | などとしよう。Reminderは、パスワードを忘れた時のヒントなので、入力しなくてかまわない。
54 |
55 | 無事にアカウントが作成されたら「Install LastPass」をクリックして、ブラウザの拡張機能をインストールしよう。Google Chromeならchrome ウェブストアが表示されるはずなので、「拡張機能の追加」をクリックしてブラウザに追加する。他のブラウザでも同様。
56 |
57 | 正しくインストールされたら、ブラウザの右上にLastPassの黒いアイコンが表示されるはずである。
58 |
59 | 
60 |
61 | この黒いアイコンをクリックすると、ログイン画面となるので、先ほど設定したメールとマスターパスワードでログインしよう。
62 |
63 | 
64 |
65 | ログインに成功すると、アイコンが赤くなる。
66 |
67 | 
68 |
69 | 今後、LastPassにログインした状態で何かのサイトにログインすると、LastPassに追加するか聞かれるので、その時に「Add」を選ぶとLastPassがアカウント名とパスワードを覚えていく。他にもいろいろ便利な機能があるが、それについてはおいおい覚えていくと良いだろう。
70 |
71 | ## 多要素認証
72 |
73 | ### 二段階認証と多要素認証
74 |
75 | パスワードマネージャのアカウントは、他の全てのパスワードを管理する最も重要なアカウントであるから、きちんと守ってやらなければならない。その時に使うのが多要素認証である。
76 |
77 | アカウントとパスワードだけの認証では心もとないので、もう一つ何か認証の要素を追加しよう、というのは自然な発想である。
78 |
79 | この時、アカウントとパスワードの他に、もう一つ何か知識(例えば生年月日)を求める方法を「二段階認証」と呼ぶ。二段階認証は面倒なわりにセキュリティの向上はあまり見込めない(……のだが、銀行のウェブサイトなどで採用例がある)。
80 |
81 | それに対して、多要素認証とは、「アカウントとパスワード」とは質的に異なるものを追加することで認証をセキュアにしよう、という方法論である。
82 |
83 | 多要素認証には三つの要素がある。
84 |
85 | * 知識要素 (What you know) 「あなたしか知らない情報」パスワードや「秘密の質問」などがこれにあたる
86 | * 所持要素 (What you have)「あなたしか持っていない物」スマホを使ったワンタイムパスワードなどがこれにあたる
87 | * 生体要素 (What you are) 「あなた自身」指紋認証、静脈認証、顔認証などがこれにあたる
88 |
89 | 例えばパスワードの他に「秘密の質問」を使った認証は、どちらも「知識要素」を使っているので二段階認証だが、多要素認証ではない。
90 |
91 | それに対して、パスワードの他にスマホを使った認証は、「知識要素」「所持要素」の二つを使っているので多要素認証となる。
92 |
93 | 以下ではスマホを使った多要素認証を導入する。
94 |
95 | ### Google Authenticator
96 |
97 | まず、スマホに「Google Authenticator」を導入しよう。iPhoneならApple Store、AndroidならPlay Storeで「Google Authenticator」で検索することで見つかるだろう。
98 |
99 | 
100 |
101 | まずこれをインストールしよう。
102 |
103 | 次に、LastPassで多要素認証を有効にする。
104 |
105 | まず、LastPassにログインし、「Vault」を選ぶ(Vaultとは金庫室という意味である)。
106 |
107 | 左のメニューから「Account Settings」を選ぶ。上のタブから「Multifactor Options」を選ぶ。
108 |
109 | 一覧から「Google Authenticator」の列の右の鉛筆マークをクリックする。その後、指示に従うと、二次元コードが出てくるはずである。
110 |
111 | この状態でスマホを取り出し、Google Authenticatorを起動する。右下に「+」マークをクリックして「バーコードをスキャン」を選ぶと撮影モードになるので、表示されている二次元コードを映すことで追加できる。名前は「LastPass」とかにしておこう。
112 |
113 | 以後、LastPassにログインしようとすると、パスワード認証の他にGoogle Authenticatorによる認証が要求される。Google Authenticatorを起動すると、先ほど名前をつけて保存した「LastPass」のところに6桁の数字が表示されるので、これを入力しよう。
114 |
115 | 
116 |
117 | この数字は一分毎に変わる、ワンタイムパスワードと呼ばれるものになっている。
118 |
119 | パスワードマネージャを使うかどうかは個人の自由だが、大事なアカウントを多要素認証で守るのは必須である。今後、GitHubアカウントを作成するが、これも多要素認証で守ること。
120 |
--------------------------------------------------------------------------------
/lastpass/fig/create_account.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/create_account.png
--------------------------------------------------------------------------------
/lastpass/fig/google_authenticator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/google_authenticator.png
--------------------------------------------------------------------------------
/lastpass/fig/google_number.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/google_number.png
--------------------------------------------------------------------------------
/lastpass/fig/lastpass_after_login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/lastpass_after_login.png
--------------------------------------------------------------------------------
/lastpass/fig/lastpass_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/lastpass_icon.png
--------------------------------------------------------------------------------
/lastpass/fig/lastpass_login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/lastpass/fig/lastpass_login.png
--------------------------------------------------------------------------------
/lastpass/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
74 | LastPassと多要素認証
75 | はじめに
76 | これから、GitHubをはじめとして、MendeleyやGrammerlyなど、いくつかの「アカウント」を管理することになる。この時、パスワードを個別に管理するのは煩わしいし、かといってパスワードの使いまわしをするのはセキュリティ的に問題がある。
77 | こういう問題の一つの解決法として、「強く守った一つのアカウントに、他のパスワードを記録する」という方法がある。例えば、何かのサイトで「Googleでログイン」や「Twitterでログイン」というのを見たことがあるだろう。これは「Google」や「Twitter」のアカウントは「守られている」ことを仮定して、ユーザ認証をそちらに任せる仕組みだ(詳細については「OAuth」で検索してみよ)。
78 | 他にも、「パスワードを忘れた」というボタンがついているサイトも多い。このボタンを押すと、登録されているメールアドレスにパスワードの初期化用の手段が贈られてくるが、これは「メールアカウントは守られている」ことを仮定している。
79 | このように、「あるメインのアカウントは強く守っておき、他のアカウントはメインのアカウントに認証を任せる」方法は有効である。この哲学に従い、複数のパスワードを、一つのパスワードマネージャに管理させよう。
80 | パスワードマネージャはなんでも良いが、
81 |
82 | 無料である
83 | 複数のデバイスから同じデータにアクセスできる(クラウド対応)
84 | 多要素認証に対応している
85 |
86 | をすべて満たす「LastPass」をおすすめする(他には、1Password等が有名)。もちろん、好きなものを使ってよい。
87 | パスワードのクラウド対応については、「パスワードデータがネットワークの向こう側に保存される」ことを不安視する人もいるかもしれない。これについては、「クラウドからパスワードが流出する」リスクと、「パスワードマネージャを使わないことで、パスワードを忘れたり、つい使いまわしたりしてしまうリスク」を比較し、どちらを重視するか、各自で検討して欲しい。以下、パスワードマネージャとしてLastPassを使った場合、多要素認証導入までの方法を紹介する。
88 | LastPassのインストール
89 | LastPassはブラウザの拡張として使うタイプのパスワードマネージャであるので、普段使うブラウザでアクセスしよう。だいたいのブラウザにはLastPass拡張が用意されていると思うが、特に希望がなければGoogle
90 | Chromeを推奨する。
91 | まず、https://www.lastpass.com/ に行って、「Get
93 | LastPass Free」をクリックしよう。
94 |
95 |
96 | アカウント作成
97 |
98 | メールアドレス(Email)がアカウント名となる。普段使うメールアドレス(例えばGmail)を設定すること。
99 | マスターパスワードは、最も重要なパスワードとなるので、強いパスワードにすること。LastPassは
100 |
101 | 12文字以上
102 | 数字を一つ以上含む
103 | 大文字小文字が混ざる
104 | メールアドレスにしてはならない
105 |
106 | ことを求めており、記号を入れることを必須にしていない。JPCERTも記号を含めて短い、パスワードが長い方が強度に寄与する という見解を打ち出している。とりあえず12文字あれば良いだろう。「パスワード生成」などで検索して、適当なサイトでパスワードを作ってから、紙などにメモしておこう(なくさないように)。もしくは、pwgenを使うのも良い。
108 | brew install pwgen #Macの場合
109 | sudo apt install -y pwgen
110 | でインストールし、
111 |
112 | などとしよう。Reminderは、パスワードを忘れた時のヒントなので、入力しなくてかまわない。
113 | 無事にアカウントが作成されたら「Install
114 | LastPass」をクリックして、ブラウザの拡張機能をインストールしよう。Google
115 | Chromeならchrome
116 | ウェブストアが表示されるはずなので、「拡張機能の追加」をクリックしてブラウザに追加する。他のブラウザでも同様。
117 | 正しくインストールされたら、ブラウザの右上にLastPassの黒いアイコンが表示されるはずである。
118 |
119 |
120 | LastPassのアイコン
121 |
122 | この黒いアイコンをクリックすると、ログイン画面となるので、先ほど設定したメールとマスターパスワードでログインしよう。
123 |
124 |
125 | ログイン画面
126 |
127 | ログインに成功すると、アイコンが赤くなる。
128 |
129 |
130 | ログイン後のアイコン
131 |
132 | 今後、LastPassにログインした状態で何かのサイトにログインすると、LastPassに追加するか聞かれるので、その時に「Add」を選ぶとLastPassがアカウント名とパスワードを覚えていく。他にもいろいろ便利な機能があるが、それについてはおいおい覚えていくと良いだろう。
133 | 多要素認証
134 | 二段階認証と多要素認証
135 | パスワードマネージャのアカウントは、他の全てのパスワードを管理する最も重要なアカウントであるから、きちんと守ってやらなければならない。その時に使うのが多要素認証である。
136 | アカウントとパスワードだけの認証では心もとないので、もう一つ何か認証の要素を追加しよう、というのは自然な発想である。
137 | この時、アカウントとパスワードの他に、もう一つ何か知識(例えば生年月日)を求める方法を「二段階認証」と呼ぶ。二段階認証は面倒なわりにセキュリティの向上はあまり見込めない(……のだが、銀行のウェブサイトなどで採用例がある)。
138 | それに対して、多要素認証とは、「アカウントとパスワード」とは質的に異なるものを追加することで認証をセキュアにしよう、という方法論である。
139 | 多要素認証には三つの要素がある。
140 |
141 | 知識要素 (What you know)
142 | 「あなたしか知らない情報」パスワードや「秘密の質問」などがこれにあたる
143 | 所持要素 (What you
144 | have)「あなたしか持っていない物」スマホを使ったワンタイムパスワードなどがこれにあたる
145 | 生体要素 (What you
146 | are) 「あなた自身」指紋認証、静脈認証、顔認証などがこれにあたる
147 |
148 | 例えばパスワードの他に「秘密の質問」を使った認証は、どちらも「知識要素」を使っているので二段階認証だが、多要素認証ではない。
149 | それに対して、パスワードの他にスマホを使った認証は、「知識要素」「所持要素」の二つを使っているので多要素認証となる。
150 | 以下ではスマホを使った多要素認証を導入する。
151 | Google Authenticator
152 | まず、スマホに「Google Authenticator」を導入しよう。iPhoneならApple
153 | Store、AndroidならPlay Storeで「Google
154 | Authenticator」で検索することで見つかるだろう。
155 |
156 |
157 | Google Authenticator
158 |
159 | まずこれをインストールしよう。
160 | 次に、LastPassで多要素認証を有効にする。
161 | まず、LastPassにログインし、「Vault」を選ぶ(Vaultとは金庫室という意味である)。
162 | 左のメニューから「Account Settings」を選ぶ。上のタブから「Multifactor
163 | Options」を選ぶ。
164 | 一覧から「Google
165 | Authenticator」の列の右の鉛筆マークをクリックする。その後、指示に従うと、二次元コードが出てくるはずである。
166 | この状態でスマホを取り出し、Google
167 | Authenticatorを起動する。右下に「+」マークをクリックして「バーコードをスキャン」を選ぶと撮影モードになるので、表示されている二次元コードを映すことで追加できる。名前は「LastPass」とかにしておこう。
168 | 以後、LastPassにログインしようとすると、パスワード認証の他にGoogle
169 | Authenticatorによる認証が要求される。Google
170 | Authenticatorを起動すると、先ほど名前をつけて保存した「LastPass」のところに6桁の数字が表示されるので、これを入力しよう。
171 |
172 |
173 | Google Authenticator
174 |
175 | この数字は一分毎に変わる、ワンタイムパスワードと呼ばれるものになっている。
176 | パスワードマネージャを使うかどうかは個人の自由だが、大事なアカウントを多要素認証で守るのは必須である。今後、GitHubアカウントを作成するが、これも多要素認証で守ること。
177 |
178 |
179 |
180 |
--------------------------------------------------------------------------------
/latex/fig/autobuild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/autobuild.png
--------------------------------------------------------------------------------
/latex/fig/build_project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/build_project.png
--------------------------------------------------------------------------------
/latex/fig/cleanup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/cleanup.png
--------------------------------------------------------------------------------
/latex/fig/install1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/install1.png
--------------------------------------------------------------------------------
/latex/fig/install2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/install2.png
--------------------------------------------------------------------------------
/latex/fig/install3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/install3.png
--------------------------------------------------------------------------------
/latex/fig/install_win.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/install_win.png
--------------------------------------------------------------------------------
/latex/fig/latex_tools.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/latex_tools.png
--------------------------------------------------------------------------------
/latex/fig/latex_workshop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/latex_workshop.png
--------------------------------------------------------------------------------
/latex/fig/terminate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/terminate.png
--------------------------------------------------------------------------------
/latex/fig/test_pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/test_pdf.png
--------------------------------------------------------------------------------
/latex/fig/testj_pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/latex/fig/testj_pdf.png
--------------------------------------------------------------------------------
/latex/test.py:
--------------------------------------------------------------------------------
1 | import numpy as np
2 | import matplotlib
3 | matplotlib.use('Agg')
4 | import matplotlib.pyplot as plt
5 |
6 |
7 | x = np.arange(0, 2*np.pi, 2*np.pi*0.01)
8 | y = np.sin(x)
9 |
10 | plt.plot(x,y)
11 | plt.savefig("sin.pdf")
12 |
--------------------------------------------------------------------------------
/log.md:
--------------------------------------------------------------------------------
1 | # ハンズオンログ
2 |
3 | ## 2025年度
4 |
5 | * 3/13 論文の読み方、探し方
6 | * 3/20 Vimハンズオン
7 | * 3/27 SSHハンズオン
8 | * 4/2 Dockerハンズオン
9 | * 4/10 スパコンハンズオン
10 | * 4/17 gnuplotハンズオン
11 | * 4/24 GNU makeハンズオン
12 | * 5/1 MarkdownとLaTeX記法
13 | * 5/8 LAMMPSとVMDハンズオン
14 | * 5/15 ParaViewハンズオン
15 | * 5/22 Adobe Illustratorハンズオン
16 | * 5/29 バッチシステムの使い方
17 | * LaTeXハンズオン
18 | * 卒論執筆ハンズオン
19 |
20 | ## 2024年度
21 |
22 | * 3/7 論文の読み方、探し方
23 | * 3/14 Vimハンズオン
24 | * 3/21 SSHハンズオン
25 | * 4/4 Dockerハンズオン
26 | * 4/11 スパコンハンズオン
27 | * 4/18 gnuplotハンズオン
28 | * 4/25 LastPassと多要素認証(GitHubも)
29 | * 5/9 GNU make
30 | * 5/16 ParaViewハンズオン
31 | * 5/23 バッチシステムの使い方
32 | * 5/30 MarkdownとLaTeX記法ハンズオン
33 | * 11/28 卒論執筆ハンズオン (LaTeXハンズオンはやらなかった)
34 |
35 | ## 2023年度
36 |
37 | * 2/16 論文の読み方、探し方
38 | * 3/2 Vimハンズオン
39 | * 3/9 Dockerハンズオン
40 | * 3/16 gnuplot ハンズオン
41 | * 3/30 MarkdownとLaTeX記法ハンズオン
42 | * 4/6 Gitハンズオン
43 | * 4/13 LastPassと多要素認証
44 | * 4/20 LAMMPSとVMDのインストール
45 | * 4/27 機械学習ハンズオン (TensorFlowでFashion-MNISTを学習させてウェブで読み込む)
46 | * 5/11 VSCode + Remote+SSH
47 | * 5/18 GNU make
48 | * 6/1 GitHub+LAMMPS (衝突シミュレーション)
49 | * 6/22 バッチシステムの使い方
50 | * 6/29 ParaViewハンズオン
51 | * 11/15 卒論執筆ハンズオン
52 |
53 |
54 | ## 2022年度
55 |
56 | * 2/7 論文の読み方、探し方
57 | * 2/21 Vimハンズオン
58 | * 2/28 Dockerハンズオン
59 | * 事前にSSH公開鍵の作成と研究室サーバへの接続テストを実施
60 | * 3/7 gnuplotハンズオン
61 | * 事前にX Window SystemのインストールとサーバからXが飛ぶ動作確認
62 | * 3/14 MarkdownとLaTeX記法ハンズオン
63 | * 事前にVSCodeのインストールとPython環境のセットアップ
64 | * 3/21 Gitハンズオン
65 | * 事前にbrewとaptでgitのみインストールしておいてもらう
66 | * 4/7 物性研スパコンハンズオン
67 | * 4/11 LastPassのインストールと二段階認証
68 | * 4/18 GitHubの説明と、リポジトリの作成とclone/push
69 | * 4/25 GitHubのissueとKanban
70 | * 5/2 LAMMPSとVMDのインストール
71 | * 5/9 GitHubのフォークとLAMMPS
72 | * 5/16 機械学習ハンズオン (TensorFlowでFashion-MNISTを学習させてウェブで読み込む)
73 | * 5/23 GNU makeハンズオン
74 | * 6/6 PBS ハンズオン (バッチシステム)
75 | * 6/13 ParaViewハンズオン
76 | * 11/15 卒論ハンズオン
77 | * 12月23日 手法と結果を書く
78 | * 12月19日 タイトル研究室内締切
79 | * 1月中旬 卒論初稿
80 |
81 | ## 2021年度
82 |
83 | * 3/4 論文の読み方、探し方
84 | * 3/11 Vimハンズオン
85 | * (事前にXを飛ばせるようにしておいた?)
86 | * (PythonとVSCodeのハンズオンは飛ばした?)
87 | * 3/18 Dockerハンズオン
88 | * 3/25 gnuplotハンズオン
89 | * 4/1 Gitハンズオン
90 | * 4/8 GitHubハンズオン
91 | * 4/15 LammpsとVMDハンズオン
92 | * 4/22 MarkdownとLaTeX記法ハンズオン
93 | * 5/5 物性研スパコンハンズオン
94 | * 5/12 GNU makeハンズオン
95 | * 5/20 PBS ハンズオン (バッチシステム)
96 | * 5/27 ParaViewハンズオン
97 | * 6/3 機械学習ハンズオン (TensorFlowでFashion-MNISTを学習させてウェブで読み込む)
98 |
--------------------------------------------------------------------------------
/make/fig/gnumake.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/make/fig/gnumake.pdf
--------------------------------------------------------------------------------
/make/fig/gnumake.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/make/fig/gnumake.pptx
--------------------------------------------------------------------------------
/mdtex/fig/outline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/mdtex/fig/outline.png
--------------------------------------------------------------------------------
/mdtex/fig/tex_preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/mdtex/fig/tex_preview.png
--------------------------------------------------------------------------------
/paraview/fig/2d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/2d.png
--------------------------------------------------------------------------------
/paraview/fig/2pz_default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/2pz_default.png
--------------------------------------------------------------------------------
/paraview/fig/2pz_edited.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/2pz_edited.png
--------------------------------------------------------------------------------
/paraview/fig/3dz2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/3dz2.png
--------------------------------------------------------------------------------
/paraview/fig/3dzx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/3dzx.png
--------------------------------------------------------------------------------
/paraview/fig/color_changed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/color_changed.png
--------------------------------------------------------------------------------
/paraview/fig/color_edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/color_edit.png
--------------------------------------------------------------------------------
/paraview/fig/color_picker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/color_picker.png
--------------------------------------------------------------------------------
/paraview/fig/colormap_editor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/colormap_editor.png
--------------------------------------------------------------------------------
/paraview/fig/delaunay2d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/delaunay2d.png
--------------------------------------------------------------------------------
/paraview/fig/filter_search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/filter_search.png
--------------------------------------------------------------------------------
/paraview/fig/filter_warp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/filter_warp.png
--------------------------------------------------------------------------------
/paraview/fig/glyph.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/glyph.png
--------------------------------------------------------------------------------
/paraview/fig/gs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/gs.png
--------------------------------------------------------------------------------
/paraview/fig/gs_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/gs_open.png
--------------------------------------------------------------------------------
/paraview/fig/last_frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/last_frame.png
--------------------------------------------------------------------------------
/paraview/fig/mac_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/mac_download.png
--------------------------------------------------------------------------------
/paraview/fig/minusz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/minusz.png
--------------------------------------------------------------------------------
/paraview/fig/mismatch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/mismatch.png
--------------------------------------------------------------------------------
/paraview/fig/play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/play.png
--------------------------------------------------------------------------------
/paraview/fig/rescale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/rescale.png
--------------------------------------------------------------------------------
/paraview/fig/scale_array.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/scale_array.png
--------------------------------------------------------------------------------
/paraview/fig/scale_factor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/scale_factor.png
--------------------------------------------------------------------------------
/paraview/fig/simple_color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/simple_color.png
--------------------------------------------------------------------------------
/paraview/fig/simple_default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/simple_default.png
--------------------------------------------------------------------------------
/paraview/fig/simple_open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/simple_open.png
--------------------------------------------------------------------------------
/paraview/fig/simple_volume.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/simple_volume.png
--------------------------------------------------------------------------------
/paraview/fig/sphere.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/sphere.png
--------------------------------------------------------------------------------
/paraview/fig/tgv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/tgv.png
--------------------------------------------------------------------------------
/paraview/fig/windows_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/paraview/fig/windows_download.png
--------------------------------------------------------------------------------
/presentation/happy_presentation.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/presentation/happy_presentation.pdf
--------------------------------------------------------------------------------
/presentation/happy_presentation.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/presentation/happy_presentation.pptx
--------------------------------------------------------------------------------
/python/README.md:
--------------------------------------------------------------------------------
1 | # Pytyhonのインストール
2 |
3 | PCにPythonをインストールし、VSCodeから実行できるようにする。自分でインストールして使っているPythonがあったり、他に好きなエディタがあれば、以下の記述に関係なくそれを使ってかまわない。
4 |
5 | なお、Windows/Macともにログイン名を英語にしておくことを推奨する。もし最初に日本語名でアカウントを作成してしまった場合、新たに英語名のログイン名のアカウントを作成し、そのアカウントに管理者権限を付与して、以降はそのアカウントをメインに使うのが良い。現在は日本語アカウント名のままでもなんとかなるかもしれないが、少なくとも昔はいろいろ不具合が起きたのでおすすめしない。
6 |
7 | ## Windows編
8 |
9 | ### Pythonのインストール
10 |
11 | aptを使ってPython3をインストールする。
12 |
13 | ```sh
14 | sudo apt-get update
15 | sudo apt intall python3
16 | sudo apt install python3-pip
17 | ```
18 |
19 | また、後で必要なパッケージも入れておこう。
20 |
21 | ```sh
22 | python3 -m pip install --upgrade pip
23 | python3 -m pip install numpy matplotlib
24 | ```
25 |
26 | ### Jupyter Notebookのインストール
27 |
28 | Pythonの開発ではJupyter Notebookを使うと便利だ。以下でインストールしよう。
29 |
30 | ```sh
31 | python3 -m pip install jupyter
32 | ```
33 |
34 | 標準で`.local/bin`にインストールされるため、パスを通す必要がある。以下を実行すること。
35 |
36 | ```sh
37 | export PATH=$PATH:$HOME/.local/bin
38 | ```
39 |
40 | なお、ターミナルを開くたびに上記設定が必要であるため、上記を`.bashrc`の最後に追加しておくと良い。
41 |
42 | Jupyter Notebookはブラウザ上でPythonを実行する環境であり、普通に実行すると自動でブラウザが開かれるが、WSL上で使うには少々工夫がいる。まず、Jupyter Notebookを、ブラウザなしモードで起動する。
43 |
44 | ```sh
45 | jupyter notebook --no-browser
46 | ```
47 |
48 | すると、以下のような表示がされるはずだ。
49 |
50 | ```txt
51 | To access the notebook, open this file in a browser:
52 | file:///home/watanabe/.local/share/jupyter/runtime/nbserver-985-open.html
53 | Or copy and paste one of these URLs:
54 | http://localhost:8888/?token=e4a7e2efbf7cf61ceb4d11652e8f538f67bc11b9aacdde54
55 | or http://127.0.0.1:8888/?token=e4a7e2efbf7cf61ceb4d11652e8f538f67bc11b9aacdde54
56 | ```
57 |
58 | このうち、`http://localhost:8888`ではじまる行(`token=...`を含む)をブラウザのURLにコピペするとJupyter Notebookが開かれるので、右上の「New」ボタンから「Python 3」を選ぶ。
59 |
60 | 
61 |
62 | 新しいタブが開き、入力待ちになるので、そこで何かプログラムを入力する。例えば
63 |
64 | ```py
65 | print("Hello Python")
66 | ```
67 |
68 | と入力し「Shift+Return」もしくは上の「Run」ボタンをクリックする。
69 |
70 | 
71 |
72 | セルの真下に「Hello Python」と表示されて、次のセルが入力待ちになれば成功である。これでPythonを実行する環境は整った。
73 |
74 | 最初に起動した画面の「Quit」を選ぶとJupyter Notebookは終了する。
75 |
76 | ## Mac編
77 |
78 | ### Python3のインストール
79 |
80 | まずはPython3をインストールしよう。
81 |
82 | ```sh
83 | brew install python3
84 | ```
85 |
86 | Python3がインストールされたら、必要なパッケージをいれておこう。
87 |
88 | ```sh
89 | python3 -m pip install numpy matplotlib
90 | ```
91 |
92 | ### Jupyter Notebookのテスト
93 |
94 | 次に、Jupyter Notebookをインストールしよう。
95 |
96 | ```sh
97 | python3 -m pip install --upgrade pip
98 | python3 -m pip install jupyter
99 | ```
100 |
101 | ターミナルから以下を実行せよ。
102 |
103 | ```sh
104 | jupyter notebook
105 | ```
106 |
107 | デフォルトのブラウザで、Jupyter Notebookが開かれるので、右上の「New」ボタンから「Python 3」を選ぶ。
108 |
109 | 
110 |
111 | 新しいタブが開き、入力待ちになるので、そこで何かプログラムを入力する。例えば
112 |
113 | ```py
114 | print("Hello Python")
115 | ```
116 |
117 | と入力し「Shift+Return」もしくは上の「Run」ボタンをクリックする。
118 |
119 | 
120 |
121 | セルの真下に「Hello Python」と表示されて、次のセルが入力待ちになれば成功である。これでPythonを実行する環境は整った。
122 |
123 | 最初に起動した画面の「Quit」を選ぶとJupyter Notebookは終了する。
124 |
--------------------------------------------------------------------------------
/python/fig/anaconda_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/anaconda_download.png
--------------------------------------------------------------------------------
/python/fig/anaconda_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/anaconda_icon.png
--------------------------------------------------------------------------------
/python/fig/fig.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/fig.pptx
--------------------------------------------------------------------------------
/python/fig/install_path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/install_path.png
--------------------------------------------------------------------------------
/python/fig/jupyter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/jupyter.png
--------------------------------------------------------------------------------
/python/fig/navigator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/navigator.png
--------------------------------------------------------------------------------
/python/fig/newbook2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/newbook2.png
--------------------------------------------------------------------------------
/python/fig/run2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/run2.png
--------------------------------------------------------------------------------
/python/fig/windows_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kaityo256/lab_startup/de7dde23366538fc678e139cbbafe9b69818625f/python/fig/windows_download.png
--------------------------------------------------------------------------------
/simd/README.md:
--------------------------------------------------------------------------------
1 | # C++のコンパイルとSIMDの確認
2 |
3 | ## SIMDについて
4 |
5 | SIMDとはSingle Instruction, Multiple Dataの略で、CPUの1サイクルで複数の命令を同時に実行する工夫である。なぜSIMDが必要であるか、SIMD化とは何かについては、以下のスライドを参照されたい。
6 |
7 | [SIMD化とは何か](https://speakerdeck.com/kaityo256/basics-of-simd)
8 |
9 | 以下では、実際にx86系の石でSIMDレジスタがどのように使われているかを確認してみる。その過程で、C++言語のコンパイルと実行、そしてアセンブリの確認をしよう。
10 |
11 | ## プログラム作成とコンパイル
12 |
13 | まずはsshで研究室サーバにログインせよ。Powershellでは問題が起きることが多いので、Windowsを使っている人はGit Bash等を利用すること。Macを使っている人はターミナルから接続せよ。ログインに成功したら、`simd`というフォルダを作成し、そこへ移動しよう。
14 |
15 | ```sh
16 | mkdir simd
17 | cd simd
18 | ```
19 |
20 | 次に、viで`test.cpp`というファイルを新規作成する。
21 |
22 | ```sh
23 | vi test.cpp
24 | ```
25 |
26 | すると、画面の下に
27 |
28 | ```txt
29 | "test.cpp" [新ファイル]
30 | ```
31 |
32 | という表示がされ、全画面になったはずだ。
33 |
34 | さて、viの最大の特徴は「モード」を持つことだ。viには「ノーマルモード」と「編集モード」の二つのモードがあり、それを入れ替えながらファイルを編集する(他にもモードがあるが、深くは立ち入らない)。起動時には「ノーマルモード」になっており、そのままでは文字入力ができない。ここで「i」を押して編集モードに切り替えよう。
35 |
36 | 画面の下が`-- 挿入 -- `という表示になったはずだ。この状態では、通常のエディタのように文字列を入力することができる。以下のプログラムを入力してみよう。
37 |
38 | ```c++
39 | #include