https://www.inaba-lab.org/wiki/api.php?action=feedcontributions&user=Admin&feedformat=atom
東海大学 コンピュータ応用工学科 稲葉研究室Wiki - 利用者の投稿記録 [ja]
2024-03-29T14:47:48Z
利用者の投稿記録
MediaWiki 1.41.0
https://www.inaba-lab.org/wiki/index.php?title=%E5%91%A8%E6%B3%A2%E6%95%B0%E5%BF%9C%E7%AD%94&diff=364
周波数応答
2024-03-17T02:59:01Z
<p>Admin: /* ゲインと位相 */</p>
<hr />
<div>== 周波数応答とは ==<br />
<br />
=== ゲインと位相 ===<br />
<br />
安定な線形なシステムに正弦波入力を加えると,定常状態では出力も正弦波となる.出力の正弦波の周波数は入力と同じになるが,振幅の変化や位相差が発生する.<br />
入力の正弦波を<math>u(t)</math>,定常状態での出力を<math>y(t)</math>とし,それぞれ次式で表されるとする.<br />
<br />
<math><br />
\begin{array}{l l l}<br />
u(t) &=& A_i \sin \omega t \\<br />
y(t) &=& A_o \sin(\omega t + \phi)<br />
\end{array}<br />
</math><br />
<br />
このとき,入力に対する出力の振幅比をゲイン<math>g = \displaystyle \frac{A_o}{A_i}</math>,<math>\phi</math>を位相(位相差)と呼ぶ.ゲインと位相は入力の周波数に応じて変化する.<br />
<br />
図1は,伝達関数<math>\displaystyle \frac{1}{s^2 + 0.5s + 1}</math>に<math>\omega=</math>0.1, 1, 10 [rad/s]の3種類の正弦波を入力した時の応答をMATLAB(Octave)の<tt>lsim</tt>関数で計算した結果である(リストsample2_1).<br />
<br />
グラフから,過渡状態はおおよそ開始から10秒強で,その後は定常状態となっていることがわかる.定常状態でのゲインと位相は周波数によって変化していることがわかる.<br />
<br />
[[ファイル:sins.png|thumb|図1 二次遅れ系の正弦波応答]]<br />
<br />
リストsample2_1 二次遅れ系の正弦波応答比較スクリプト<br />
num = [1]; <br />
den = [1 0.5 1]; <br />
sys = tf(num, den); <br />
tim = 0:0.01:20; <br />
<br />
u1 = sin(0.1*tim); <br />
u2 = sin(1*tim); <br />
u3 = sin(10*tim); <br />
<br />
y1 = lsim(sys, u1, tim); <br />
y2 = lsim(sys, u2, tim); <br />
y3 = lsim(sys, u3, tim); <br />
<br />
subplot(3,1,1); <br />
plot(tim, u1, tim, y1) <br />
axis([0 20 -2 2]); <br />
xlabel('time (s)'); <br />
ylabel('u, y'); <br />
title('\omega = 0.1 (rad/s)'); <br />
legend('u', 'y'); <br />
grid( 'on'); <br />
<br />
subplot(3,1,2); <br />
plot(tim, u2, tim, y2) <br />
axis([0 20 -2 2]); <br />
xlabel('time (s)'); <br />
ylabel('u, y'); <br />
title('\omega = 1 (rad/s)'); <br />
legend('u', 'y'); <br />
grid( 'on'); <br />
<br />
subplot(3,1,3); <br />
plot(tim, u3, tim, y3) <br />
axis([0 20 -2 2]); <br />
xlabel('time (s)'); <br />
ylabel('u, y'); <br />
title('\omega = 10 (rad/s)'); <br />
legend('u', 'y'); <br />
grid( 'on');<br />
<br />
=== 周波数応答関数 ===<br />
<br />
システムのゲインと位相は,上記のように実際に正弦波信号を入力して調べなくても,システムの周波数応答関数(周波数伝達関数)から求めることができる.周波数応答関数とは,伝達関数のラプラス演算子<math>s</math>を<math>j \omega</math>に置き換えたものである.周波数応答関数は角周波数<math>\omega</math>を含んだ複素関数であり,その絶対値と偏角がそれぞれゲインと位相に対応する.<br />
<br />
<math><br />
\begin{array}{l l l}<br />
g &=& |G(j \omega)| \\<br />
\phi &=& \angle G(j \omega) <br />
\end{array}<br />
</math><br />
<br />
なお,ある複素数<math>z = a + b j</math>の絶対値と偏角はそれぞれ以下のように求められる.<br />
<br />
<math><br />
\begin{array}{l l l}<br />
|z| &=& \sqrt{a^2 + b^2} \\<br />
\angle z &=& \tan^{-1} \frac{b}{a}<br />
\end{array}<br />
</math><br />
<br />
== MATLAB(Octave)での周波数応答の計算 ==<br />
<br />
=== MATLAB(Octave)での複素数の取扱い ===<br />
<br />
MATLAB(Octave)では複素数は以下のように入力し,そのまま実数と同じように扱える.なお,入力する際は,虚数単位は<tt>i</tt>でも<tt>j</tt>でもよい.<br />
<br />
1 + 2i<br />
<br />
例えば,-1の平方根は<br />
<br />
> sqrt(-1)<br />
ans = 0 + 1i<br />
<br />
と出力される.<br />
しかし,変数として<tt>i</tt>や<tt>j</tt>を使っていると,虚数単位と混同するので,複素数を表す関数<tt>complex()</tt>を使用した方が間違いがない.また,絶対値は関数<tt>abs()</tt>,偏角は関数<tt>angle()</tt>で求められる(単位はラジアン).以下のこれらの使用例を示す.<br />
<br />
> z = complex(1, -1)<br />
z = 1 - 1i<br />
> abs(z)<br />
ans = 1.4142<br />
> angle(z)<br />
ans = -0.78540<br />
<br />
=== MATLAB(Octave)での有理式の取扱い ===<br />
<br />
伝達関数は一般に有理式(分子・分母が多項式)で表される(むだ時間など一部除く).MATLAB(Octave)では多項式を係数を降べきの順に並べたベクトルで表し,有理式は分子・分母それぞれの係数ベクトルのペアで表現する.例えば,伝達関数<math>\displaystyle G(s) = \frac{s + 2}{s^2 + 3s + 2} </math>は,次のように二つのベクトル<tt>num</tt>と<tt>den</tt>のペアで表す.<br />
<br />
> num = [1 2];<br />
> den = [1 3 2];<br />
<br />
また,MATLAB(Octave)では,多項式の変数に値を代入して計算した結果を返してくれる関数<tt>polyval()</tt>が用意されている.使用例を以下に示す.このように複素数にも対応するので,周波数応答の計算に利用できる.<br />
<br />
> f = [1 2 1];<br />
> polyval(f, 1)<br />
ans = 4<br />
> polyval(f, complex(1, 1))<br />
ans = 3 + 4i<br />
<br />
=== 周波数応答(ボード線図)のプロット ===<br />
<br />
周波数応答関数のゲインと位相をそれぞれ別のグラフで表したものがボード線図である.横軸は角周波数で対数目盛りとし,ゲインはdBに換算して表示する.<br />
ここではMATLAB(Octave)によるボード線図のプロットについて,以下の二つの方法を紹介する.<br />
<br />
* <tt>polyval</tt>関数を利用して原理に基づいて計算する方法<br />
* Control System Toolboxの<tt>bode</tt>関数を利用する方法<br />
<br />
<br />
==== <tt>polyval</tt>関数を利用した方法 ====<br />
<br />
リストsample2_2に<tt>polyval</tt>関数を利用してボード線図をプロットするスクリプト例を示す.<br />
<br />
変数<tt>minp</tt>と<tt>maxp</tt>にそれぞれ周波数軸の下限と上限を10のベキ数で指定する.この例では<math>10^{-2}=0.01</math>[rad/s]から<math>10^2=100</math>[rad/s]までを指定している.<br />
<br />
グラフ表示のウィンドウを<tt>subplot</tt>命令で2行1列に分割し,上側にゲイン線図,下側に位相線図をそれぞれ横軸対数表示である<tt>semilogx</tt>関数を使ってプロットしている.図2に実行結果のグラフを示す.<br />
<br />
[[ファイル:Bode_2_2.png|thumb|図2 <math>\displaystyle \frac{1}{s^2 + 0.5s+ 1}</math>のBode線図(<tt>polyval</tt>関数利用)]]<br />
<br />
sample2_2 <tt>polyval</tt>関数を利用したボード線図の描画スクリプト}<br />
num = [1]; %伝達関数の分子<br />
den = [1 0.5 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
gain =[];<br />
phase = [];<br />
omega = [];<br />
<br />
for k = 1 : n<br />
w = 10^(minp+(maxp-minp)/(n-1)*(k-1));<br />
z = polyval(num, complex(0, w))/polyval(den, complex(0, w));<br />
gain(k) = 20*log10(abs(z));<br />
phase(k) = angle(z)/3.14159*180;<br />
omega(k) = w;<br />
end<br />
<br />
subplot(2,1,1);<br />
semilogx(omega, gain);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Gain (dB)');<br />
grid('on');<br />
<br />
subplot(2,1,2);<br />
semilogx(omega, phase);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Phase (deg)');<br />
grid('on');<br />
<br />
<br />
<br />
リストsample2_3は,MATLAB(Octave)固有の要素ごとの演算を利用して<tt>for</tt>ループを用いないスクリプト例である.ここで,<tt>logspace</tt>関数は等比数列を出力する関数である.<br />
<br />
sample2_3 <tt>polyval</tt>関数を利用したボード線図の描画スクリプト(forループ無しバージョン)<br />
num = [1]; %伝達関数の分子<br />
den = [1 0.5 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n); %周波数ベクトルの生成<br />
z = polyval(num, complex(0, omega))./polyval(den, complex(0, omega));<br />
<br />
gain = 20*log10(abs(z));<br />
phase = angle(z)/3.14159*180;<br />
<br />
subplot(2,1,1);<br />
semilogx(omega, gain);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Gain (dB)');<br />
grid( 'on');<br />
<br />
subplot(2,1,2);<br />
semilogx(omega, phase);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Phase (deg)');<br />
grid('on');<br />
<br />
==== <tt>bode</tt>関数を利用した方法 ====<br />
<br />
MATLABのControl System Toolboxに含まれる<tt>bode</tt>関数を利用すると,簡単にボード線図を描画できる.リストsample2_4にスクリプト例を,図3に実行結果のグラフを示す.なお,この例では変数<tt>omega</tt>で周波数ベクトルを指定しているが,省略することもできる.その場合は<tt>bode</tt>関数が自動的に周波数範囲を設定して描画する.<br />
<br />
[[ファイル:Bode_2_4.png|thumb|図3 <math>\displaystyle \frac{1}{s^2 + 0.5s+ 1}</math>のBode線図(<tt>bode</tt>関数利用)]]<br />
<br />
sample2_4 <tt>bode</tt>関数を利用したボード線図の描画スクリプト<br />
num = [1]; %伝達関数の分子<br />
den = [1 1 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n); %周波数ベクトルの生成<br />
sys = tf(num, den); %伝達関数からシステムマトリックスへの変換<br />
<br />
bode(sys, omega);<br />
<br />
<br />
リストsample2_4の例のように<tt>bode</tt>関数単体でグラフまで描画するが,ゲイン線図だけを描画したい時や,実験結果と重ねてグラフ化したい時などは,次のように,<tt>bode</tt>関数の左辺に変数をおくと,グラフ表示は行わず周波数応答の計算結果だけが得られる(ゲインは絶対値,位相は度の単位).<br />
<br />
[gain phase omega] = bode(sys, omega);<br />
<br />
<br />
これを利用したスクリプト例をリストsample2_5に示す.これはボード線図のゲイン線図だけをプロットする例である.実行結果を図4に示す.<br />
<br />
なお,<tt>bode</tt>関数が多入出力に対応しているため,MATLABの場合左辺の変数<tt>gain</tt>と<tt>phase</tt>は3次元の行列として出力される(対象システム1入力1出力であっても).よって,<tt>plot</tt>関数で使用する前にこのスクリプト例のように<tt>squeeze</tt>関数で1次元ベクトルに変換する必要があるので注意する.<br />
<br />
[[ファイル:Bode_2_5.png|thumb|図4 <math>\displaystyle \frac{1}{s^2 + 0.5s+ 1}</math>のBode線図(<tt>bode</tt>関数利用,ゲイン線図のみ)]]<br />
<br />
sample2_5 <tt>bode</tt>関数を利用したゲイン線図のスクリプト<br />
num = [1]; %伝達関数の分子<br />
den = [1 0.5 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n); %周波数ベクトルの生成<br />
sys = tf(num, den); %伝達関数からシステムマトリックスへの変換<br />
<br />
[gain phase omega] = bode(sys, omega);<br />
gain = squeeze(gain); % 1次元ベクトルへの変換 gain=gain(:); でもよい<br />
gaindB = 20*log10(gain);<br />
<br />
semilogx(omega, gaindB);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Gain (dB)');<br />
grid( 'on');<br />
<br />
=== 周波数応答(ベクトル軌跡)のプロット ===<br />
<br />
ベクトル軌跡は周波数応答関数を<math>\omega = 0 \sim \infty</math>の範囲で複素平面上にそのままプロットしたものである.MATLAB(Octave)では複素数ベクトルを<tt>plot</tt>関数でプロットすると複素平面上で表されるので,それをそのまま利用できる.リストsample2_6がスクリプトの例であり,実行結果は図vector_loci_2_6である.なお,MATLAB(Octave)には<tt>nyquist</tt>関数が用意されており,それを利用してもベクトル軌跡を描くことができる.<br />
<br />
[[ファイル:vector_loci_2_6.png|thumb|図5 <math>\displaystyle \frac{1}{s^2 + 0.5s+ 1}</math>のベクトル軌跡]]<br />
<br />
sample2_6 二次遅れ系のベクトル軌跡を描くスクリプト<br />
num = [1]; %伝達関数の分子<br />
den = [1 0.5 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n);<br />
z = polyval(num, complex(0, omega))./polyval(den, complex(0, omega));<br />
<br />
plot(z)<br />
axis([-1.5 1.5 -1.5 1.5]);<br />
axis equal; %グラフの縦横比を1:1に指定<br />
grid('on');<br />
<br />
== 応用編 ==<br />
<br />
=== むだ時間要素のボード線図 ===<br />
<br />
むだ時間要素<math>G(s)=e^{-Ls}</math>は無理式であるので,分子分母にわけて係数ベクトルで表現することはできない.MATLABのControl system Toolboxではシステムのむだ時間を指定する方法があるが,Octaveではまだ実装されていないようである.ここでは,むだ時間のボード線図を原理に基づいてプロットすることを考える.<br />
<br />
むだ時間要素の周波数応答関数は<math>G(j\omega)=e^{-Lj\omega}</math>であり,その絶対値と偏角は以下となる.<br />
<br />
<math><br />
\begin{array}{l l l}<br />
g &=& |G(j \omega)| = 1 \\<br />
\phi &=& \angle G(j \omega) = -L\omega<br />
\end{array}<br />
</math><br />
<br />
よって,むだ時間要素のボード線図を描くスクリプト例はリストsample2_7となる.実行結果は図6である.<br />
ここで,関数<tt>ones</tt>は指定したサイズで要素がすべて1の行列を生成する関数であり,関数<tt>size</tt>で周波数ベクトルの大きさを取り出して利用している.<br />
<br />
[[ファイル:Bode_2_7.png|thumb|図6 むだ時間要素のボード線図(<math>L=1</math>)]]<br />
<br />
<br />
<br />
sample2_7 むだ時間要素のボード線図を描くスクリプト<br />
L = 1; %むだ時間 [s]<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n); %周波数ベクトルの生成<br />
gain = 1*ones(size(omega)); %omegaと同サイズのベクトルを生成<br />
gaindB = 20*log10(gain);<br />
phase = -L*omega/3.14159*180; <br />
<br />
subplot(2,1,1);<br />
semilogx(omega, gaindB);<br />
axis([0.01, 100, -80, 20]);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Gain (dB)');<br />
grid('on');<br />
<br />
subplot(2,1,2);<br />
semilogx(omega, phase);<br />
axis([0.01, 100, -300, 0]);<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Phase (deg)');<br />
grid('on');<br />
<br />
=== 実験結果との重ね合わせの例 ===<br />
<br />
実験科目や卒業研究などで,実験装置での実測結果と理論式から求めた理論曲線を比較する場面がよく出てくる.リストsample2_8は実験で求めた周波数応答と理論曲線を重ねて描くスクリプトの例である.<br />
<br />
実験による測定結果の周波数,ゲイン,位相をそれぞれ<tt>omega_e</tt>, <tt>gaindB_e</tt>, <tt>phase_e</tt>という変数に代入しておき,理論曲線と重ねている.この際,実験データの方はマーカーで示すべきであるので,<tt>semilog</tt>関数内で線類を指定している.また,関数<tt>legend</tt>でグラフに凡例を付け加えることができる.実行結果を図7に示す.<br />
<br />
[[ファイル:Bode_2_8.png|thumb|図7 実験結果と理論曲線を重ねる例]]<br />
<br />
<br />
sample2_8 実験結果と理論曲線を重ねて描くスクリプト例<br />
omega_e = [0.01 0.03 0.05 0.1 0.3 0.5 1 3 5 10 30 50 100];<br />
gaindB_e = [0 -2.1 3.1 0.1 0.4 1.0 -0.5 -20.1 -27.5 -45.5 -55.2 -69.1 -78.2];<br />
phase_e = [-0.5 -2.1 -3.1 -5.5 -22.1 -32.1 -90.1 -150 -173 -185 -192 -205 -210];<br />
<br />
num = [1]; %伝達関数の分子<br />
den = [1 1 1]; %伝達関数の分母<br />
minp = -2; %周波数下限のベキ数<br />
maxp = 2; %周波数上限のベキ数<br />
n = 100; %周波数分割数<br />
<br />
omega = logspace(minp, maxp, n);<br />
sys = tf(num, den);<br />
<br />
[gain phase omega] = bode(sys, omega);<br />
gain = squeeze(gain);<br />
gaindB = 20*log10(gain);<br />
phase = squeeze(phase);<br />
<br />
subplot(2,1,1);<br />
semilogx(omega, gaindB, '-', omega_e, gaindB_e, '*');<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Gain (dB)');<br />
grid( 'on');<br />
legend('Theoretical', 'Experimental');<br />
<br />
subplot(2,1,2);<br />
semilogx(omega, phase, '-', omega_e, phase_e, '*');<br />
xlabel('Frequency (rad/s)');<br />
ylabel('Phase (deg)');<br />
grid('on');<br />
legend('Theoretical', 'Experimental');</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&diff=363
メインページ
2024-02-23T08:26:34Z
<p>Admin: </p>
<hr />
<div><br />
== 東海大学 情報理工学部 コンピュータ応用工学科 稲葉研究室 Wiki ==<br />
<br />
研究に関することを中心に,役立つ情報をみなさんで共有しましょう.<br />
<br />
全世界に公開されていますので,個人情報,著作権,公序良俗に注意して,相応しい内容だけ書き込むこと.<br />
<br />
公開したくない内容は[https://www.inaba-lab.org/wiki2/ メンバー限定Wiki]のほうを利用してください.<br />
<br />
=== ゼミ資料・勉強会資料 ===<br />
*[[システム制御関連]]<br />
*[[TeXによる文書作成入門]]<br />
<br />
<br />
=== 計算機関係 ===<br />
*[[インストールと設定]]<br />
*[[チョットしたテクニック]]<br />
*研究室内ネットワークについては[https://www.inaba-lab.org/wiki2/ メンバー限定Wiki]参照</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MediaWiki:Sidebar&diff=362
MediaWiki:Sidebar
2024-02-23T06:18:02Z
<p>Admin: </p>
<hr />
<div><br />
* navigation<br />
** mainpage|mainpage-description<br />
** recentchanges-url|recentchanges<br />
** randompage-url|randompage<br />
** helppage|help<br />
** https://www.inaba-lab.org | 稲葉研究室Webサイト<br />
* SEARCH<br />
* TOOLBOX<br />
* LANGUAGES</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=361
MacOSクライアント(OS 11.2)
2021-12-25T04:46:10Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Homebrewをインストール<br />
https://brew.sh/index_ja に従うこと.<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係(2021年度より,MATLABのキャンパスライセンスが利用できるので,インストールする必要はない)===<br />
<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
** M1 macの場合は,起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=360
MacOSクライアント(OS 11.2)
2021-12-25T04:06:32Z
<p>Admin: /* システム,開発環境の設定とインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Homebrewをインストール<br />
https://brew.sh/index_ja に従うこと.<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係(2021年度より,MATLABのキャンパスライセンスが利用できるので,インストールする必要はない)===<br />
<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=359
MacOSクライアント(OS 11.2)
2021-12-25T04:05:53Z
<p>Admin: /* システム,開発環境の設定とインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係(2021年度より,MATLABのキャンパスライセンスが利用できるので,インストールする必要はない)===<br />
<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=358
MacOSクライアント(OS 11.2)
2021-12-25T04:03:30Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定(2021/2/22現在,ネットワークアカウントでログインできないのでこの設定はしない)<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
*Command Line Toolsのインストール<br />
xcode-select --install<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係(2021年度より,MATLABのキャンパスライセンスが利用できるので,インストールする必要はない)===<br />
<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=357
MacOSクライアント(OS 11.2)
2021-12-25T04:03:15Z
<p>Admin: /* フリーウェアツールのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定(2021/2/22現在,ネットワークアカウントでログインできないのでこの設定はしない)<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
*Command Line Toolsのインストール<br />
xcode-select --install<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
(2021年度より,MATLABのキャンパスライセンスが利用できるので,インストールする必要はない)<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=356
MacOSクライアント(OS 11.2)
2021-12-25T04:02:22Z
<p>Admin: /* 購入アプリケーションのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定(2021/2/22現在,ネットワークアカウントでログインできないのでこの設定はしない)<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
*Command Line Toolsのインストール<br />
xcode-select --install<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.詳しくは教員に確認すること.<br />
<br />
===MATLAB for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.学生個人のアカウントではインストールしないこと.詳しくは教員に確認すること.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=355
MacOSクライアント(OS 11.2)
2021-12-25T03:54:04Z
<p>Admin: /* フリーウェアツールのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定(2021/2/22現在,ネットワークアカウントでログインできないのでこの設定はしない)<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
*Command Line Toolsのインストール<br />
xcode-select --install<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからmacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== Microsoft Teams ===<br />
* Microsoftのサイトからmac OS用デスクトップアプリの最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_11.2)&diff=354
MacOSクライアント(OS 11.2)
2021-12-24T09:52:58Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*システム環境設定の共有でマシン名をそれっぽく付けておく<br />
*ネットワークユーザでのログインの設定(2021/2/22現在,ネットワークアカウントでログインできないのでこの設定はしない)<br />
システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
*localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
*Command Line Toolsのインストール<br />
xcode-select --install<br />
<br />
*Homebrewをインストール<br />
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
cellfun (@(x) pkg ("load", x.name), pkg ("list"));<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Live/Mac<br />
https://texwiki.texjp.org/?TeX%20Live%2FMac<br />
を参考にする.<br />
<br />
*Homebrew によるインストール (GUI-Applications ありの場合)<br />
brew install mactex --cask<br />
sudo tlmgr update --self --all<br />
sudo tlmgr paper a4<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
*LaTeXiTの設定<br />
**起動時にGhostscriptとかがないと言われるので,環境設定の「プログラム」で以下のように変更する.<br />
*** Ghostscript (gs)は,/opt/homebrew/bin/gs<br />
*** ps2pdfは,/opt/homebrew/bin/ps2pdf<br />
**ApplicationsフォルダのTeXフォルダ内にLaTeXiTがインストールされている.必要に応じて最新版にアップデート<br />
<br />
=== インターネット関係 ===<br />
<br />
*Google Chromeのインストール<br />
**[[https://www.google.com/intl/ja_jp/chrome/]]から Mac版をゲットしてインストール.<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=Octave%E7%B7%A8&diff=330
Octave編
2019-11-02T02:49:08Z
<p>Admin: /* Octaveのグラフを文書に貼る時にフォント等を大きくする */</p>
<hr />
<div>== Octaveのグラフを文書に貼る時にフォント等を大きくする ==<br />
グラフをprintコマンドでファイルに保存する際に,全体の大きさを小さくすることで相対的にフォントサイズを大きく,プロットを太くできます.<br />
<br />
print '-S320,240' -dpdf test.pdf<br />
<br />
のようにオプション S をつけてグラフの横縦をポイント数で指定します(コーテーションで囲む必要あり).<br />
<br />
== Octaveのグラフの線の太さを太くしたい ==<br />
上述の方法である程度太くなりますが,それでも細い場合は,<br />
<br />
plot(x, y, 'linewidth', 2);<br />
<br />
のようにプロットのLineプロパティを指定することで太さを変えられます.デフォルトは0.5のようなので,2とすれば4倍太くなります.<br />
<br />
重ね書きしているプロットそれぞれの線の太さを指定するには,<br />
<br />
plot(x, y, 'linewidth', 2, x, z, 'linewidth', 3);<br />
<br />
のようにすればできます.<br />
<br />
<br />
== Octaveのグラフの線の色について ==<br />
グラフを書くときに線の色を変えたい場合、以下を参考にしてください。<br />
<br />
plot(x,y,'?') の?の部分を以下の一桁の数字にしてみると色が変わります。また、二桁の数字を入力した場合、グラフには点が表れる。一桁目は点の形を表しており、二桁目は点の色を表している。それも以下の対応表にのせる。<br />
<br />
{| class="wikitable"<br />
|+色の対応表<br />
|-<br />
!数字||色||二桁時の形<br />
|-<br />
|0||灰色||無し<br />
|-<br />
|1||赤||◯<br />
|-<br />
|2||黄緑||+<br />
|-<br />
|3||青||□<br />
|-<br />
|4||紫||x<br />
|-<br />
|5||水色||△<br />
|-<br />
|6||茶色||*<br />
|-<br />
|7||オレンジ(薄)||◯<br />
|-<br />
|8||オレンジ(濃)||+<br />
|-<br />
|9||赤||□<br />
|}<br />
この対応表を用いて例を挙げると、?が11の時、二桁目が色を表しているので赤色になり、形は◯のプロットのグラフとなる。61ならば、茶色で*のプロットとなるはずです。しかし、10や20など一桁目が0だと、線すら現れませんでした・・・。ver.によっては対応が異なる場合がおりますので、まずは試しに使ってみてください。<br />
<br />
== Aquateamでプロットする際のxlabelが表示されなかったり、ylabelが欠けたりする場合の解決法 ==<br />
<br />
原因はウィンドウサイズに対してグラフの軸枠が広すぎるためのようで、以下のコマンドで枠の位置を少し内側に指定すると良い.(参考URL: http://blogs.yahoo.co.jp/oukat2000/24952985.html ,ただし、このページではxlabelが消えることへの対処だけだったのでylabelが欠けないようにX方向も内側にずらした.)<br />
<br />
set (0, "defaultaxesposition", [0.15, 0.17, 0.775, 0.755])<br />
<br />
<br />
毎回このコマンドを実行するのも面倒なので、各自のホームディレクトリに.octavercという名前のファイルを作り、このコマンドを書き込んでおけばoctave起動時に自動的に実行される.<br />
<br />
== subplotで縦に並べたグラフをPDFなどに書き出すとlabelが重なる問題の解決法 ==<br />
<br />
plotの-Sオプションで縦長の領域を指定する<br />
<br />
print -dpdf '-S480 640' result11.pdf<br />
<br />
== cpsd関数がMATLABと一致しない問題の解決法 ==<br />
<br />
cpsd関数内のwindowの指定で[](ヌル)を入れるとデフォルトのhammingウィンドウが使われるはずだが(MATLABでは確かに使われてる感じ)、Octaveではなんか使われてない感じ。よって、明示的にHammingウィンドウを指定する。<br />
<br />
[Pyx Freq] = cpsd(x, y, hamming(length(x)), [], NFFT, 1/0.001);</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3&diff=329
シミュレーション
2019-08-23T11:34:05Z
<p>Admin: </p>
<hr />
<div>== この資料について ==<br />
<br />
本資料ではシステム制御の学習や研究に必要な動的システムのシミュレーション手法について説明します.シミュレーション環境は基本的にGNU Octaveを対象とします.<br />
<br />
シミュレーションとは,ある現象をそれを模擬した装置や計算機を利用して擬似的に再現し,予測や評価に利用することといえます.最近ではデジタル計算機を用いた数値シミュレーションが一般的です.<br />
数値シミュレーションを行うためには,現象の数学的モデルが必要になります.特に工学的な現象の場合,時間に関する微分方程式で表現できることが多いでしょう.その微分方程式を解くことができればシミュレーションが行えます.しかし,微分方程式の解析的な解(数式で表現される解)を求めることは一般的には難しいため,数値解(時間に対する数値の列)を求める手法が用いられます.<br />
<br />
この資料ではまず,最も基本的なオイラー法やより精度の高いルンゲ・クッタ法による微分方程式の数値解法をOctaveでのスクリプト例を示しながら説明します.次に,システム制御では基本となる線形システムの状態空間表現について述べ,オイラー法やルンゲ・クッタ法でシミュレ-ションするOctaveスプリプトを示します.<br />
最後に,より高度な数値解法が実装されているOctaveのlsode関数の利用方法について説明します.基礎はいいので手っ取り早くOctaveによるシミュレーションをしたいのなら,「Octave関数を利用したシミュレーション」の節だけを読めばいいでしょう.<br />
<br />
<br />
== オイラー法によるシミュレーション ==<br />
<br />
=== 一階常微分方程式 ===<br />
<br />
微分方程式とは,ある未知関数とその関数の導関数との関係が表されている方程式です.そのうち特に1変数の導関数で表されているものを常微分方程式といいます.システム制御に関わるシミュレーションでは時間に関する導関数で表される場合がほとんどでしょうから,常微分方程式が対象になります.さらに,導関数の階数(次数)が微分方程式の階数となります.<br />
<br />
ということで,これから取り扱う最も簡単な微分方程式は以下のような一階の常微分方程式となります.ここで<math>x(t)</math>が未知関数,<math>x_0</math>はその初期値です.<br />
<br />
<math>\frac{dx(t)}{dt} = f(x(t), t) \, , \quad x(0) = x_0</math><br />
<br />
<br />
もちろん実際の問題はより高階の常微分方程式が必要になりますが,この一階の微分方程式の数値解法を応用することで対応できます.<br />
<br />
<br />
=== オイラー法 ===<br />
<br />
微分方程式の数値解法の基本は,ある時刻<math>t_k</math>から微少な刻み幅<math>\Delta t</math>(サンプリング時間またはサンプリング周期ともいう)だけ時間がたった後の関数値<math>x(t_k + \Delta t)</math>を逐次求めていくことです.これをいかに精度よく(できるだけ少ない計算量で)求めるかが数値解法の善し悪しと言えます.<br />
<br />
オイラー法は以下のように<math>x(t_k + \Delta t)</math>のテイラー展開の最初の2項だけに基づきます.<br />
<br />
<math>\begin{array}{l l l} x(t_k + \Delta t) &=& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t + \frac{1}{2} \frac{d^2x}{dt^2}\bigg|_{t=t_k} \, \Delta t ^2 + \cdots \\ &\approx& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t \\ &\approx& x(t_k) + f(x(t_k), t_k) \, \Delta t \end{array}</math><br />
<br />
ここで,表記上の簡便性から,<math>x(t_k)</math>を<math>x_k</math>と表記することにし,<math>t_k + \Delta t</math>を<math>t_{k+1}</math>, <math>x(t_k + \Delta t)</math>を<math>x_{k+1}</math>などと表記することにします.この時オイラー法は以下のように表すことができます.<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \, \Delta t</math><br />
<br />
オイラー法による近似をグラフで示すと図のようになります.<br />
<br />
[[ファイル:Euler.png]]<br />
<br />
次のサンプリング時刻における<math>x(t)</math>の値,すなわち<math>x_{k+1}</math>を接線で一次近似して求めていると解釈できます.もとの微分方程式から,接線の傾きが<math>f(x_k, t_k)</math>ですから,それに<math>\Delta t</math>を乗じた物を<math>x_{k}</math>に加えることで<math>x_{k+1}</math>を求めています.図をみると誤差(error)が大きくて,本当に使えるのか心配ですが,<math>\Delta t</math>をできるだけ小さくすれば誤差を少なくできます.しかし,<math>\Delta t</math>を小さくすると,ある期間(例えば10秒間とか)のシミュレーションをするのにそれだけ計算回数が増えることになるので注意が必要です.<br />
<br />
図では<math>x_k</math>が真値と一致している場合で書きましたが,実際はそうとも限りません.初期値<math>x_0</math>からスタートして,オイラー法を繰り返し使った近似計算は次図のようなイメージになります.<math>\Delta t</math>をできるだけ小さくとって,真値から離れすぎないようにする必要があります.なお,この図では近似のための接線を真値のグラフ<math>x(t)</math>に接するように引いていますが,<math>x_k</math>が真値からずれている場合は図の通りにはなりません.あくまでイメージです.<br />
<br />
[[ファイル:Euler2.png]]<br />
<br />
=== Octaveによる実現 ===<br />
<br />
次の微分方程式を例題に,Octaveでオイラー法によるシミュレーションを行うスクリプトを考えてみます.<br />
<br />
<math>\frac{dx}{dt} = - x + 1, \quad x_0 = 0</math><br />
<br />
オイラー法を適用すれば<br />
<br />
<math>x_{k+1} = x_k + (-x_k + 1) \, \Delta t</math><br />
<br />
とかけるので,繰り返しこの計算を行うOctaveスクリプトの例は以下のようになります.<br />
<br />
*オイラー法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + ( - x_k + 1) * dt ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x);<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
xlabel('time (s)');<br />
ylabel('x');<br />
<br />
Octaveにおける変数名の都合上,<math>x_k</math>をx_k,<math>x_{k+1}</math>をx_k1としています.<br />
また,シミュレーション結果と時刻を格納する変数をそれぞれx,timとして用意し,<math>x_k</math>と<math>t</math>を行の末尾に追加しています.また,forループで繰り返す際に,次回の計算のために今回の<math>x_{k+1}</math>を次回の<math>x_k</math>として繰り上げておくことが必要です.<br />
<br />
== 高次システムのシミュレーション ==<br />
<br />
=== 高次微分方程式の取り扱い ===<br />
<br />
これまでは1階(次)の微分方程式を扱ってきましたが,現実には2次以上のシステムのシミュレーションが必要になることが多いと思います.その場合は,変数変換をすることで連立多元1階常微分方程式に変形して考えます.<br />
<br />
例えば,次のような微分方程式を考えます.これは,長さ<math>l</math>の軽い棒の先に質量<math>m</math>の重りがついた単振り子を初期角度<math>\theta_0</math>の位置から初速度0で放す状況を表しています(下図参照).ここで振り子は空気その他から速度に比例した抵抗を受けるものとし,その係数を<math>c</math>としています.<br />
<br />
<math>\frac{d^2 \theta(t)}{d t^2} = - \frac{g}{l} \sin \theta(t) - \frac{c}{m} \frac{d\theta(t)}{dt} \quad , \theta(0) = \theta_0 \quad , \frac{d\theta(t)}{dt} \bigg|_{t=0} = 0</math><br />
<br />
[[ファイル:pendulum.png]]<br />
<br />
このような2次のシステムの場合,次のような2個の変数を新たに定義します.これらを状態変数と呼びます.<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& \theta(t)\\x_2(t) &=& \frac{d \theta(t)}{dt}\end{array}</math><br />
<br />
状態変数を用いてもとの微分方程式を表すと以下のように1階の微分方程式が2本連立したものになります.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \quad , x_1(0) = \theta_0\\\frac{d x_2(t)}{dt} &=& - \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \quad , x_2(0) = 0\end{array}</math><br />
<br />
さらに,2つの状態変数を組にして,<br />
<br />
<math>\boldsymbol{x}(t) = \left(\begin{array}{c}x_1(t)\\x_2(t)\end{array}\right) \quad , \ \boldsymbol{x}_0 = \left(\begin{array}{c}\theta_0\\0\end{array}\right)</math><br />
<br />
のようにベクトル<math>\boldsymbol{x}(t)</math>で表現することで,最初の1階常微分方程式と同じ見た目になります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
ここで,<math>\boldsymbol{f}(\boldsymbol{x}(t), t)</math>は以下となります.<br />
<br />
<math>\boldsymbol{f}(\boldsymbol{x}(t), t) = \left(\begin{array}{c}x_2(t)\\- \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \end{array}\right)</math><br />
<br />
オイラー法も形式的に次のように表すことができます.<br />
<br />
<math>\boldsymbol{x}_{k+1} = \boldsymbol{x}_k + \boldsymbol{f}(\boldsymbol{x}_k, t_k) \, \Delta t</math><br />
<br />
この状態変数表現に基づいたOctaveによるシミュレーション・スクリプトは次のようになります.<br />
基本的には1次のシステムに対するオイラー法のスクリプトと同じですが,x_k やx_k1が2行×1列の列ベクトルになっていることが違いです.それに伴い,結果を格納する変数xが最終的に2行×サンプリング点数の行列になります.よって,シミュレーション結果として<math>\theta</math>だけをグラフ表示するには1行目だけを取り出す必要があり,そのため,plot関数の引数をx(1, : )としています.<br />
<br />
なお,この例ではサンプリングタイム<math>\Delta t</math>を0.01秒としていますが,これを0.05秒にするとシミュレーション結果が大きく異なることに気がつくと思います.さらに<math>\Delta t</math>を大きくしていくと,それは誤差が大きくなるというようなレベルではなく,全く異なったシミュレーション結果になってしまいます.このようにサンプリングタイムの選択は重要で,基本的には十分小さくとる必要があります.<br />
<br />
*オイラー法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== ルンゲ・クッタ法によるシミュレーション ==<br />
<br />
=== 2次のルンゲ・クッタ法(ホイン法) ===<br />
<br />
オイラー法は<math>t_k</math>における導関数の値<math>f(x_k, t_k)</math>を使って<math>x_{k+1}</math>を近似していました.ここでは.より精度を高めるために,複数点における導関数の値を利用することを考えます.<br />
<br />
先の図のように<math>t_k</math>における接線の傾き<math>f(x_k, t_k)</math>だけを考えるのではなく,<math>t_{k+1}</math>における傾き<math>f(x_{k+1}, t_{k+1})</math>も利用して,それらの平均をその区間での傾きとして利用すれば,精度が高まりそうです.その場合,<math>x_{k+1}</math>は以下のように考えられます.<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_{k+1}, t_{k+1}) ) \Delta t</math><br />
<br />
しかし,<math>x_{k+1}</math>を求める計算に,<math>x_{k+1}</math>が含まれているのは無理があるので,<math>x_{k+1}</math>をオイラー法で近似した<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \Delta t</math><br />
<br />
を代入すれば,<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_k + f(x_k, t_k) \Delta t, t_{k+1}) ) \Delta t</math><br />
<br />
とかけます.さらに,逐次計算しやすいように<math>k_1</math>, <math>k_2</math>という変数を定義して整理すれば,<br />
<br />
<math>\begin{array}{l l l}k_1 &=& f(x_k, t_k) \Delta t \\k_2 &=& f(x_k + k_1, t_{k+1}) \Delta t \\x_{k+1} &=& x_k + \frac{1}{2} ( k_1 + k_2 )\end{array}</math><br />
<br />
となります.これは2次のルンゲ・クッタ法の一種で,ホイン法または修正オイラー法と呼ばれるものです.2次のルンゲ・クッタ法としては,導関数を取る点として区間の中点を考えた中点法と呼ばれるものもあります.<br />
<br />
なお,オイラー法と同様に高階の微分方程式に対しても状態空間表現することでもちろん適用できます.<br />
<br />
<br />
[[ファイル: Rungehoine.png]]<br />
<br />
*2次のルンゲ・クッタ法(ホイン法)の原理<br />
<br />
前節でオイラー法を用いてシミュレーションした1階の微分方程式と,2階の微分方程式をそれぞれホイン法でシミュレーションするOctaveスクリプトは以下のようになります.2階の微分方程式の場合は<math>k_1</math>, <math>k_2</math>もベクトルになることに注意してください.<br />
<br />
また,オイラー法に比べてサンプリングタイムを大きくとっても精度よくシミュレーションできることを確かめてみてください.<br />
<br />
*ホイン法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = ( - x_k + 1) * dt; % k1 の計算<br />
k2 = ( - (x_k + k1) + 1) * dt; % k2 の計算<br />
x_k1 = x_k + ( k1 + k2) / 2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x);<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
xlabel('time (s)');<br />
ylabel('x ');<br />
<br />
*ホイン法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1; % x_k1の近似値を一旦計算<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_k1 = x_k + (k1 + k2) /2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
<br />
=== 4次のルンゲ・クッタ法 ===<br />
<br />
2次のルンゲ・クッタ法では2点における導関数の値を使いました.同様に3点,4点と点数を増やしていくことで原理的には精度がよくなります.しかし実用上,4点を利用した4次のルンゲ・クッタ法で十分なようです.そのため,単にルンゲ・クッタ法というと4次の場合を指すことが多いです.<br />
<br />
4次のルンゲ・クッタ法の計算手順は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \boldsymbol{f}(\boldsymbol{x}_k, t_k) \Delta t \\\boldsymbol{k}_2 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_3 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_4 &=& \boldsymbol{f}(\boldsymbol{x}_k + \boldsymbol{k}_3, t_{k+1}) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\end{array}</math><br />
<br />
<br />
先の単振り子のシミュレーションをルンゲ・クッタ法で計算するOctaveスクリプトを以下に示します.一つ目は上記の計算手順をストレートにベタ打ちしたもの.二つ目はforループと条件判断を利用して書いたものです.<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ベタ打ち)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1/2;<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_tmp = x_k + k2/2;<br />
k3 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k3 の計算<br />
x_tmp = x_k + k3;<br />
k4 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k4 の計算<br />
x_k1 = x_k + (k1 + 2 * k2 + 2 * k3 + k4 ) /6 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ループ利用)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
for j =1 : 1 : 4<br />
k_j = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k_jの計算<br />
if j == 3<br />
x_tmp =x_k + k_j ;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== 線形システムのシミュレーション ==<br />
<br />
=== システムの状態方程式 ===<br />
<br />
前に見たように,2階以上の常微分方程式は連立多元1階常微分方程式に変形することでオイラー法やルンゲ・クッタ法を適用することができます.ここでは,より一般的に動的システムを記述することを考えます.<br />
<br />
一般にシステム制御で取り扱う対象は,ある変数を入力,別のある変数を出力とした入出力システムと考えます.<br />
これまでの例では明示的に入出力を考えていませんでしたが,入力を<math>\boldsymbol{u}(t)</math>,出力を<math>\boldsymbol{y}(t)</math>としてシステムを表現すると一般的に次のように書くことができます.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{f}(\boldsymbol{x}(t), \boldsymbol{u}(t), t) \\\boldsymbol{y}(t) &=& \boldsymbol{g}(\boldsymbol{x}(t), \boldsymbol{u}(t), t)\end{array}</math><br />
<br />
一つ目の式は,先に述べた連立多元1階常微分方程式において入力<math>\boldsymbol{u}(t)</math>を明示的に表記したものです.二つ目は,出力方程式と呼ばれるもので,関数<math>\boldsymbol{g}()</math>を出力関数と呼びます.<br />
<br />
ここで,システムのパラメータ(係数)が時間によって変化せず(時不変),関数<math>\boldsymbol{f}()</math>と<math>\boldsymbol{g}()</math>が状態変数と入力変数の一次結合(定数倍して加算)だけで表される場合,そのシステムは線形時不変であるといいます.このとき,システムを表す方程式は以下のように行列を使って簡単に表されます.<br />
<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\ \boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
簡単な例として,粘性係数<math>D</math>のダンパーと弾性係数<math>K</math>のバネとで壁面に接続されている質量<math>M</math>の物体を考え,入力を物体への力<math>u(t)</math>,出力を物体の変位<math>y(t)</math>としたシステムの状態方程式を求めてみます.<br />
<br />
*慣性・粘性・弾性系<br />
<br />
[[ファイル: MDKsystem.png]]<br />
<br />
物体の運動方程式は,<br />
<br />
<math>M \frac{d^2 y(t)}{dt^2} = - D \frac{dy(t)}{dt} - K y(t) + u(t)</math><br />
<br />
となります.これを状態変数<math>x_1(t)</math>, <math>x_2(t)</math>を<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& y(t) \\x_2(t) &=& \frac{d y(t)}{dt}\end{array}</math><br />
<br />
とおくことで以下のような連立微分方程式に書き換えられます.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \\\frac{d x_2(t)}{dt} &=& - \frac{K}{M} x_1(t) - \frac{D}{M} x_2(t) + \frac{1}{M} u(t)\end{array}</math><br />
<br />
これを行列を用いて表現すると以下のようになります.<br />
<br />
<math>\frac{d}{dt} \left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right) =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
状態変数を組み合わせたものを状態ベクトル<math>\boldsymbol{x}(t)</math>とすれば,<br />
<br />
<math>\frac{d\boldsymbol{x}(t)}{dt} =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\boldsymbol{x}(t)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
となり,これが状態方程式になります.出力は,状態量<math>x_1(t)</math>そのものですから,<br />
<br />
<math>y(t) = \left(\begin{array}{cc}1 & 0\end{array}\right)\boldsymbol{x}(t)</math><br />
<br />
となります.<br />
<br />
以上から,状態空間表現の行列<math>\boldsymbol{A},\boldsymbol{B},\boldsymbol{C},\boldsymbol{D}</math>は以下のようになります.<br />
<br />
<math>\boldsymbol{A} = \left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right), \,\boldsymbol{B} = \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right), \, \boldsymbol{C} = \left(\begin{array}{cc}1 & 0\end{array}\right), \, \boldsymbol{D} = 0</math><br />
<br />
=== オイラー法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムをオイラー法でシミュレーションすることを考えます.出力方程式はダイナミクスを持たない(微分方程式ではない)ので,オイラー法を適用するのは状態方程式のほうだけです.<br />
<br />
状態方程式に対するオイラー法の演算は以下のように書き表せます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + ( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k ) \Delta t \\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
この式に基づいて先の慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例を示します.入力<math>\boldsymbol{u}(t)</math>を正弦波とした強制振動を想定しています.<br />
<br />
*オイラー法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = x_k + (A * x_k + B * u_k) * dt; % x_{k+1} の計算<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, y); % yをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('y');<br />
<br />
=== ルンゲ・クッタ法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムを(4次の)ルンゲ・クッタ法でシミュレーションする演算式は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \left( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k \right) \Delta t \\\boldsymbol{k}_2 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_3 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_4 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \boldsymbol{k}_3) + \boldsymbol{B} \boldsymbol{u}_{k+1} \right) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
ルンゲ・クッタ法の場合,時刻<math>t_k</math>だけでなく,<math>t_k + \frac{\Delta t}{2}</math>や<math>t_{k+1}</math>での入力<math>\boldsymbol{u}(t)</math>が必要になることに注意します.<br />
<br />
ルンゲ・クッタ法で慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例は以下の通りです.<br />
<br />
*ルンゲ・クッタ法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
u_k1 = 10 * sin(2*pi*1*(t+dt)); % u_{k+1}の計算.<br />
u_k12 = 10 * sin(2*pi*1*(t+dt/2)); % u_{k+1/2}の計算.<br />
u_tmp = u_k;<br />
for j =1 : 1 : 4<br />
k_j = ( A * x_tmp + B * u_k ) * dt; % k_j の計算<br />
if j == 3<br />
x_tmp = x_k + k_j ;<br />
u_tmp = u_k1;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
u_tmp = u_k12;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, y); % yをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== Octave関数を利用したシミュレーション ==<br />
<br />
=== 多段解法 ===<br />
これまで微分方程式の数値解法としてオイラー法とルンゲ・クッタ法について述べましたが,両手法とも<math>x_{k+1}</math>を求めるために状態量としては<math>x_k</math>だけを利用する方法でした(一段階法).しかし,<math>x_{k-1}</math>や<math>x_{k-2}</math>といった,より過去の情報も利用する多段階法という手法があります.複数の過去の情報を利用することで計算精度を上げることができるだけでなく,数値解法の安定性の点でも優れることがわかっています.すなわち,オイラー法やルンゲ・クッタ法では,サンプリング周期<math>\Delta t</math>を大きくとりすぎるとシミュレーション結果が発散してしまうことがありましたが,多段階法では発散しにくいのです.この性質は,時間のかかるシミュレーションをする前に<math>\Delta t</math>を大きめにとってラフなシミュレーションをすることができるので便利です.<br />
<br />
=== lsode関数の使用方法 ===<br />
<br />
一般に多段階法の計算アルゴリズムは複雑なので,1からプログラムを書くのはたいへんです.幸い,Octaveには微分方程式を数値的に解くためにlsodeという関数が用意されていて,この関数は代表的な多段解法である後退微分法(BDF法)やアダムス法を利用しています(オプションで指定できます.デフォルトはBDF法).<br />
<br />
以下のような常微分方程式の数値解をlsode関数で求めるための基本的な手順は次のようになります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
*1. まず,微分方程式を適当な関数名(例えばfnc)でOctaveのユーザ関数として定義します.もし解きたい微分方程式が2階以上なら,関数の引数xと戻り値xdotはそれぞれベクトルになります.<br />
<br />
function xdot = fnc(x, t)<br />
xdot = ・・・<br />
endfunction<br />
<br />
*2. 初期値を例えばx_0をいう変数名でセットします.<br />
*3. 数値解を求めたい時間範囲を,linspace関数などを利用してベクトル変数(例えば変数名t)として用意します.<br />
*4. 以下のようにlsode関数を呼び出すと,変数xに数値解が代入されます.このとき,xは列の数が状態変数の個数(次元),行の数が時間変数tの点数になります.<br />
<br />
x = lsode (fcn, x_0, t);<br />
<br />
<br />
先の単振り子の自由応答のシミュレーションをlsode関数を使って求めるスクリプト例を示します.<br />
<br />
Octaveでユーザ関数を定義するには,functionとendfunctionとで定義式を囲み,関数名と同じ名前で拡張子が.mのファイル(この例だとfnc.m)として保存するのが基本です.そして,そのファイルをカレントディレクトリまたはpathの通ったディレクトリに置いておけば,コマンドラインやその他のスクリプトファイルから呼び出すことができます.しかし,シミュレーション用のスクリプトと別ファイルでユーザ関数を定義することになり,管理が面倒になる可能性があります.<br />
<br />
そこで,1つのファイルにユーザ関数定義とシミュレーションのスクリプトを合わせることを考えます.ここで注意が必要です.Octaveはユーザ関数の定義はそれが呼び出される前にしておかなければなりません.よってファイルを1つにまとめる場合,functionとendfunctionで囲まれた部分はlsode関数より前になければなりません.しかし,ファイルの先頭に書いてしまうと,キーワードfunctionで始まるファイルであるということでOctaveがおせっかいにもファイル名が関数名と合わないとか言ってきてうまく実行できません.これを回避するには,関数の定義を先頭ではなくて,かつ,lsode関数より前の適当なところに書くか,ファイルの先頭に例えば1;といった無意味なコマンドを挿入し,その直後に関数定義をする方法をとります.ここで示したスクリプト例では前者の方法をとっています.<br />
<br />
<br />
*lsode関数を使った単振り子のシミュレーション1<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
なお,このスクリプト例では関数定義の中で質量<math>m</math>などの定数を定義しています.これらの定数は関数の外側で定義できた方が便利な場合が多いです.通常,関数内部で宣言した変数はローカル変数となり,外部とは名前が同じでも内容は異なるということになってしまうので,グローバルな変数として宣言する必要があります.それにはglobal命令を使います.その際に,関数内部と外部の両方で宣言する必要があるので注意が必要です.<br />
<br />
*lsode関数を使った単振り子のシミュレーション2<br />
<br />
global m l c; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
global m l c; % ここでも再びグローバル変数として宣言<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
=== lsode関数による線形システムのシミュレーション ===<br />
<br />
次に,状態空間表現された線形システムのシミュレーションをlsode関数を用いて行うスクリプト例を示します.システムが,次のような状態方程式と出力方程式で表されているとします.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\\boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
lsode関数で計算するのは状態方程式のほうだけです.その結果得られた状態変数ベクトル<math>\boldsymbol{x}</math>を用いて出力方程式に基づいて出力ベクトル<math>\boldsymbol{y}</math>を計算します.<br />
<br />
ここでは前述の慣性・粘性・弾性系の強制振動をlsode関数を用いてシミュレーションするスクリプト例を示します.このスクリプトで注意すべきなのは,入力<math>u(t)</math>の取り扱いです.<math>u(t)</math>はlsodeの内部では変数tの代数式として記述しますが,lsodeで得られた状態ベクトルを用いて出力yを計算する際には時間軸ベクトルtに対応したベクトルuとして必要になります.Octaveではsin関数などが引数にベクトルを受けると,要素ごとに関数をかけて同じサイズのベクトルを返しますのでそれを利用しています.<math>u(t)</math>の内容によっては,要素ごとの積算 .* や要素ごとの除算 ./ といった演算子が必要になるので注意です.<br />
<br />
*lsode関数を使った慣性・粘性・弾性系のシミュレーション<br />
<br />
global A B; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [0;<br />
0 ]; % 初期位置0, 初期速度0<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
A = [ 0 , 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
t = linspace(0,10,10/dt+1);<br />
<br />
function xdot = fnc(x, t)<br />
global A B; % ここでも再びグローバル変数として宣言<br />
u = 10 * sin(2*pi*1*t);<br />
xdot = A*x + B*u;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
u = 10 * sin(2*pi*1*t); % 時間ベクトルtに対応した入力ベクトルuの計算<br />
y = C * x '+ D * u; %出力方程式に基づいてyの計算<br />
<br />
plot(t, y); % yをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== 線形離散時間システムとしてのシミュレーション ==<br />
<br />
これまで常微分方程式の数値解法に基づいて動的システムのシミュレーション方法を考えてきましたが,シミュレーション対象が線形システムで,入力がサンプリング期間中一定値と考えてよい場合,線形離散時間システムとして扱うことで簡単にシミュレーションを行うことができます.<br />
<br />
前述の状態空間表現された線形連続時間システムの入力側にサンプラと零次ホールドをつけ,出力をサンプルしたシステムは,次のように離散時間システムとして表すことができます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{\Phi} \boldsymbol{x}_k + \boldsymbol{\Gamma} \boldsymbol{u}_k \\\boldsymbol{y}_k &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k\end{array}</math><br />
<br />
ここで,<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{\Phi} &=& e^{\boldsymbol{A} \Delta t} \\\boldsymbol{\Gamma} &=& \int_0 ^{\Delta t} e^{\boldsymbol{A} \tau}\boldsymbol{B} d\tau\end{array}</math><br />
<br />
です.<br />
<br />
ここで,<math>\boldsymbol{\Phi}</math>と<math>\boldsymbol{\Gamma}</math>が求まれば,離散時間システムの式を直接演算するだけで行えるので簡単です.<br />
<br />
連続時間システムから離散時間システムへの変換には,Octaveに用意されているc2d関数が利用できます.この関数はサンプル・ホールド付きのz変換か双一次変換のいずれかで離散化することができます(デフォルトはサンプル・ホールド).シミュレーションにはサンプル・ホールド付きのz変換を使います.<br />
<br />
次のスクリプトは,先の慣性・粘性・弾性系の強制振動を離散時間システムに変換した上でシミュレーションするものです.まず,ss関数で4つの行列による状態空間表現をOctave上のシステム行列表現に変換し,その上でc2d関数で離散化しています.シミュレーションの計算自体は離散時間システムの式を繰り返し演算しているだけです.<br />
<br />
=== 離散時間システムに変換した慣性・粘性・弾性系のシミュレーション ===<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
sys = ss(A, B, C, D); % systemマトリックスに変換<br />
sys_d = c2d(sys, dt); % 離散時間システムに変換(サンプルホールド付きz変換)<br />
[A_d, B_d, C_d, D_d] = sys2ss(sys_d); % 離散時間システムの各行列取り出し<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = A_d * x_k + B_d * u_k; % x_{k+1} の計算<br />
y_k = C_d * x_k + D_d * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, y); % yをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('y');</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3&diff=328
シミュレーション
2019-08-23T11:32:13Z
<p>Admin: /* 高次微分方程式の取り扱い */</p>
<hr />
<div>== この資料について ==<br />
<br />
本資料ではシステム制御の学習や研究に必要な動的システムのシミュレーション手法について説明します.シミュレーション環境は基本的にGNU Octaveを対象とします.<br />
<br />
シミュレーションとは,ある現象をそれを模擬した装置や計算機を利用して擬似的に再現し,予測や評価に利用することといえます.最近ではデジタル計算機を用いた数値シミュレーションが一般的です.<br />
数値シミュレーションを行うためには,現象の数学的モデルが必要になります.特に工学的な現象の場合,時間に関する微分方程式で表現できることが多いでしょう.その微分方程式を解くことができればシミュレーションが行えます.しかし,微分方程式の解析的な解(数式で表現される解)を求めることは一般的には難しいため,数値解(時間に対する数値の列)を求める手法が用いられます.<br />
<br />
この資料ではまず,最も基本的なオイラー法やより精度の高いルンゲ・クッタ法による微分方程式の数値解法をOctaveでのスクリプト例を示しながら説明します.次に,システム制御では基本となる線形システムの状態空間表現について述べ,オイラー法やルンゲ・クッタ法でシミュレ-ションするOctaveスプリプトを示します.<br />
最後に,より高度な数値解法が実装されているOctaveのlsode関数の利用方法について説明します.基礎はいいので手っ取り早くOctaveによるシミュレーションをしたいのなら,「Octave関数を利用したシミュレーション」の節だけを読めばいいでしょう.<br />
<br />
<br />
== オイラー法によるシミュレーション ==<br />
<br />
=== 一階常微分方程式 ===<br />
<br />
微分方程式とは,ある未知関数とその関数の導関数との関係が表されている方程式です.そのうち特に1変数の導関数で表されているものを常微分方程式といいます.システム制御に関わるシミュレーションでは時間に関する導関数で表される場合がほとんどでしょうから,常微分方程式が対象になります.さらに,導関数の階数(次数)が微分方程式の階数となります.<br />
<br />
ということで,これから取り扱う最も簡単な微分方程式は以下のような一階の常微分方程式となります.ここで<math>x(t)</math>が未知関数,<math>x_0</math>はその初期値です.<br />
<br />
<math>\frac{dx(t)}{dt} = f(x(t), t) \, , \quad x(0) = x_0</math><br />
<br />
<br />
もちろん実際の問題はより高階の常微分方程式が必要になりますが,この一階の微分方程式の数値解法を応用することで対応できます.<br />
<br />
<br />
=== オイラー法 ===<br />
<br />
微分方程式の数値解法の基本は,ある時刻<math>t_k</math>から微少な刻み幅<math>\Delta t</math>(サンプリング時間またはサンプリング周期ともいう)だけ時間がたった後の関数値<math>x(t_k + \Delta t)</math>を逐次求めていくことです.これをいかに精度よく(できるだけ少ない計算量で)求めるかが数値解法の善し悪しと言えます.<br />
<br />
オイラー法は以下のように<math>x(t_k + \Delta t)</math>のテイラー展開の最初の2項だけに基づきます.<br />
<br />
<math>\begin{array}{l l l} x(t_k + \Delta t) &=& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t + \frac{1}{2} \frac{d^2x}{dt^2}\bigg|_{t=t_k} \, \Delta t ^2 + \cdots \\ &\approx& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t \\ &\approx& x(t_k) + f(x(t_k), t_k) \, \Delta t \end{array}</math><br />
<br />
ここで,表記上の簡便性から,<math>x(t_k)</math>を<math>x_k</math>と表記することにし,<math>t_k + \Delta t</math>を<math>t_{k+1}</math>, <math>x(t_k + \Delta t)</math>を<math>x_{k+1}</math>などと表記することにします.この時オイラー法は以下のように表すことができます.<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \, \Delta t</math><br />
<br />
オイラー法による近似をグラフで示すと図のようになります.<br />
<br />
[[ファイル:Euler.png]]<br />
<br />
次のサンプリング時刻における<math>x(t)</math>の値,すなわち<math>x_{k+1}</math>を接線で一次近似して求めていると解釈できます.もとの微分方程式から,接線の傾きが<math>f(x_k, t_k)</math>ですから,それに<math>\Delta t</math>を乗じた物を<math>x_{k}</math>に加えることで<math>x_{k+1}</math>を求めています.図をみると誤差(error)が大きくて,本当に使えるのか心配ですが,<math>\Delta t</math>をできるだけ小さくすれば誤差を少なくできます.しかし,<math>\Delta t</math>を小さくすると,ある期間(例えば10秒間とか)のシミュレーションをするのにそれだけ計算回数が増えることになるので注意が必要です.<br />
<br />
図では<math>x_k</math>が真値と一致している場合で書きましたが,実際はそうとも限りません.初期値<math>x_0</math>からスタートして,オイラー法を繰り返し使った近似計算は次図のようなイメージになります.<math>\Delta t</math>をできるだけ小さくとって,真値から離れすぎないようにする必要があります.なお,この図では近似のための接線を真値のグラフ<math>x(t)</math>に接するように引いていますが,<math>x_k</math>が真値からずれている場合は図の通りにはなりません.あくまでイメージです.<br />
<br />
[[ファイル:Euler2.png]]<br />
<br />
=== Octaveによる実現 ===<br />
<br />
次の微分方程式を例題に,Octaveでオイラー法によるシミュレーションを行うスクリプトを考えてみます.<br />
<br />
<math>\frac{dx}{dt} = - x + 1, \quad x_0 = 0</math><br />
<br />
オイラー法を適用すれば<br />
<br />
<math>x_{k+1} = x_k + (-x_k + 1) \, \Delta t</math><br />
<br />
とかけるので,繰り返しこの計算を行うOctaveスクリプトの例は以下のようになります.<br />
<br />
*オイラー法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + ( - x_k + 1) * dt ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x);<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
xlabel('time (s)');<br />
ylabel('x');<br />
<br />
Octaveにおける変数名の都合上,<math>x_k</math>をx_k,<math>x_{k+1}</math>をx_k1としています.<br />
また,シミュレーション結果と時刻を格納する変数をそれぞれx,timとして用意し,<math>x_k</math>と<math>t</math>を行の末尾に追加しています.また,forループで繰り返す際に,次回の計算のために今回の<math>x_{k+1}</math>を次回の<math>x_k</math>として繰り上げておくことが必要です.<br />
<br />
== 高次システムのシミュレーション ==<br />
<br />
=== 高次微分方程式の取り扱い ===<br />
<br />
これまでは1階(次)の微分方程式を扱ってきましたが,現実には2次以上のシステムのシミュレーションが必要になることが多いと思います.その場合は,変数変換をすることで連立多元1階常微分方程式に変形して考えます.<br />
<br />
例えば,次のような微分方程式を考えます.これは,長さ<math>l</math>の軽い棒の先に質量<math>m</math>の重りがついた単振り子を初期角度<math>\theta_0</math>の位置から初速度0で放す状況を表しています(下図参照).ここで振り子は空気その他から速度に比例した抵抗を受けるものとし,その係数を<math>c</math>としています.<br />
<br />
<math>\frac{d^2 \theta(t)}{d t^2} = - \frac{g}{l} \sin \theta(t) - \frac{c}{m} \frac{d\theta(t)}{dt} \quad , \theta(0) = \theta_0 \quad , \frac{d\theta(t)}{dt} \bigg|_{t=0} = 0</math><br />
<br />
[[ファイル:pendulum.png]]<br />
<br />
このような2次のシステムの場合,次のような2個の変数を新たに定義します.これらを状態変数と呼びます.<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& \theta(t)\\x_2(t) &=& \frac{d \theta(t)}{dt}\end{array}</math><br />
<br />
状態変数を用いてもとの微分方程式を表すと以下のように1階の微分方程式が2本連立したものになります.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \quad , x_1(0) = \theta_0\\\frac{d x_2(t)}{dt} &=& - \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \quad , x_2(0) = 0\end{array}</math><br />
<br />
さらに,2つの状態変数を組にして,<br />
<br />
<math>\boldsymbol{x}(t) = \left(\begin{array}{c}x_1(t)\\x_2(t)\end{array}\right) \quad , \ \boldsymbol{x}_0 = \left(\begin{array}{c}\theta_0\\0\end{array}\right)</math><br />
<br />
のようにベクトル<math>\boldsymbol{x}(t)</math>で表現することで,最初の1階常微分方程式と同じ見た目になります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
ここで,<math>\boldsymbol{f}(\boldsymbol{x}(t), t)</math>は以下となります.<br />
<br />
<math>\boldsymbol{f}(\boldsymbol{x}(t), t) = \left(\begin{array}{c}x_2(t)\\- \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \end{array}\right)</math><br />
<br />
オイラー法も形式的に次のように表すことができます.<br />
<br />
<math>\boldsymbol{x}_{k+1} = \boldsymbol{x}_k + \boldsymbol{f}(\boldsymbol{x}_k, t_k) \, \Delta t</math><br />
<br />
この状態変数表現に基づいたOctaveによるシミュレーション・スクリプトは次のようになります.<br />
基本的には1次のシステムに対するオイラー法のスクリプトと同じですが,x_k やx_k1が2行×1列の列ベクトルになっていることが違いです.それに伴い,結果を格納する変数xが最終的に2行×サンプリング点数の行列になります.よって,シミュレーション結果として<math>\theta</math>だけをグラフ表示するには1行目だけを取り出す必要があり,そのため,plot関数の引数をx(1, : )としています.<br />
<br />
なお,この例ではサンプリングタイム<math>\Delta t</math>を0.01秒としていますが,これを0.05秒にするとシミュレーション結果が大きく異なることに気がつくと思います.さらに<math>\Delta t</math>を大きくしていくと,それは誤差が大きくなるというようなレベルではなく,全く異なったシミュレーション結果になってしまいます.このようにサンプリングタイムの選択は重要で,基本的には十分小さくとる必要があります.<br />
<br />
*オイラー法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
grid on;<br />
axis([0 10 -1 1]);<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== ルンゲ・クッタ法によるシミュレーション ==<br />
<br />
=== 2次のルンゲ・クッタ法(ホイン法) ===<br />
<br />
オイラー法は<math>t_k</math>における導関数の値<math>f(x_k, t_k)</math>を使って<math>x_{k+1}</math>を近似していました.ここでは.より精度を高めるために,複数点における導関数の値を利用することを考えます.<br />
<br />
先の図のように<math>t_k</math>における接線の傾き<math>f(x_k, t_k)</math>だけを考えるのではなく,<math>t_{k+1}</math>における傾き<math>f(x_{k+1}, t_{k+1})</math>も利用して,それらの平均をその区間での傾きとして利用すれば,精度が高まりそうです.その場合,<math>x_{k+1}</math>は以下のように考えられます.<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_{k+1}, t_{k+1}) ) \Delta t</math><br />
<br />
しかし,<math>x_{k+1}</math>を求める計算に,<math>x_{k+1}</math>が含まれているのは無理があるので,<math>x_{k+1}</math>をオイラー法で近似した<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \Delta t</math><br />
<br />
を代入すれば,<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_k + f(x_k, t_k) \Delta t, t_{k+1}) ) \Delta t</math><br />
<br />
とかけます.さらに,逐次計算しやすいように<math>k_1</math>, <math>k_2</math>という変数を定義して整理すれば,<br />
<br />
<math>\begin{array}{l l l}k_1 &=& f(x_k, t_k) \Delta t \\k_2 &=& f(x_k + k_1, t_{k+1}) \Delta t \\x_{k+1} &=& x_k + \frac{1}{2} ( k_1 + k_2 )\end{array}</math><br />
<br />
となります.これは2次のルンゲ・クッタ法の一種で,ホイン法または修正オイラー法と呼ばれるものです.2次のルンゲ・クッタ法としては,導関数を取る点として区間の中点を考えた中点法と呼ばれるものもあります.<br />
<br />
なお,オイラー法と同様に高階の微分方程式に対しても状態空間表現することでもちろん適用できます.<br />
<br />
<br />
[[ファイル: Rungehoine.png]]<br />
<br />
*2次のルンゲ・クッタ法(ホイン法)の原理<br />
<br />
前節でオイラー法を用いてシミュレーションした1階の微分方程式と,2階の微分方程式をそれぞれホイン法でシミュレーションするOctaveスクリプトは以下のようになります.2階の微分方程式の場合は<math>k_1</math>, <math>k_2</math>もベクトルになることに注意してください.<br />
<br />
また,オイラー法に比べてサンプリングタイムを大きくとっても精度よくシミュレーションできることを確かめてみてください.<br />
<br />
*ホイン法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = ( - x_k + 1) * dt; % k1 の計算<br />
k2 = ( - (x_k + k1) + 1) * dt; % k2 の計算<br />
x_k1 = x_k + ( k1 + k2) / 2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
plot(tim, x);<br />
xlabel('time (s)');<br />
ylabel('x ');<br />
<br />
*ホイン法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1; % x_k1の近似値を一旦計算<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_k1 = x_k + (k1 + k2) /2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
<br />
=== 4次のルンゲ・クッタ法 ===<br />
<br />
2次のルンゲ・クッタ法では2点における導関数の値を使いました.同様に3点,4点と点数を増やしていくことで原理的には精度がよくなります.しかし実用上,4点を利用した4次のルンゲ・クッタ法で十分なようです.そのため,単にルンゲ・クッタ法というと4次の場合を指すことが多いです.<br />
<br />
4次のルンゲ・クッタ法の計算手順は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \boldsymbol{f}(\boldsymbol{x}_k, t_k) \Delta t \\\boldsymbol{k}_2 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_3 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_4 &=& \boldsymbol{f}(\boldsymbol{x}_k + \boldsymbol{k}_3, t_{k+1}) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\end{array}</math><br />
<br />
<br />
先の単振り子のシミュレーションをルンゲ・クッタ法で計算するOctaveスクリプトを以下に示します.一つ目は上記の計算手順をストレートにベタ打ちしたもの.二つ目はforループと条件判断を利用して書いたものです.<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ベタ打ち)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1/2;<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_tmp = x_k + k2/2;<br />
k3 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k3 の計算<br />
x_tmp = x_k + k3;<br />
k4 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k4 の計算<br />
x_k1 = x_k + (k1 + 2 * k2 + 2 * k3 + k4 ) /6 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ループ利用)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
for j =1 : 1 : 4<br />
k_j = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k_jの計算<br />
if j == 3<br />
x_tmp =x_k + k_j ;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== 線形システムのシミュレーション ==<br />
<br />
=== システムの状態方程式 ===<br />
<br />
前に見たように,2階以上の常微分方程式は連立多元1階常微分方程式に変形することでオイラー法やルンゲ・クッタ法を適用することができます.ここでは,より一般的に動的システムを記述することを考えます.<br />
<br />
一般にシステム制御で取り扱う対象は,ある変数を入力,別のある変数を出力とした入出力システムと考えます.<br />
これまでの例では明示的に入出力を考えていませんでしたが,入力を<math>\boldsymbol{u}(t)</math>,出力を<math>\boldsymbol{y}(t)</math>としてシステムを表現すると一般的に次のように書くことができます.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{f}(\boldsymbol{x}(t), \boldsymbol{u}(t), t) \\\boldsymbol{y}(t) &=& \boldsymbol{g}(\boldsymbol{x}(t), \boldsymbol{u}(t), t)\end{array}</math><br />
<br />
一つ目の式は,先に述べた連立多元1階常微分方程式において入力<math>\boldsymbol{u}(t)</math>を明示的に表記したものです.二つ目は,出力方程式と呼ばれるもので,関数<math>\boldsymbol{g}()</math>を出力関数と呼びます.<br />
<br />
ここで,システムのパラメータ(係数)が時間によって変化せず(時不変),関数<math>\boldsymbol{f}()</math>と<math>\boldsymbol{g}()</math>が状態変数と入力変数の一次結合(定数倍して加算)だけで表される場合,そのシステムは線形時不変であるといいます.このとき,システムを表す方程式は以下のように行列を使って簡単に表されます.<br />
<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\ \boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
簡単な例として,粘性係数<math>D</math>のダンパーと弾性係数<math>K</math>のバネとで壁面に接続されている質量<math>M</math>の物体を考え,入力を物体への力<math>u(t)</math>,出力を物体の変位<math>y(t)</math>としたシステムの状態方程式を求めてみます.<br />
<br />
*慣性・粘性・弾性系<br />
<br />
[[ファイル: MDKsystem.png]]<br />
<br />
物体の運動方程式は,<br />
<br />
<math>M \frac{d^2 y(t)}{dt^2} = - D \frac{dy(t)}{dt} - K y(t) + u(t)</math><br />
<br />
となります.これを状態変数<math>x_1(t)</math>, <math>x_2(t)</math>を<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& y(t) \\x_2(t) &=& \frac{d y(t)}{dt}\end{array}</math><br />
<br />
とおくことで以下のような連立微分方程式に書き換えられます.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \\\frac{d x_2(t)}{dt} &=& - \frac{K}{M} x_1(t) - \frac{D}{M} x_2(t) + \frac{1}{M} u(t)\end{array}</math><br />
<br />
これを行列を用いて表現すると以下のようになります.<br />
<br />
<math>\frac{d}{dt} \left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right) =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
状態変数を組み合わせたものを状態ベクトル<math>\boldsymbol{x}(t)</math>とすれば,<br />
<br />
<math>\frac{d\boldsymbol{x}(t)}{dt} =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\boldsymbol{x}(t)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
となり,これが状態方程式になります.出力は,状態量<math>x_1(t)</math>そのものですから,<br />
<br />
<math>y(t) = \left(\begin{array}{cc}1 & 0\end{array}\right)\boldsymbol{x}(t)</math><br />
<br />
となります.<br />
<br />
以上から,状態空間表現の行列<math>\boldsymbol{A},\boldsymbol{B},\boldsymbol{C},\boldsymbol{D}</math>は以下のようになります.<br />
<br />
<math>\boldsymbol{A} = \left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right), \,\boldsymbol{B} = \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right), \, \boldsymbol{C} = \left(\begin{array}{cc}1 & 0\end{array}\right), \, \boldsymbol{D} = 0</math><br />
<br />
=== オイラー法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムをオイラー法でシミュレーションすることを考えます.出力方程式はダイナミクスを持たない(微分方程式ではない)ので,オイラー法を適用するのは状態方程式のほうだけです.<br />
<br />
状態方程式に対するオイラー法の演算は以下のように書き表せます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + ( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k ) \Delta t \\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
この式に基づいて先の慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例を示します.入力<math>\boldsymbol{u}(t)</math>を正弦波とした強制振動を想定しています.<br />
<br />
*オイラー法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = x_k + (A * x_k + B * u_k) * dt; % x_{k+1} の計算<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y');<br />
<br />
=== ルンゲ・クッタ法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムを(4次の)ルンゲ・クッタ法でシミュレーションする演算式は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \left( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k \right) \Delta t \\\boldsymbol{k}_2 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_3 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_4 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \boldsymbol{k}_3) + \boldsymbol{B} \boldsymbol{u}_{k+1} \right) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
ルンゲ・クッタ法の場合,時刻<math>t_k</math>だけでなく,<math>t_k + \frac{\Delta t}{2}</math>や<math>t_{k+1}</math>での入力<math>\boldsymbol{u}(t)</math>が必要になることに注意します.<br />
<br />
ルンゲ・クッタ法で慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例は以下の通りです.<br />
<br />
*ルンゲ・クッタ法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
u_k1 = 10 * sin(2*pi*1*(t+dt)); % u_{k+1}の計算.<br />
u_k12 = 10 * sin(2*pi*1*(t+dt/2)); % u_{k+1/2}の計算.<br />
u_tmp = u_k;<br />
for j =1 : 1 : 4<br />
k_j = ( A * x_tmp + B * u_k ) * dt; % k_j の計算<br />
if j == 3<br />
x_tmp = x_k + k_j ;<br />
u_tmp = u_k1;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
u_tmp = u_k12;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== Octave関数を利用したシミュレーション ==<br />
<br />
=== 多段解法 ===<br />
これまで微分方程式の数値解法としてオイラー法とルンゲ・クッタ法について述べましたが,両手法とも<math>x_{k+1}</math>を求めるために状態量としては<math>x_k</math>だけを利用する方法でした(一段階法).しかし,<math>x_{k-1}</math>や<math>x_{k-2}</math>といった,より過去の情報も利用する多段階法という手法があります.複数の過去の情報を利用することで計算精度を上げることができるだけでなく,数値解法の安定性の点でも優れることがわかっています.すなわち,オイラー法やルンゲ・クッタ法では,サンプリング周期<math>\Delta t</math>を大きくとりすぎるとシミュレーション結果が発散してしまうことがありましたが,多段階法では発散しにくいのです.この性質は,時間のかかるシミュレーションをする前に<math>\Delta t</math>を大きめにとってラフなシミュレーションをすることができるので便利です.<br />
<br />
=== lsode関数の使用方法 ===<br />
<br />
一般に多段階法の計算アルゴリズムは複雑なので,1からプログラムを書くのはたいへんです.幸い,Octaveには微分方程式を数値的に解くためにlsodeという関数が用意されていて,この関数は代表的な多段解法である後退微分法(BDF法)やアダムス法を利用しています(オプションで指定できます.デフォルトはBDF法).<br />
<br />
以下のような常微分方程式の数値解をlsode関数で求めるための基本的な手順は次のようになります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
*1. まず,微分方程式を適当な関数名(例えばfnc)でOctaveのユーザ関数として定義します.もし解きたい微分方程式が2階以上なら,関数の引数xと戻り値xdotはそれぞれベクトルになります.<br />
<br />
function xdot = fnc(x, t)<br />
xdot = ・・・<br />
endfunction<br />
<br />
*2. 初期値を例えばx_0をいう変数名でセットします.<br />
*3. 数値解を求めたい時間範囲を,linspace関数などを利用してベクトル変数(例えば変数名t)として用意します.<br />
*4. 以下のようにlsode関数を呼び出すと,変数xに数値解が代入されます.このとき,xは列の数が状態変数の個数(次元),行の数が時間変数tの点数になります.<br />
<br />
x = lsode (fcn, x_0, t);<br />
<br />
<br />
先の単振り子の自由応答のシミュレーションをlsode関数を使って求めるスクリプト例を示します.<br />
<br />
Octaveでユーザ関数を定義するには,functionとendfunctionとで定義式を囲み,関数名と同じ名前で拡張子が.mのファイル(この例だとfnc.m)として保存するのが基本です.そして,そのファイルをカレントディレクトリまたはpathの通ったディレクトリに置いておけば,コマンドラインやその他のスクリプトファイルから呼び出すことができます.しかし,シミュレーション用のスクリプトと別ファイルでユーザ関数を定義することになり,管理が面倒になる可能性があります.<br />
<br />
そこで,1つのファイルにユーザ関数定義とシミュレーションのスクリプトを合わせることを考えます.ここで注意が必要です.Octaveはユーザ関数の定義はそれが呼び出される前にしておかなければなりません.よってファイルを1つにまとめる場合,functionとendfunctionで囲まれた部分はlsode関数より前になければなりません.しかし,ファイルの先頭に書いてしまうと,キーワードfunctionで始まるファイルであるということでOctaveがおせっかいにもファイル名が関数名と合わないとか言ってきてうまく実行できません.これを回避するには,関数の定義を先頭ではなくて,かつ,lsode関数より前の適当なところに書くか,ファイルの先頭に例えば1;といった無意味なコマンドを挿入し,その直後に関数定義をする方法をとります.ここで示したスクリプト例では前者の方法をとっています.<br />
<br />
<br />
*lsode関数を使った単振り子のシミュレーション1<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
なお,このスクリプト例では関数定義の中で質量<math>m</math>などの定数を定義しています.これらの定数は関数の外側で定義できた方が便利な場合が多いです.通常,関数内部で宣言した変数はローカル変数となり,外部とは名前が同じでも内容は異なるということになってしまうので,グローバルな変数として宣言する必要があります.それにはglobal命令を使います.その際に,関数内部と外部の両方で宣言する必要があるので注意が必要です.<br />
<br />
*lsode関数を使った単振り子のシミュレーション2<br />
<br />
global m l c; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
global m l c; % ここでも再びグローバル変数として宣言<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
=== lsode関数による線形システムのシミュレーション ===<br />
<br />
次に,状態空間表現された線形システムのシミュレーションをlsode関数を用いて行うスクリプト例を示します.システムが,次のような状態方程式と出力方程式で表されているとします.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\\boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
lsode関数で計算するのは状態方程式のほうだけです.その結果得られた状態変数ベクトル<math>\boldsymbol{x}</math>を用いて出力方程式に基づいて出力ベクトル<math>\boldsymbol{y}</math>を計算します.<br />
<br />
ここでは前述の慣性・粘性・弾性系の強制振動をlsode関数を用いてシミュレーションするスクリプト例を示します.このスクリプトで注意すべきなのは,入力<math>u(t)</math>の取り扱いです.<math>u(t)</math>はlsodeの内部では変数tの代数式として記述しますが,lsodeで得られた状態ベクトルを用いて出力yを計算する際には時間軸ベクトルtに対応したベクトルuとして必要になります.Octaveではsin関数などが引数にベクトルを受けると,要素ごとに関数をかけて同じサイズのベクトルを返しますのでそれを利用しています.<math>u(t)</math>の内容によっては,要素ごとの積算 .* や要素ごとの除算 ./ といった演算子が必要になるので注意です.<br />
<br />
*lsode関数を使った慣性・粘性・弾性系のシミュレーション<br />
<br />
global A B; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [0;<br />
0 ]; % 初期位置0, 初期速度0<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
A = [ 0 , 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
t = linspace(0,10,10/dt+1);<br />
<br />
function xdot = fnc(x, t)<br />
global A B; % ここでも再びグローバル変数として宣言<br />
u = 10 * sin(2*pi*1*t);<br />
xdot = A*x + B*u;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
u = 10 * sin(2*pi*1*t); % 時間ベクトルtに対応した入力ベクトルuの計算<br />
y = C * x '+ D * u; %出力方程式に基づいてyの計算<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== 線形離散時間システムとしてのシミュレーション ==<br />
<br />
これまで常微分方程式の数値解法に基づいて動的システムのシミュレーション方法を考えてきましたが,シミュレーション対象が線形システムで,入力がサンプリング期間中一定値と考えてよい場合,線形離散時間システムとして扱うことで簡単にシミュレーションを行うことができます.<br />
<br />
前述の状態空間表現された線形連続時間システムの入力側にサンプラと零次ホールドをつけ,出力をサンプルしたシステムは,次のように離散時間システムとして表すことができます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{\Phi} \boldsymbol{x}_k + \boldsymbol{\Gamma} \boldsymbol{u}_k \\\boldsymbol{y}_k &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k\end{array}</math><br />
<br />
ここで,<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{\Phi} &=& e^{\boldsymbol{A} \Delta t} \\\boldsymbol{\Gamma} &=& \int_0 ^{\Delta t} e^{\boldsymbol{A} \tau}\boldsymbol{B} d\tau\end{array}</math><br />
<br />
です.<br />
<br />
ここで,<math>\boldsymbol{\Phi}</math>と<math>\boldsymbol{\Gamma}</math>が求まれば,離散時間システムの式を直接演算するだけで行えるので簡単です.<br />
<br />
連続時間システムから離散時間システムへの変換には,Octaveに用意されているc2d関数が利用できます.この関数はサンプル・ホールド付きのz変換か双一次変換のいずれかで離散化することができます(デフォルトはサンプル・ホールド).シミュレーションにはサンプル・ホールド付きのz変換を使います.<br />
<br />
次のスクリプトは,先の慣性・粘性・弾性系の強制振動を離散時間システムに変換した上でシミュレーションするものです.まず,ss関数で4つの行列による状態空間表現をOctave上のシステム行列表現に変換し,その上でc2d関数で離散化しています.シミュレーションの計算自体は離散時間システムの式を繰り返し演算しているだけです.<br />
<br />
=== 離散時間システムに変換した慣性・粘性・弾性系のシミュレーション ===<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
sys = ss(A, B, C, D); % systemマトリックスに変換<br />
sys_d = c2d(sys, dt); % 離散時間システムに変換(サンプルホールド付きz変換)<br />
[A_d, B_d, C_d, D_d] = sys2ss(sys_d); % 離散時間システムの各行列取り出し<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = A_d * x_k + B_d * u_k; % x_{k+1} の計算<br />
y_k = C_d * x_k + D_d * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y');</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%82%B7%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3&diff=327
シミュレーション
2019-08-23T11:31:43Z
<p>Admin: /* Octaveによる実現 */</p>
<hr />
<div>== この資料について ==<br />
<br />
本資料ではシステム制御の学習や研究に必要な動的システムのシミュレーション手法について説明します.シミュレーション環境は基本的にGNU Octaveを対象とします.<br />
<br />
シミュレーションとは,ある現象をそれを模擬した装置や計算機を利用して擬似的に再現し,予測や評価に利用することといえます.最近ではデジタル計算機を用いた数値シミュレーションが一般的です.<br />
数値シミュレーションを行うためには,現象の数学的モデルが必要になります.特に工学的な現象の場合,時間に関する微分方程式で表現できることが多いでしょう.その微分方程式を解くことができればシミュレーションが行えます.しかし,微分方程式の解析的な解(数式で表現される解)を求めることは一般的には難しいため,数値解(時間に対する数値の列)を求める手法が用いられます.<br />
<br />
この資料ではまず,最も基本的なオイラー法やより精度の高いルンゲ・クッタ法による微分方程式の数値解法をOctaveでのスクリプト例を示しながら説明します.次に,システム制御では基本となる線形システムの状態空間表現について述べ,オイラー法やルンゲ・クッタ法でシミュレ-ションするOctaveスプリプトを示します.<br />
最後に,より高度な数値解法が実装されているOctaveのlsode関数の利用方法について説明します.基礎はいいので手っ取り早くOctaveによるシミュレーションをしたいのなら,「Octave関数を利用したシミュレーション」の節だけを読めばいいでしょう.<br />
<br />
<br />
== オイラー法によるシミュレーション ==<br />
<br />
=== 一階常微分方程式 ===<br />
<br />
微分方程式とは,ある未知関数とその関数の導関数との関係が表されている方程式です.そのうち特に1変数の導関数で表されているものを常微分方程式といいます.システム制御に関わるシミュレーションでは時間に関する導関数で表される場合がほとんどでしょうから,常微分方程式が対象になります.さらに,導関数の階数(次数)が微分方程式の階数となります.<br />
<br />
ということで,これから取り扱う最も簡単な微分方程式は以下のような一階の常微分方程式となります.ここで<math>x(t)</math>が未知関数,<math>x_0</math>はその初期値です.<br />
<br />
<math>\frac{dx(t)}{dt} = f(x(t), t) \, , \quad x(0) = x_0</math><br />
<br />
<br />
もちろん実際の問題はより高階の常微分方程式が必要になりますが,この一階の微分方程式の数値解法を応用することで対応できます.<br />
<br />
<br />
=== オイラー法 ===<br />
<br />
微分方程式の数値解法の基本は,ある時刻<math>t_k</math>から微少な刻み幅<math>\Delta t</math>(サンプリング時間またはサンプリング周期ともいう)だけ時間がたった後の関数値<math>x(t_k + \Delta t)</math>を逐次求めていくことです.これをいかに精度よく(できるだけ少ない計算量で)求めるかが数値解法の善し悪しと言えます.<br />
<br />
オイラー法は以下のように<math>x(t_k + \Delta t)</math>のテイラー展開の最初の2項だけに基づきます.<br />
<br />
<math>\begin{array}{l l l} x(t_k + \Delta t) &=& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t + \frac{1}{2} \frac{d^2x}{dt^2}\bigg|_{t=t_k} \, \Delta t ^2 + \cdots \\ &\approx& x(t_k) + \frac{dx}{dt}\bigg|_{t=t_k} \, \Delta t \\ &\approx& x(t_k) + f(x(t_k), t_k) \, \Delta t \end{array}</math><br />
<br />
ここで,表記上の簡便性から,<math>x(t_k)</math>を<math>x_k</math>と表記することにし,<math>t_k + \Delta t</math>を<math>t_{k+1}</math>, <math>x(t_k + \Delta t)</math>を<math>x_{k+1}</math>などと表記することにします.この時オイラー法は以下のように表すことができます.<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \, \Delta t</math><br />
<br />
オイラー法による近似をグラフで示すと図のようになります.<br />
<br />
[[ファイル:Euler.png]]<br />
<br />
次のサンプリング時刻における<math>x(t)</math>の値,すなわち<math>x_{k+1}</math>を接線で一次近似して求めていると解釈できます.もとの微分方程式から,接線の傾きが<math>f(x_k, t_k)</math>ですから,それに<math>\Delta t</math>を乗じた物を<math>x_{k}</math>に加えることで<math>x_{k+1}</math>を求めています.図をみると誤差(error)が大きくて,本当に使えるのか心配ですが,<math>\Delta t</math>をできるだけ小さくすれば誤差を少なくできます.しかし,<math>\Delta t</math>を小さくすると,ある期間(例えば10秒間とか)のシミュレーションをするのにそれだけ計算回数が増えることになるので注意が必要です.<br />
<br />
図では<math>x_k</math>が真値と一致している場合で書きましたが,実際はそうとも限りません.初期値<math>x_0</math>からスタートして,オイラー法を繰り返し使った近似計算は次図のようなイメージになります.<math>\Delta t</math>をできるだけ小さくとって,真値から離れすぎないようにする必要があります.なお,この図では近似のための接線を真値のグラフ<math>x(t)</math>に接するように引いていますが,<math>x_k</math>が真値からずれている場合は図の通りにはなりません.あくまでイメージです.<br />
<br />
[[ファイル:Euler2.png]]<br />
<br />
=== Octaveによる実現 ===<br />
<br />
次の微分方程式を例題に,Octaveでオイラー法によるシミュレーションを行うスクリプトを考えてみます.<br />
<br />
<math>\frac{dx}{dt} = - x + 1, \quad x_0 = 0</math><br />
<br />
オイラー法を適用すれば<br />
<br />
<math>x_{k+1} = x_k + (-x_k + 1) \, \Delta t</math><br />
<br />
とかけるので,繰り返しこの計算を行うOctaveスクリプトの例は以下のようになります.<br />
<br />
*オイラー法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + ( - x_k + 1) * dt ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
plot(tim, x);<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
xlabel('time (s)');<br />
ylabel('x');<br />
<br />
Octaveにおける変数名の都合上,<math>x_k</math>をx_k,<math>x_{k+1}</math>をx_k1としています.<br />
また,シミュレーション結果と時刻を格納する変数をそれぞれx,timとして用意し,<math>x_k</math>と<math>t</math>を行の末尾に追加しています.また,forループで繰り返す際に,次回の計算のために今回の<math>x_{k+1}</math>を次回の<math>x_k</math>として繰り上げておくことが必要です.<br />
<br />
== 高次システムのシミュレーション ==<br />
<br />
=== 高次微分方程式の取り扱い ===<br />
<br />
これまでは1階(次)の微分方程式を扱ってきましたが,現実には2次以上のシステムのシミュレーションが必要になることが多いと思います.その場合は,変数変換をすることで連立多元1階常微分方程式に変形して考えます.<br />
<br />
例えば,次のような微分方程式を考えます.これは,長さ<math>l</math>の軽い棒の先に質量<math>m</math>の重りがついた単振り子を初期角度<math>\theta_0</math>の位置から初速度0で放す状況を表しています(下図参照).ここで振り子は空気その他から速度に比例した抵抗を受けるものとし,その係数を<math>c</math>としています.<br />
<br />
<math>\frac{d^2 \theta(t)}{d t^2} = - \frac{g}{l} \sin \theta(t) - \frac{c}{m} \frac{d\theta(t)}{dt} \quad , \theta(0) = \theta_0 \quad , \frac{d\theta(t)}{dt} \bigg|_{t=0} = 0</math><br />
<br />
[[ファイル:pendulum.png]]<br />
<br />
このような2次のシステムの場合,次のような2個の変数を新たに定義します.これらを状態変数と呼びます.<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& \theta(t)\\x_2(t) &=& \frac{d \theta(t)}{dt}\end{array}</math><br />
<br />
状態変数を用いてもとの微分方程式を表すと以下のように1階の微分方程式が2本連立したものになります.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \quad , x_1(0) = \theta_0\\\frac{d x_2(t)}{dt} &=& - \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \quad , x_2(0) = 0\end{array}</math><br />
<br />
さらに,2つの状態変数を組にして,<br />
<br />
<math>\boldsymbol{x}(t) = \left(\begin{array}{c}x_1(t)\\x_2(t)\end{array}\right) \quad , \ \boldsymbol{x}_0 = \left(\begin{array}{c}\theta_0\\0\end{array}\right)</math><br />
<br />
のようにベクトル<math>\boldsymbol{x}(t)</math>で表現することで,最初の1階常微分方程式と同じ見た目になります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
ここで,<math>\boldsymbol{f}(\boldsymbol{x}(t), t)</math>は以下となります.<br />
<br />
<math>\boldsymbol{f}(\boldsymbol{x}(t), t) = \left(\begin{array}{c}x_2(t)\\- \frac{g}{l} \sin x_1(t) - \frac{c}{m} x_2(t) \end{array}\right)</math><br />
<br />
オイラー法も形式的に次のように表すことができます.<br />
<br />
<math>\boldsymbol{x}_{k+1} = \boldsymbol{x}_k + \boldsymbol{f}(\boldsymbol{x}_k, t_k) \, \Delta t</math><br />
<br />
この状態変数表現に基づいたOctaveによるシミュレーション・スクリプトは次のようになります.<br />
基本的には1次のシステムに対するオイラー法のスクリプトと同じですが,x_k やx_k1が2行×1列の列ベクトルになっていることが違いです.それに伴い,結果を格納する変数xが最終的に2行×サンプリング点数の行列になります.よって,シミュレーション結果として<math>\theta</math>だけをグラフ表示するには1行目だけを取り出す必要があり,そのため,plot関数の引数をx(1, : )としています.<br />
<br />
なお,この例ではサンプリングタイム<math>\Delta t</math>を0.01秒としていますが,これを0.05秒にするとシミュレーション結果が大きく異なることに気がつくと思います.さらに<math>\Delta t</math>を大きくしていくと,それは誤差が大きくなるというようなレベルではなく,全く異なったシミュレーション結果になってしまいます.このようにサンプリングタイムの選択は重要で,基本的には十分小さくとる必要があります.<br />
<br />
*オイラー法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k + [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== ルンゲ・クッタ法によるシミュレーション ==<br />
<br />
=== 2次のルンゲ・クッタ法(ホイン法) ===<br />
<br />
オイラー法は<math>t_k</math>における導関数の値<math>f(x_k, t_k)</math>を使って<math>x_{k+1}</math>を近似していました.ここでは.より精度を高めるために,複数点における導関数の値を利用することを考えます.<br />
<br />
先の図のように<math>t_k</math>における接線の傾き<math>f(x_k, t_k)</math>だけを考えるのではなく,<math>t_{k+1}</math>における傾き<math>f(x_{k+1}, t_{k+1})</math>も利用して,それらの平均をその区間での傾きとして利用すれば,精度が高まりそうです.その場合,<math>x_{k+1}</math>は以下のように考えられます.<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_{k+1}, t_{k+1}) ) \Delta t</math><br />
<br />
しかし,<math>x_{k+1}</math>を求める計算に,<math>x_{k+1}</math>が含まれているのは無理があるので,<math>x_{k+1}</math>をオイラー法で近似した<br />
<br />
<math>x_{k+1} = x_k + f(x_k, t_k) \Delta t</math><br />
<br />
を代入すれば,<br />
<br />
<math>x_{k+1} = x_k + \frac{1}{2} ( f(x_k, t_k) + f(x_k + f(x_k, t_k) \Delta t, t_{k+1}) ) \Delta t</math><br />
<br />
とかけます.さらに,逐次計算しやすいように<math>k_1</math>, <math>k_2</math>という変数を定義して整理すれば,<br />
<br />
<math>\begin{array}{l l l}k_1 &=& f(x_k, t_k) \Delta t \\k_2 &=& f(x_k + k_1, t_{k+1}) \Delta t \\x_{k+1} &=& x_k + \frac{1}{2} ( k_1 + k_2 )\end{array}</math><br />
<br />
となります.これは2次のルンゲ・クッタ法の一種で,ホイン法または修正オイラー法と呼ばれるものです.2次のルンゲ・クッタ法としては,導関数を取る点として区間の中点を考えた中点法と呼ばれるものもあります.<br />
<br />
なお,オイラー法と同様に高階の微分方程式に対しても状態空間表現することでもちろん適用できます.<br />
<br />
<br />
[[ファイル: Rungehoine.png]]<br />
<br />
*2次のルンゲ・クッタ法(ホイン法)の原理<br />
<br />
前節でオイラー法を用いてシミュレーションした1階の微分方程式と,2階の微分方程式をそれぞれホイン法でシミュレーションするOctaveスクリプトは以下のようになります.2階の微分方程式の場合は<math>k_1</math>, <math>k_2</math>もベクトルになることに注意してください.<br />
<br />
また,オイラー法に比べてサンプリングタイムを大きくとっても精度よくシミュレーションできることを確かめてみてください.<br />
<br />
*ホイン法による1階微分方程式のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_k = 0; % xの初期値<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = ( - x_k + 1) * dt; % k1 の計算<br />
k2 = ( - (x_k + k1) + 1) * dt; % k2 の計算<br />
x_k1 = x_k + ( k1 + k2) / 2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 0 1.5]);<br />
plot(tim, x);<br />
xlabel('time (s)');<br />
ylabel('x ');<br />
<br />
*ホイン法による単振り子のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1; % x_k1の近似値を一旦計算<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_k1 = x_k + (k1 + k2) /2 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
<br />
=== 4次のルンゲ・クッタ法 ===<br />
<br />
2次のルンゲ・クッタ法では2点における導関数の値を使いました.同様に3点,4点と点数を増やしていくことで原理的には精度がよくなります.しかし実用上,4点を利用した4次のルンゲ・クッタ法で十分なようです.そのため,単にルンゲ・クッタ法というと4次の場合を指すことが多いです.<br />
<br />
4次のルンゲ・クッタ法の計算手順は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \boldsymbol{f}(\boldsymbol{x}_k, t_k) \Delta t \\\boldsymbol{k}_2 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_3 &=& \boldsymbol{f}(\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}, t_k + \frac{\Delta t}{2}) \Delta t \\\boldsymbol{k}_4 &=& \boldsymbol{f}(\boldsymbol{x}_k + \boldsymbol{k}_3, t_{k+1}) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\end{array}</math><br />
<br />
<br />
先の単振り子のシミュレーションをルンゲ・クッタ法で計算するOctaveスクリプトを以下に示します.一つ目は上記の計算手順をストレートにベタ打ちしたもの.二つ目はforループと条件判断を利用して書いたものです.<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ベタ打ち)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
k1 = [ x_k(2) ;<br />
-9.8/l * sin(x_k(1)) - c/m * x_k(2) ] * dt; % k1 の計算<br />
x_tmp = x_k + k1/2;<br />
k2 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k2 の計算<br />
x_tmp = x_k + k2/2;<br />
k3 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k3 の計算<br />
x_tmp = x_k + k3;<br />
k4 = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k4 の計算<br />
x_k1 = x_k + (k1 + 2 * k2 + 2 * k3 + k4 ) /6 ; % x_{k+1} の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
*ルンゲ・クッタ法による単振り子のシミュレーション(ループ利用)<br />
<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
x_k = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
x = []; % シミュレーション結果格納用変数<br />
tim =[]; % シミュレーション時刻格納用変数<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
for j =1 : 1 : 4<br />
k_j = [ x_tmp(2) ;<br />
-9.8/l * sin(x_tmp(1)) - c/m * x_tmp(2) ] * dt; % k_jの計算<br />
if j == 3<br />
x_tmp =x_k + k_j ;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, x(1, :)); % x_1だけをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('theta (rad)');<br />
<br />
== 線形システムのシミュレーション ==<br />
<br />
=== システムの状態方程式 ===<br />
<br />
前に見たように,2階以上の常微分方程式は連立多元1階常微分方程式に変形することでオイラー法やルンゲ・クッタ法を適用することができます.ここでは,より一般的に動的システムを記述することを考えます.<br />
<br />
一般にシステム制御で取り扱う対象は,ある変数を入力,別のある変数を出力とした入出力システムと考えます.<br />
これまでの例では明示的に入出力を考えていませんでしたが,入力を<math>\boldsymbol{u}(t)</math>,出力を<math>\boldsymbol{y}(t)</math>としてシステムを表現すると一般的に次のように書くことができます.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{f}(\boldsymbol{x}(t), \boldsymbol{u}(t), t) \\\boldsymbol{y}(t) &=& \boldsymbol{g}(\boldsymbol{x}(t), \boldsymbol{u}(t), t)\end{array}</math><br />
<br />
一つ目の式は,先に述べた連立多元1階常微分方程式において入力<math>\boldsymbol{u}(t)</math>を明示的に表記したものです.二つ目は,出力方程式と呼ばれるもので,関数<math>\boldsymbol{g}()</math>を出力関数と呼びます.<br />
<br />
ここで,システムのパラメータ(係数)が時間によって変化せず(時不変),関数<math>\boldsymbol{f}()</math>と<math>\boldsymbol{g}()</math>が状態変数と入力変数の一次結合(定数倍して加算)だけで表される場合,そのシステムは線形時不変であるといいます.このとき,システムを表す方程式は以下のように行列を使って簡単に表されます.<br />
<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\ \boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
簡単な例として,粘性係数<math>D</math>のダンパーと弾性係数<math>K</math>のバネとで壁面に接続されている質量<math>M</math>の物体を考え,入力を物体への力<math>u(t)</math>,出力を物体の変位<math>y(t)</math>としたシステムの状態方程式を求めてみます.<br />
<br />
*慣性・粘性・弾性系<br />
<br />
[[ファイル: MDKsystem.png]]<br />
<br />
物体の運動方程式は,<br />
<br />
<math>M \frac{d^2 y(t)}{dt^2} = - D \frac{dy(t)}{dt} - K y(t) + u(t)</math><br />
<br />
となります.これを状態変数<math>x_1(t)</math>, <math>x_2(t)</math>を<br />
<br />
<math>\begin{array}{l l l}x_1(t) &=& y(t) \\x_2(t) &=& \frac{d y(t)}{dt}\end{array}</math><br />
<br />
とおくことで以下のような連立微分方程式に書き換えられます.<br />
<br />
<math>\begin{array}{l l l}\frac{d x_1(t)}{dt} &=& x_2(t) \\\frac{d x_2(t)}{dt} &=& - \frac{K}{M} x_1(t) - \frac{D}{M} x_2(t) + \frac{1}{M} u(t)\end{array}</math><br />
<br />
これを行列を用いて表現すると以下のようになります.<br />
<br />
<math>\frac{d}{dt} \left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right) =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\left(\begin{array}{c}x_1(t) \\x_2(t)\end{array}\right)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
状態変数を組み合わせたものを状態ベクトル<math>\boldsymbol{x}(t)</math>とすれば,<br />
<br />
<math>\frac{d\boldsymbol{x}(t)}{dt} =\left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right)\boldsymbol{x}(t)+ \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right)u(t)</math><br />
<br />
となり,これが状態方程式になります.出力は,状態量<math>x_1(t)</math>そのものですから,<br />
<br />
<math>y(t) = \left(\begin{array}{cc}1 & 0\end{array}\right)\boldsymbol{x}(t)</math><br />
<br />
となります.<br />
<br />
以上から,状態空間表現の行列<math>\boldsymbol{A},\boldsymbol{B},\boldsymbol{C},\boldsymbol{D}</math>は以下のようになります.<br />
<br />
<math>\boldsymbol{A} = \left(\begin{array}{cc}0 & 1 \\-\frac{K}{M} & -\frac{D}{M}\end{array}\right), \,\boldsymbol{B} = \left(\begin{array}{c}0 \\\frac{1}{M}\end{array}\right), \, \boldsymbol{C} = \left(\begin{array}{cc}1 & 0\end{array}\right), \, \boldsymbol{D} = 0</math><br />
<br />
=== オイラー法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムをオイラー法でシミュレーションすることを考えます.出力方程式はダイナミクスを持たない(微分方程式ではない)ので,オイラー法を適用するのは状態方程式のほうだけです.<br />
<br />
状態方程式に対するオイラー法の演算は以下のように書き表せます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + ( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k ) \Delta t \\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
この式に基づいて先の慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例を示します.入力<math>\boldsymbol{u}(t)</math>を正弦波とした強制振動を想定しています.<br />
<br />
*オイラー法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = x_k + (A * x_k + B * u_k) * dt; % x_{k+1} の計算<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y');<br />
<br />
=== ルンゲ・クッタ法によるシミュレーション ===<br />
<br />
状態空間表現された線形システムを(4次の)ルンゲ・クッタ法でシミュレーションする演算式は以下のようになります.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{k}_1 &=& \left( \boldsymbol{A} \boldsymbol{x}_k + \boldsymbol{B} \boldsymbol{u}_k \right) \Delta t \\\boldsymbol{k}_2 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_1}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_3 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \frac{\boldsymbol{k}_2}{2}) + \boldsymbol{B} \boldsymbol{u}(t_k + \frac{\Delta t}{2}) \right) \Delta t \\\boldsymbol{k}_4 &=& \left( \boldsymbol{A} (\boldsymbol{x}_k + \boldsymbol{k}_3) + \boldsymbol{B} \boldsymbol{u}_{k+1} \right) \Delta t \\\boldsymbol{x}_{k+1} &=& \boldsymbol{x}_k + \frac{1}{6} ( \boldsymbol{k}_1 + 2 \boldsymbol{k}_2 + 2 \boldsymbol{k}_3 + \boldsymbol{k}_4)\\\boldsymbol{y}_{k} &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k \end{array}</math><br />
<br />
ルンゲ・クッタ法の場合,時刻<math>t_k</math>だけでなく,<math>t_k + \frac{\Delta t}{2}</math>や<math>t_{k+1}</math>での入力<math>\boldsymbol{u}(t)</math>が必要になることに注意します.<br />
<br />
ルンゲ・クッタ法で慣性・粘性・弾性系のシミュレーションを行うOctaveスクリプトの例は以下の通りです.<br />
<br />
*ルンゲ・クッタ法による慣性・粘性・弾性系のシミュレーション<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
x_k1 = x_k;<br />
x_tmp = x_k;<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
u_k1 = 10 * sin(2*pi*1*(t+dt)); % u_{k+1}の計算.<br />
u_k12 = 10 * sin(2*pi*1*(t+dt/2)); % u_{k+1/2}の計算.<br />
u_tmp = u_k;<br />
for j =1 : 1 : 4<br />
k_j = ( A * x_tmp + B * u_k ) * dt; % k_j の計算<br />
if j == 3<br />
x_tmp = x_k + k_j ;<br />
u_tmp = u_k1;<br />
else <br />
x_tmp = x_k + k_j /2;<br />
u_tmp = u_k12;<br />
endif<br />
if (j == 1) || (j == 4)<br />
x_k1 = x_k1 + k_j /6;<br />
else<br />
x_k1 = x_k1 + k_j /3;<br />
endif<br />
endfor<br />
y_k = C * x_k + D * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== Octave関数を利用したシミュレーション ==<br />
<br />
=== 多段解法 ===<br />
これまで微分方程式の数値解法としてオイラー法とルンゲ・クッタ法について述べましたが,両手法とも<math>x_{k+1}</math>を求めるために状態量としては<math>x_k</math>だけを利用する方法でした(一段階法).しかし,<math>x_{k-1}</math>や<math>x_{k-2}</math>といった,より過去の情報も利用する多段階法という手法があります.複数の過去の情報を利用することで計算精度を上げることができるだけでなく,数値解法の安定性の点でも優れることがわかっています.すなわち,オイラー法やルンゲ・クッタ法では,サンプリング周期<math>\Delta t</math>を大きくとりすぎるとシミュレーション結果が発散してしまうことがありましたが,多段階法では発散しにくいのです.この性質は,時間のかかるシミュレーションをする前に<math>\Delta t</math>を大きめにとってラフなシミュレーションをすることができるので便利です.<br />
<br />
=== lsode関数の使用方法 ===<br />
<br />
一般に多段階法の計算アルゴリズムは複雑なので,1からプログラムを書くのはたいへんです.幸い,Octaveには微分方程式を数値的に解くためにlsodeという関数が用意されていて,この関数は代表的な多段解法である後退微分法(BDF法)やアダムス法を利用しています(オプションで指定できます.デフォルトはBDF法).<br />
<br />
以下のような常微分方程式の数値解をlsode関数で求めるための基本的な手順は次のようになります.<br />
<br />
<math>\frac{d \boldsymbol{x}(t)}{dt} = \boldsymbol{f}(\boldsymbol{x}(t), t) \quad , \ \boldsymbol{x}(0) = \boldsymbol{x}_0</math><br />
<br />
*1. まず,微分方程式を適当な関数名(例えばfnc)でOctaveのユーザ関数として定義します.もし解きたい微分方程式が2階以上なら,関数の引数xと戻り値xdotはそれぞれベクトルになります.<br />
<br />
function xdot = fnc(x, t)<br />
xdot = ・・・<br />
endfunction<br />
<br />
*2. 初期値を例えばx_0をいう変数名でセットします.<br />
*3. 数値解を求めたい時間範囲を,linspace関数などを利用してベクトル変数(例えば変数名t)として用意します.<br />
*4. 以下のようにlsode関数を呼び出すと,変数xに数値解が代入されます.このとき,xは列の数が状態変数の個数(次元),行の数が時間変数tの点数になります.<br />
<br />
x = lsode (fcn, x_0, t);<br />
<br />
<br />
先の単振り子の自由応答のシミュレーションをlsode関数を使って求めるスクリプト例を示します.<br />
<br />
Octaveでユーザ関数を定義するには,functionとendfunctionとで定義式を囲み,関数名と同じ名前で拡張子が.mのファイル(この例だとfnc.m)として保存するのが基本です.そして,そのファイルをカレントディレクトリまたはpathの通ったディレクトリに置いておけば,コマンドラインやその他のスクリプトファイルから呼び出すことができます.しかし,シミュレーション用のスクリプトと別ファイルでユーザ関数を定義することになり,管理が面倒になる可能性があります.<br />
<br />
そこで,1つのファイルにユーザ関数定義とシミュレーションのスクリプトを合わせることを考えます.ここで注意が必要です.Octaveはユーザ関数の定義はそれが呼び出される前にしておかなければなりません.よってファイルを1つにまとめる場合,functionとendfunctionで囲まれた部分はlsode関数より前になければなりません.しかし,ファイルの先頭に書いてしまうと,キーワードfunctionで始まるファイルであるということでOctaveがおせっかいにもファイル名が関数名と合わないとか言ってきてうまく実行できません.これを回避するには,関数の定義を先頭ではなくて,かつ,lsode関数より前の適当なところに書くか,ファイルの先頭に例えば1;といった無意味なコマンドを挿入し,その直後に関数定義をする方法をとります.ここで示したスクリプト例では前者の方法をとっています.<br />
<br />
<br />
*lsode関数を使った単振り子のシミュレーション1<br />
<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
なお,このスクリプト例では関数定義の中で質量<math>m</math>などの定数を定義しています.これらの定数は関数の外側で定義できた方が便利な場合が多いです.通常,関数内部で宣言した変数はローカル変数となり,外部とは名前が同じでも内容は異なるということになってしまうので,グローバルな変数として宣言する必要があります.それにはglobal命令を使います.その際に,関数内部と外部の両方で宣言する必要があるので注意が必要です.<br />
<br />
*lsode関数を使った単振り子のシミュレーション2<br />
<br />
global m l c; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
m = 1; % 質量 1 kg<br />
l = 0.5; % 振り子長さ 0.5 m<br />
c = 0.5; % 空気抵抗係数<br />
<br />
x_0 = [30/180*pi ;<br />
0 ]; % 初期角度30度, 初期速度0<br />
t = linspace(0,10,10/dt+1); % 0秒と10秒の両端が入るので点数は1つ余計になることに注意<br />
<br />
function xdot = fnc(x, t)<br />
global m l c; % ここでも再びグローバル変数として宣言<br />
xdot = [ x(2) ;<br />
-9.8/l * sin(x(1)) - c/m * x(2) ] ;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, x(:, 1)); % thetaすなわちx(1)をグラフ表示.xは列方向が時間軸になっているの注意<br />
xlabel('time (s)');<br />
ylabel('theta ');<br />
<br />
=== lsode関数による線形システムのシミュレーション ===<br />
<br />
次に,状態空間表現された線形システムのシミュレーションをlsode関数を用いて行うスクリプト例を示します.システムが,次のような状態方程式と出力方程式で表されているとします.<br />
<br />
<math>\begin{array}{l l l}\frac{d \boldsymbol{x}(t)}{dt} &=& \boldsymbol{A} \boldsymbol{x}(t) + \boldsymbol{B} \boldsymbol{u}(t) \\\boldsymbol{y}(t) &=& \boldsymbol{C} \boldsymbol{x}(t) + \boldsymbol{D} \boldsymbol{u}(t)\end{array}</math><br />
<br />
lsode関数で計算するのは状態方程式のほうだけです.その結果得られた状態変数ベクトル<math>\boldsymbol{x}</math>を用いて出力方程式に基づいて出力ベクトル<math>\boldsymbol{y}</math>を計算します.<br />
<br />
ここでは前述の慣性・粘性・弾性系の強制振動をlsode関数を用いてシミュレーションするスクリプト例を示します.このスクリプトで注意すべきなのは,入力<math>u(t)</math>の取り扱いです.<math>u(t)</math>はlsodeの内部では変数tの代数式として記述しますが,lsodeで得られた状態ベクトルを用いて出力yを計算する際には時間軸ベクトルtに対応したベクトルuとして必要になります.Octaveではsin関数などが引数にベクトルを受けると,要素ごとに関数をかけて同じサイズのベクトルを返しますのでそれを利用しています.<math>u(t)</math>の内容によっては,要素ごとの積算 .* や要素ごとの除算 ./ といった演算子が必要になるので注意です.<br />
<br />
*lsode関数を使った慣性・粘性・弾性系のシミュレーション<br />
<br />
global A B; % 関数内部でも使うのでグローバル変数として宣言<br />
dt = 0.01; % サンプリングタイム<br />
x_0 = [0;<br />
0 ]; % 初期位置0, 初期速度0<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
A = [ 0 , 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0; <br />
<br />
t = linspace(0,10,10/dt+1);<br />
<br />
function xdot = fnc(x, t)<br />
global A B; % ここでも再びグローバル変数として宣言<br />
u = 10 * sin(2*pi*1*t);<br />
xdot = A*x + B*u;<br />
endfunction<br />
<br />
x = lsode("fnc", x_0, t);<br />
<br />
u = 10 * sin(2*pi*1*t); % 時間ベクトルtに対応した入力ベクトルuの計算<br />
y = C * x '+ D * u; %出力方程式に基づいてyの計算<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(t, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y ');<br />
<br />
== 線形離散時間システムとしてのシミュレーション ==<br />
<br />
これまで常微分方程式の数値解法に基づいて動的システムのシミュレーション方法を考えてきましたが,シミュレーション対象が線形システムで,入力がサンプリング期間中一定値と考えてよい場合,線形離散時間システムとして扱うことで簡単にシミュレーションを行うことができます.<br />
<br />
前述の状態空間表現された線形連続時間システムの入力側にサンプラと零次ホールドをつけ,出力をサンプルしたシステムは,次のように離散時間システムとして表すことができます.<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{x}_{k+1} &=& \boldsymbol{\Phi} \boldsymbol{x}_k + \boldsymbol{\Gamma} \boldsymbol{u}_k \\\boldsymbol{y}_k &=& \boldsymbol{C} \boldsymbol{x}_k + \boldsymbol{D} \boldsymbol{u}_k\end{array}</math><br />
<br />
ここで,<br />
<br />
<math>\begin{array}{l l l}\boldsymbol{\Phi} &=& e^{\boldsymbol{A} \Delta t} \\\boldsymbol{\Gamma} &=& \int_0 ^{\Delta t} e^{\boldsymbol{A} \tau}\boldsymbol{B} d\tau\end{array}</math><br />
<br />
です.<br />
<br />
ここで,<math>\boldsymbol{\Phi}</math>と<math>\boldsymbol{\Gamma}</math>が求まれば,離散時間システムの式を直接演算するだけで行えるので簡単です.<br />
<br />
連続時間システムから離散時間システムへの変換には,Octaveに用意されているc2d関数が利用できます.この関数はサンプル・ホールド付きのz変換か双一次変換のいずれかで離散化することができます(デフォルトはサンプル・ホールド).シミュレーションにはサンプル・ホールド付きのz変換を使います.<br />
<br />
次のスクリプトは,先の慣性・粘性・弾性系の強制振動を離散時間システムに変換した上でシミュレーションするものです.まず,ss関数で4つの行列による状態空間表現をOctave上のシステム行列表現に変換し,その上でc2d関数で離散化しています.シミュレーションの計算自体は離散時間システムの式を繰り返し演算しているだけです.<br />
<br />
=== 離散時間システムに変換した慣性・粘性・弾性系のシミュレーション ===<br />
<br />
dt = 0.01; % サンプリングタイム<br />
M = 1; % 質量 1 kg<br />
D = 2; % 粘性係数 2 Ns/m<br />
K = 1; % 弾性係数 1 N/m<br />
x_k = [0 ;<br />
0 ]; % 初期位置0, 初期速度0<br />
x = []; % シミュレーション結果格納用変数(状態量)<br />
u =[]; % シミュレーション結果格納用変数(入力)<br />
y =[]; % シミュレーション結果格納用変数(出力)<br />
tim =[]; % シミュレーション結果格納用変数(時刻)<br />
<br />
A = [ 0, 1 ;<br />
-K/M, -D/M];<br />
B = [ 0 ;<br />
1/M];<br />
C = [1, 0];<br />
D = 0;<br />
<br />
sys = ss(A, B, C, D); % systemマトリックスに変換<br />
sys_d = c2d(sys, dt); % 離散時間システムに変換(サンプルホールド付きz変換)<br />
[A_d, B_d, C_d, D_d] = sys2ss(sys_d); % 離散時間システムの各行列取り出し<br />
<br />
for t = 0 : dt : 10 % 時刻tは0から10までdt刻み<br />
u_k = 10 * sin(2*pi*1*t); % u_kの計算.振幅10 N,周波数1 Hzの正弦波<br />
x_k1 = A_d * x_k + B_d * u_k; % x_{k+1} の計算<br />
y_k = C_d * x_k + D_d * u_k; % y_k の計算<br />
x = [x x_k]; % xの末尾にx_kを追加<br />
u = [u u_k]; % uの末尾にu_kを追加<br />
y = [y y_k]; % yの末尾にy_kを追加<br />
tim = [tim t]; % timの末尾にtを追加<br />
x_k = x_k1; % 次回の計算のため x_{k} ← x_{k+1}に繰り上げ<br />
endfor<br />
<br />
grid on;<br />
axis([0 10 -1 1]);<br />
plot(tim, y); % yをグラフ表示<br />
xlabel('time (s)');<br />
ylabel('y');</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=281
MacOSクライアント(OS 10.14)
2019-02-13T05:43:45Z
<p>Admin: /* OmniGraffle Professionalのインストール → macOs 10.14では起動せず */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
nkfをインストール<br />
brew install nkf<br />
/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定(必要なら)<br />
https://texwiki.texjp.org/?ヒラギノフォント#macos-hiragino-setup<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール → macOS 10.14では起動せず===<br />
*研究室で購入してあるOmniGraffle Professional のバージョンはVer.5で,さすがにmacOS 10.14ではクラッシュして起動しなくなったので,あきらめ.研究室標準のドローツールは別途検討する.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=280
MacOSクライアント(OS 10.14)
2019-02-13T05:43:14Z
<p>Admin: /* OmniGraffle Professionalのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
nkfをインストール<br />
brew install nkf<br />
/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定(必要なら)<br />
https://texwiki.texjp.org/?ヒラギノフォント#macos-hiragino-setup<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール → macOs 10.14では起動せず===<br />
*研究室で購入してあるOmniGraffle Professional のバージョンはVer.5で,さすがにmacOS 10.14ではクラッシュして起動しなくなったので,あきらめ.研究室標準のドローツールは別途検討する.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=279
MacOSクライアント(OS 10.14)
2019-02-13T04:11:35Z
<p>Admin: /* Stuffit Expanderのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expander 16のインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
nkfをインストール<br />
brew install nkf<br />
/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定(必要なら)<br />
https://texwiki.texjp.org/?ヒラギノフォント#macos-hiragino-setup<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=278
MacOSクライアント(OS 10.14)
2019-02-13T04:08:36Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
nkfをインストール<br />
brew install nkf<br />
/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定(必要なら)<br />
https://texwiki.texjp.org/?ヒラギノフォント#macos-hiragino-setup<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=277
MacOSクライアント(OS 10.14)
2019-02-13T04:04:52Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
nkfをインストール<br />
brew install nkf<br />
/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=276
MacOSクライアント(OS 10.14)
2019-02-13T04:04:30Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルとして「pTeX(ptex2pdf)」を選ぶ.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=275
MacOSクライアント(OS 10.14)
2019-02-13T03:57:28Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=274
MacOSクライアント(OS 10.14)
2019-02-12T10:42:13Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
brew update<br />
brew install octave<br />
<br />
一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて以下を追記.<br />
setenv('GNUTERM','qt')<br />
graphics_toolkit("gnuplot")<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=273
MacOSクライアント(OS 10.14)
2019-02-12T06:05:04Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定する.一旦octaveをexitして,ターミナルでoctavercを編集する.<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
で開いて,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=272
MacOSクライアント(OS 10.14)
2019-02-12T06:03:17Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=271
MacOSクライアント(OS 10.14)
2019-02-12T06:03:04Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=270
MacOSクライアント(OS 10.14)
2019-02-12T06:02:03Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=269
MacOSクライアント(OS 10.14)
2019-02-12T05:48:23Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=268
MacOSクライアント(OS 10.14)
2019-02-12T05:47:52Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
**octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=267
MacOSクライアント(OS 10.14)
2019-02-12T05:47:23Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
*ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
*signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=266
MacOSクライアント(OS 10.14)
2019-02-12T05:47:06Z
<p>Admin: /* Gnu Octave関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.<br />
<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=265
MacOSクライアント(OS 10.14)
2019-02-12T05:32:23Z
<p>Admin: /* システム,開発環境の設定とインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
*brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=264
MacOSクライアント(OS 10.14)
2019-02-12T05:30:19Z
<p>Admin: /* システム,開発環境の設定とインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.<br />
***Xcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=263
MacOSクライアント(OS 10.14)
2019-02-12T05:18:11Z
<p>Admin: /* フリーウェアツールのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*App Storeから最新バージョンをダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=262
MacOSクライアント(OS 10.14)
2019-02-12T05:16:41Z
<p>Admin: /* Adobe Reader DC */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*AdobeのサイトからMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=261
MacOSクライアント(OS 10.14)
2019-02-12T05:16:08Z
<p>Admin: /* Adobe Reader DC */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*[[https://acrobat.adobe.com/jp/ja/acrobat/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=260
MacOSクライアント(OS 10.14)
2019-02-12T05:15:48Z
<p>Admin: /* Adobe Reader DC */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*https://acrobat.adobe.com/jp/ja/acrobat/からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=259
MacOSクライアント(OS 10.14)
2019-02-12T05:15:28Z
<p>Admin: /* Adobe Reader */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader DC ===<br />
*[[https://acrobat.adobe.com/jp/ja/acrobat/:https://acrobat.adobe.com/jp/ja/acrobat/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=258
MacOSクライアント(OS 10.14)
2019-02-12T05:13:50Z
<p>Admin: /* プリンタドライバのインストール */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.14)&diff=257
MacOSクライアント(OS 10.14)
2019-02-12T05:13:31Z
<p>Admin: ページの作成:「== 初回起動時 == *ユーザ名はadministrator,パスワードは例のやつにしておく. *AppleIDは研究室のIDを「PC関係(ソフトウエアライ...」</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%A8%E8%A8%AD%E5%AE%9A&diff=256
インストールと設定
2019-02-12T05:12:37Z
<p>Admin: /* Macintosh関係 */</p>
<hr />
<div>研究室内の計算機をセットアップする時は何をどうしたか必ずログを残しましょう.後できっと役に立ちます.<br />
<br />
==Linux関係==<br />
*[[CentOS7インストール]]<br />
<br />
==Macintosh関係==<br />
*[[MacOSクライアント(OS 10.8以降)]]<br />
*[[MacOSクライアント(OS 10.10)]]<br />
*[[MacOSクライアント(OS 10.11)]]<br />
*[[MacOSクライアント(OS 10.13) ]]<br />
*[[MacOSクライアント(OS 10.14) ]]<br />
<br />
==Windows関係==</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.13)&diff=255
MacOSクライアント(OS 10.13)
2018-01-10T23:59:51Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.13)&diff=254
MacOSクライアント(OS 10.13)
2018-01-10T23:54:24Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
**コンパイルするたびにプレビューが一瞬ボケる現象がある場合は,ターミナルで<br />
defaults write TeXShop FixPreviewBlur YES<br />
とする.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.13)&diff=253
MacOSクライアント(OS 10.13)
2018-01-10T23:53:37Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
**コンパイルするたびにプレビューが一瞬ボケる現象がある場合は,ターミナルで<br />
defaults write TeXShop FixPreviewBlur YES<br />
とする.<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.13)&diff=252
MacOSクライアント(OS 10.13)
2017-12-14T10:40:21Z
<p>Admin: /* TeX関係 */</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
High Sierraからヒラギノフォントの名前が変わったりして,TeXLive2017でもそのままでは埋め込みがうまくいかない.<br />
https://www.muskmelon.jp/?p=2013<br />
を参考にして,設定する.<br />
<br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=MacOS%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%EF%BC%88OS_10.13)&diff=251
MacOSクライアント(OS 10.13)
2017-12-14T10:38:30Z
<p>Admin: ページの作成:「== 初回起動時 == *ユーザ名はadministrator,パスワードは例のやつにしておく. *AppleIDは研究室のIDを「PC関係(ソフトウエアライ...」</p>
<hr />
<div>== 初回起動時 ==<br />
*ユーザ名はadministrator,パスワードは例のやつにしておく.<br />
*AppleIDは研究室のIDを「PC関係(ソフトウエアライセンスなど)」という緑色のファイルを見て入力.<br />
<br />
== システム,開発環境の設定とインストール ==<br />
*各種アップデート<br />
**アップルメニューのソフトウェアのアップデートを複数回程繰り返す必要があるかも。<br />
<br />
*基本的な設定<br />
**システム環境設定の共有でマシン名をそれっぽく付けておく<br />
**システム環境設定の「ユーザとグループ」を開き、左下のガキマークをクリックしてadministratorのパスワードを入力して変更可能にする。「ログインオプション」をクリックし、「ネットワークアカウントサーバ」がinsensatez.inaba-lab.orgになっているか確認する。なっていなければ、隣の編集ボタンを押して設定する。さらに、ログイン画面にユーザーリストを出さないようにするため、自動ログインを切りにする、ログイン時の表示を名前とパスワードにする。<br />
**localuserのアカウントを通常ユーザーとして追加する.パスワードは例のもの.<br />
<br />
*Xcodeのインストール<br />
**Mac App Storeからダウンロードしてインストール。研究室共通のApple IDは緑色のファイル「PC関係(ソフトウェアライセンスなど)」に書いてある。<br />
**Command Line Toolsをインストール.Xcode 5まではPreferencesの中でインストールできたが,Xcode 6以降はXcodeメニューの「Open Developer Tool」の中の「More Developer Tools...」でAppleのサイトに行き,対応するCommand Line Toolsのインストーラをダウンロードしてインストールする.<br />
**管理者権限でなくてもデバッカやiOSエミュレータなどが使えるように,ユーザ(staffグループ)を_developerグループに追加する.<br />
sudo dseditgroup -o edit -a staff -t group _developer<br />
*Developerモードをオンにしておく<br />
sudo /usr/sbin/DevToolsSecurity -enable<br />
<br />
*Homebrewをインストール<br />
**インストール<br />
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
途中でgccなどをコマンドラインからも使用できるようにするためのCommandline Toolsのインストールを促されるので従う.<br />
<br />
**brew doctorでチェック<br />
brew doctor<br />
finkでいれた/swを削除したり.あと,pathで/usr/local/binを/usr/binより前にしろとか出るかもしれない.<br />
<br />
*XQuartzのインストール<br />
**http://xquartz.macosforge.org/trac/wiki から最新版をダウンロードしてインストール<br />
<br />
== プリンタドライバのインストール ==<br />
=== Brother HL5450DN ===<br />
*OSにバンドルされているのでインストールは必要ない.<br />
**ただし,最新版が開発元からでているようなら[[http://solutions.brother.co.jp/index.html:http://solutions.brother.co.jp/index.html]]のBrother HL5450DNのページからCUPS版のドライバをダウンロードしてインストール.<br />
*システム環境設定のプリンタとスキャンで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
*なお,HL5450DNはPostscript3互換のBrother Script3内蔵なので,PPDファイルをダウンロードしてPSプリンタとしての使用もできる.こちらのほうが細い線などのプリント品質が高い.ただし,書類によってはプリントに非常に時間がかかったりするので注意.<br />
<br />
=== HP Photosmart C4380 ===<br />
*OSにバンドルされているのでインストールは必要ない.(スキャナ機能をつかうなら下記のようにソフトウェアをダウンロードしてインストールする必要がある)<br />
**ただし,最新版が開発元からでているようなら[[http://welcome.hp.com/country/jp/ja/support.html:http://welcome.hp.com/country/jp/ja/support.html]]のPhotosmart C4380のページからMacOS用プリンタドライバをダウンロードしてインストール<br />
*プリンタ設定ユーティリティで追加する.メンバー限定Wikiの「研究室内ネットワーク」を参照してプリンタのIPアドレスを指定してもよいが,そうしなくてもBonjour機能で見つかるはず.<br />
<br />
=== デフォルトプリンタの設定 ===<br />
*「デフォルトのプリンタ」はBrother HL5450D0Nの方にしておく.<br />
<br />
== フリーウェアツールのインストール ==<br />
=== Stuffit Expanderのインストール ===<br />
*App Storeからダウンロードしてインストール.<br />
<br />
=== Adobe Reader ===<br />
*[[http://www.adobe.co.jp/:http://www.adobe.co.jp/]]からMacOS 最新バージョンをダウンロードしてインストール.<br />
<br />
=== CotEditor ===<br />
*[[http://coteditor.github.io]]から最新バージョンをダウンロードしてインストール.<br />
<br />
<br />
=== Gnu Octave関係 ===<br />
<br />
http://wiki.octave.org/Octave_for_MacOS_X を参考にして,Homebrewでインストールする.ただし,ほかのインストラーが作った/usr/local/etc/や/usr/local/libに書き込み権限がなくてエラーになることがある。その時は以下のようにオーナーとパミッションを変更する。(クリーンインストールでこれらのフォルダがないときは不要)<br />
*Homebrewはadminグループに属すadministratorアカウントで作業するので、これらのディレクトリに書き込めるように、パミッションとオーナグループを以下のよう変更する。<br />
sudo chmod g+w /usr/local/etc/<br />
sudo chmod g+w /usr/local/lib/<br />
sudo chown :admin /usr/local/etc/<br />
sudo chown :admin /usr/local/lib/<br />
<br />
その上で,以下の手順でoctaveをインストールする.<br />
brew tap homebrew/science<br />
brew update && brew upgrade<br />
brew install octave --with-docs<br />
なお,Javaがないと怒られるときは,指示に従って<br />
brew install Caskroom/cask/java<br />
でインストール.<br />
<br />
途中でリンカldがエラーを出すことがある.brew doctorでwarningとなるいらなそうなライブラリファイルなどを削除するとエラーがでなくなった.<br />
<br />
あと,途中で<br />
brew link --overwrite フォーミュラ名<br />
が何度か必要になるかもしれない.<br />
<br />
Xcode5の環境だと,octaveのインストール途中でtbbのインストールでエラーとなることがある.その場合,tbbだけを<br />
brew install tbb --env=std<br />
でインストールしてから,octaveをインストールしなおせばよい.(参考 https://github.com/mxcl/homebrew/issues/22545)<br />
<br />
インストール後実行すると以下のエラーが出る場合,<br />
dyld: Library not loaded: /usr/local/lib/gcc/5/libgfortran.3.dylib<br />
Referenced from: /usr/local/Cellar/octave/4.0.0_1/bin/octave-cli-4.0.0<br />
Reason: image not found<br />
<br />
gccをlinkしなおす.<br />
brew link gcc<br />
<br />
以下のようにする必要があるかも<br />
brew unlink gfortran<br />
brew link --overwrite gcc<br />
*Packageのインストール<br />
**Octaveを起動して作業を行う.<br />
controlとsignalのパッケージをインストールする.<br />
**ユーザ全員が使う,Octave Forge repositoryからダウンロード,以下のようなコマンドでインストールする.<br />
pkg install -global -forge control<br />
しばらく応答無くてもじっと待つこと.optiPIDに関してワーニングがでるかも.なお,error: urlwrite: unable to open file とでてインストール出来ない場合は,Macを一度再起動するとできるようになった(謎).<br />
**signalをインストールするために,まず,<br />
pkg install -global -forge general<br />
pkg install -global -forge specfun<br />
をいれて,そのあと,<br />
pkg install -global -forge -auto signal<br />
でインストール.なんかワーニングがでるかも.<br />
*octave起動時にパッケージを自動ロードするよう設定<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
でoctavercを編集して,<br />
pkg load control<br />
pkg load general<br />
pkg load signal<br />
pkg load specfun<br />
を追記<br />
<br />
**例えば次のコマンドでボード線図が表示されるか確認する.<br />
bode(tf([1],[1 1 1]))<br />
**以下のエラーが出てoctaveが落ちる場合、<br />
warning: could not match any font: *-normal-normal-10<br />
warning: ft_render: unable to load appropriate font<br />
octavercを開き、<br />
sudo emacs /usr/local/share/octave/site/m/startup/octaverc<br />
以下を追記する。<br />
setenv ("FONTCONFIG_PATH", "/opt/X11/lib/X11/fontconfig")<br />
<br />
=== TeX関係 ===<br />
*全体として,TeX Wiki Mac<br />
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Mac<br />
を参考にする.<br />
<br />
*ミラーサイトからMacTeX.pkgをダウンロード<br />
*MacTeX.pkgをダブルクリックしてカスタマイズなしでインストール。ただし、GhostscriptとConvert(ImageMagik)はカスタマイズで外しておいて、別途Homebrewでインストールしたほうがいいかも。MacTeXのインストラーは/usr/local/etcと/usr/local/libをroot:wheelオーナで作成してしまうので、Homebrew(administrator:admin)でのパッケージのインストールに不都合がでることがある。<br />
**pathに/usr/texbinが追加される.<br />
**古いTeX関連のコマンドが,/usr/local/binに残っていると,それが優先されてしまう./usr/local/binから消すか,/usr/texbinのほうが優先されるようにpath設定を変えるかする必要がある.<br />
**ApplicationsフォルダのTeXフォルダにTeXShop,LaTeXitなどがインストールされる.Applecationsフォルダにすでにインストールされているものがあったら,捨てておく.<br />
<br />
*ApplicationsフォルダのTeXフォルダのTeX Live Utility.appで更新してもよいが,ターミナルで<br />
sudo tlmgr update --self --all<br />
でアップデートでもよい。<br />
<br />
*texmf.cnfにextractbbの追加<br />
sudo emacs /usr/local/texlive/texmf-local/web2c/texmf.cnf<br />
とエディタを開き,<br />
shell_escape_commands = \<br />
bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\<br />
kpsewhich,\<br />
makeindex,mendex,texindy,\<br />
mpost,pmpost,\<br />
repstopdf,epspdf,extractbb,\<br />
をペーストして保存して終了.<br />
<br />
*漢字コード変換のためにnkfをインストール.<br />
<br />
**nkfをインストール<br />
brew install nkf<br />
**/usr/local/texlive/texmf-local/web2c/texmf.cnfに以下を追記。ただし、この行の前後に空行がないとなぜか効かなかったので、1行ずつ隙間を入れること<br />
<br />
PTEX_IN_FILTER = /usr/local/bin/nkf -w<br />
<br />
<br />
*ここまでで一回動作確認.適当なソースファイルを用意し,ターミナルで<br />
platex hoge.tex<br />
dvipdfmx hoge.dvi<br />
とためす.<br />
<br />
**元のソースで\usepackage[dvipdfm]{graphicx}は\usepackage[dvipdfmx]{graphicx}に変更する必要があった.<br />
**SJISのソースファイルもそのままコンパイルできる.<br />
**pdfファイルについては,.bbファイルを消去しても,勝手に.xbbファイルを作ってくれるはず.<br />
<br />
*日本語フォントの埋め込み設定<br />
**ヒラギノフォントのリンク作成.<br />
cd /usr/local/texlive/2017/texmf-dist/scripts/cjk-gs-integrate<br />
sudo perl cjk-gs-integrate.pl --link-texmf --force<br />
sudo mktexlsr<br />
<br />
**ヒラギノの N シリーズを埋め込む場合は<br />
sudo updmap-sys --setoption jaEmbed hiragino-elcapitan-pron<br />
<br />
**ヒラギノの N シリーズでない方を埋め込む場合は<br />
sudo updmap-sys --setoption jaEmbed hiragino-elcapitan<br />
<br />
**埋め込まないなら以下とする(研究室ではこちらをデフォルトとする)<br />
sudo updmap-sys --setoption kanjiEmbed noEmbed <br />
<br />
<br />
*TeXShopの設定<br />
**ApplicationsフォルダのTeXフォルダ内にTeXShopがインストールされている.必要に応じて最新版にアップデート<br />
**環境設定の「書類」で設定プロファイルを「pTeX(ptex2pdf)」に,エンコーディングを「Japanese(ShiftJIS \)」にする(本来はUTF-8で統一したほうがいいのかも.でもいままでのもあるのでSJISで).<br />
<br />
=== インターネット関係 ===<br />
<br />
*Firefoxのインストール<br />
**[[http://www.mozilla.jp:http://www.mozilla.jp]]から Mac版をゲットしてインストール.<br />
<br />
<br />
== 購入アプリケーションのインストール ==<br />
<br />
===Office for Macのインストール ===<br />
大学包括契約のソフトウェアをインストールする.<br />
<br />
<br />
=== OmniGraffle Professionalのインストール ===<br />
*研究室でOmniGraffle Professional Ver.5のライセンスを購入してある.<br />
*Omni Gruopのwebサイト[[http://www.omnigroup.com:http://www.omnigroup.com]]からOmniGraffle Professional Ver.5をダウンロードしてインストール。<br />
*起動して、OmniGraffle Proメニューの「ライセンス...」で、ライセンスコード(緑色のファイルにあり)を、種類として「コンピュータ」を選んで入力する.なお,種類のプルダウンメニューが「個人」のままで選択できないことがある.その場合は,システム(Macintosh HD)直下の,「ライブラリ」フォルダの中の「Application Support」フォルダ内に,「Omni Group」という名前のフォルダをつくり,必要ならアクセス権を変更するとよい.<br />
<br />
=== iWorkのインストール ===<br />
*PagesとKeynote, Numbersのインストール<br />
初回起動時にAppleIDへの紐付けを要求されたら受け入れる.</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%A8%E8%A8%AD%E5%AE%9A&diff=250
インストールと設定
2017-12-14T10:38:22Z
<p>Admin: </p>
<hr />
<div>研究室内の計算機をセットアップする時は何をどうしたか必ずログを残しましょう.後できっと役に立ちます.<br />
<br />
==Linux関係==<br />
*[[CentOS7インストール]]<br />
<br />
==Macintosh関係==<br />
*[[MacOSクライアント(OS 10.8以降)]]<br />
*[[MacOSクライアント(OS 10.10)]]<br />
*[[MacOSクライアント(OS 10.11)]]<br />
*[[MacOSクライアント(OS 10.13) ]]<br />
<br />
==Windows関係==</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&diff=246
メインページ
2016-12-23T22:00:47Z
<p>Admin: /* 東海大学 情報理工学部 コンピュータ応用工学科 稲葉研究室 Wiki */</p>
<hr />
<div><br />
== 東海大学 情報理工学部 コンピュータ応用工学科 稲葉研究室 Wiki ==<br />
<br />
研究に関することを中心に,役立つ情報をみなさんで共有しましょう.<br />
<br />
全世界に公開されていますので,個人情報,著作権,公序良俗に注意して,相応しい内容だけ書き込むこと.<br />
<br />
公開したくない内容は[http://www.inaba-lab.org/wiki2/ メンバー限定Wiki]のほうを利用してください.<br />
<br />
=== ゼミ資料・勉強会資料 ===<br />
*[[システム制御関連]]<br />
*[[TeXによる文書作成入門]]<br />
<br />
<br />
=== 計算機関係 ===<br />
*[[インストールと設定]]<br />
*[[チョットしたテクニック]]<br />
*研究室内ネットワークについては[http://www.inaba-lab.org/wiki2/ メンバー限定Wiki]参照</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&diff=245
メインページ
2016-12-23T22:00:33Z
<p>Admin: /* 東海大学 情報理工学部 コンピュータ応用工学科 稲葉研究室 Wiki */</p>
<hr />
<div><br />
== 東海大学 情報理工学部 コンピュータ応用工学科 稲葉研究室 Wiki ==<br />
<br />
<math>\frac{dx(t)}{dt} = f(x(t), t) \, , \quad x(0) = x_0</math><br />
研究に関することを中心に,役立つ情報をみなさんで共有しましょう.<br />
<br />
全世界に公開されていますので,個人情報,著作権,公序良俗に注意して,相応しい内容だけ書き込むこと.<br />
<br />
公開したくない内容は[http://www.inaba-lab.org/wiki2/ メンバー限定Wiki]のほうを利用してください.<br />
<br />
=== ゼミ資料・勉強会資料 ===<br />
*[[システム制御関連]]<br />
*[[TeXによる文書作成入門]]<br />
<br />
<br />
=== 計算機関係 ===<br />
*[[インストールと設定]]<br />
*[[チョットしたテクニック]]<br />
*研究室内ネットワークについては[http://www.inaba-lab.org/wiki2/ メンバー限定Wiki]参照</div>
Admin
https://www.inaba-lab.org/wiki/index.php?title=Octave%E5%85%A5%E9%96%80&diff=244
Octave入門
2016-05-14T10:38:11Z
<p>Admin: /* 文書への張り込み */</p>
<hr />
<div><br />
Octave(正確にはGNU Octave)は行列・ベクトルの数値演算を行なうことのできる,コマンドラインインタフェースを備えたフリーの汎用演算ソフトです.本家webサイトは http://www.octave.org/ です.<br />
<br />
Octave自体に組み込まれている関数やコマンドは基本的なものに限られていますが,多くの関数やコマンドを世界中の人が開発し,公開するプロジェクトがあります( http://octave.sourceforge.net/ ).その成果はOctave-forgeというパッケージとして公開されています.研究室のマシンにインストールされているのもOctave-forgeパッケージです.<br />
<br />
== 基本操作 ==<br />
=== 起動と終了 ===<br />
<br />
起動はWindowsPCならスタートメニューのGNU Octave 3.x を選びます.OS XやlinuxなどPC-unix系のシステムなら,ターミナルを開いてoctaveとタイプすればいいです.起動するとターミナルが開き,コマンドを受け付ける状態になります.終了はexitとタイプします.<br />
<br />
=== ヘルプ ===<br />
<br />
Octave上で関数やコマンドのヘルプを表示するには,<br />
<br />
>>help 関数名<br />
<br />
とします(ここで>>はプロンプトの例).見にくい場合は,前述のwebサイト上のmanualページを参照してもいいです.<br />
<br />
また,<br />
<br />
>>help -i キーワード<br />
<br />
とすると,キーワード(関数名など何でも良い)に関連した説明が表示されます.<br />
<br />
=== カレント・ディレクトリ ===<br />
<br />
Octaveを起動して開くウィンドウにコマンドを打ち込んでいけば利用はできますが,結果をファイルとして残したり,実験データなとを読み込む場合にはディレクトリを意識する必要があります.今現在自分が作業しているディレクトリをカレント・ディレクトリと呼びます.unix系のOSならすでに各自のホーム・ディレクトリで作業し始めているので,問題は少ないですが,Windowsの場合は注意が必要です.<br />
<br />
カレント・ディレクトリを確認するコマンドは,pwdで,Windows上でOctaveを起動した直後は,<br />
<br />
>> pwd<br />
/octave_files<br />
<br />
となっていると思います.ただし,Cドライブ直下のoctave_filesディレクトリというわけではなく,GNU Octaveをインストールした場所(普通はC:/Program Files/GNU Octave 2.2.50/)の下にあります.カレント・ディレクトリをこのままで作業すると,各ユーザのファイルが混在しますし,PCのローカルなHDD上なのでログインするPCが変わると作業が続けられません.そこで,ネットワーク上の各自のホーム・ディレクトリで作業する必要があります.カレント・ディレクトリを移動するにはcdコマンドを利用しますが,cygwim上でoctaveを利用している場合,ドライブをまたいで移動するときは頭に/cygdrive/ドライブ名/をつける必要があります.研究室のWindowsPCにログインするとネットワークドライブはH:になるので,その下のDocumentsフォルダをカレント・ディレクトリとするには,<br />
<br />
>> cd /cygdrive/h/Documents<br />
とすることになります.<br />
<br />
<br />
== 基本数値・算術コマンド ==<br />
=== 数値,ベクトル・行列の表現の仕方 ===<br />
<br />
Octave上でスカラー定数は,<br />
<br />
実数:1.6e-31<br />
複素数:1.2+0.8*i (1.2+0.8*jと入力しても良い)<br />
<br />
のように入力し,表示もされます.<br />
<br />
ベクトル・行列は,<br />
<br />
行ベクトル:[1 2 3]<br />
列ベクトル:[1;2;3]<br />
行列:[1 2 3;4 5 6;7 8 9]<br />
<br />
のように入力します.要素は実数や複素数,後述の変数(数式)でも構いません.また,要素の区切りはスペース以外にカンマ(, )でも大丈夫です.行列はベクトルをセミコロン(; )で改行しながら入力するというイメージです.<br />
<br />
=== 変数 ===<br />
<br />
Octave上では,実数,複素数,行列,ベクトルの区別なく変数に格納することができます.変数名は英文字で始まる英数字の文字列で,大文字小文字の区別をします.<br />
<br />
>> b = 1.2e-3<br />
>> A = [1 2*i;3 1 ]<br />
>> w = -2+3*i<br />
<br />
現在宣言されている変数名一覧はコマンドwho -variablesでリストアウトされます.<br />
<br />
>> who -variables<br />
*** local user variables:<br />
<br />
A b w<br />
<br />
<br />
定義した変数を削除するには,clearコマンドを使います.引数無しだと,全ての変数をクリアし,<br />
<br />
>> clear b w<br />
<br />
のように,特定の変数だけをクリアすることもできます.<br />
<br />
=== コマンドライン上での入力と表示 ===<br />
基本的に数値やコマンド・関数をタイプしてenterを押せば,入力されて実行されます.標準状態では結果がすぐ表示されますが,表示させないようにすることもできます.一番簡単な方法は行の最後にセミコロン(; )をつけることです.<br />
<br />
<br />
>> a =[1 2 3]<br />
a =<br />
1 2 3<br />
>> a =[1 2 3];<br />
<br />
=== 四則演算,超越関数 ===<br />
<br />
四則演算は実数,複素数,行列,ベクトルおよびそれらを内容とする変数に対して実行可能です.ただし,行列,ベクトルの除算は以下のような意味となります.<br />
<br />
例:\texttt{A/B}は$A\,B^{-1}$の意味<br />
<br />
sinなどの関数も実数,複素数,行列,ベクトルおよびそれらを内容とする変数に対して実行可能ですが,行列,ベクトルに対しては各要素ごとの関数値となります.<br />
<br />
>> A = [pi/2 pi;0 pi/6]<br />
>> sin(A)<br />
ans =<br />
1.00000 0.00000<br />
0.00000 0.50000<br />
<br />
<br />
行列はベクトルの和や差はもちろん各要素ごとの和や差ですが,積や除は行列の積の定義に基づいた計算になります.しかし,場合によっては各要素ごとの積や除をとりたい場合があります.その時は,ピリオド(. )を演算子の前につけます.<br />
<br />
>> A = [1 2;3 4]<br />
>> A*A<br />
ans =<br />
7 10<br />
15 22<br />
>> A.*A<br />
ans =<br />
1 4<br />
9 16<br />
<br />
<br />
=== 行列・ベクトルの操作 ===<br />
<br />
==== 要素,行,列,小行列の取り出し ====<br />
<br />
行列およびベクトル内の特定の要素を取り出すには,変数名とカッコを用いて次のようにします.<br />
>> a = [1 2 3;4 5 6;7 8 9]<br />
>> a(2,3)<br />
ans = 6<br />
<br />
行列の特定の行や列を取り出すには要素の取り出しの際に列や行番号の代りにコロン(: )を使います.<br />
>> a = [1 2 3;4 5 6;7 8 9]<br />
>> a(2,:)<br />
ans =<br />
4 5 6<br />
<br />
小行列を取り出すにはコロンを用いて行もしくは列の範囲を指定します.<br />
>> a = [1 2 3;4 5 6;7 8 9]<br />
>> a(2:3,1:2)<br />
ans =<br />
4 5<br />
7 8<br />
<br />
<br />
==== 行列の結合 ====<br />
<br />
複数の行列やベクトルをまとめて一つの行列にすることができます.ただし,対応する行数や列数は合わせておく必要があります.<br />
>> a = [1;2;3;4];<br />
>> b = [5;6;7;8];<br />
>> c = [a b]<br />
c =<br />
1 5<br />
2 6<br />
3 7<br />
4 8<br />
<br />
==== 転置行列 ====<br />
<br />
行列やベクトルの転置はシングルコーテーション(' )を使います.<br />
>> a = [1 2;3 4];<br />
>> a'<br />
ans =<br />
1 3<br />
2 4<br />
<br />
==== 特定の数列からなるベクトルの作成 ====<br />
<br />
Octaveの関数では,シミュレーションの時間軸やボード線図の周波数軸などをベクトルで与えることになります.そのときは,以下の関数を用いると便利です.<br />
<br />
*等差数列:linspace(始値,終値,点数)<br />
<br />
たとえば,サンプリングタイム0.01で0から0.99までの点数100のベクトルを作るときは以下のようにします.<br />
>> t = linspace(0,0.99,100);<br />
<br />
*等比数列:logspace(log(始値),log(終値),点数)<br />
<br />
たとえば,0.01=10^{-2}から1000=10^3までを対数分割して100点のベクトルを作るとき.<br />
>> omega = logspace(-2,3,100);<br />
<br />
<br />
=== 数値表示のフォーマット ===<br />
<br />
演算結果や変数の内容を表示する桁数を指定できます.標準では5桁の数値で表示されます.これでは桁数がすくなすぎるとか,指数表示をしてもらいたい時はコマンドformatを使います.<br />
<br />
>> 10/3<br />
ans = 3.3333<br />
>> format long<br />
>> 10/3<br />
ans = 3.33333333333333<br />
>> format long e<br />
>> 10/3<br />
ans = 3.33333333333333e+00<br />
<br />
デフォルトの5桁の表示に戻すには,引数無しでformatを実行します.なお,これらはあくまで表示上の変更で,内部計算は倍精度で行われています.<br />
<br />
<br />
== グラフ ==<br />
<br />
Octaveではグラフ機能はgnuplotを呼び出して利用しているので,細かなコントロールにはgnuplotのコマンドを理解する必要があります.しかし,octave-forgeのパッケージにはMATLABとの互換性を高めるため,グラフ関連のコマンドが多く追加されていて(例えばgridなど),だいぶ使いやすくなっています.<br />
<br />
=== plot関数の基本 === <br />
<br />
1次元のベクトルの組を2次元グラフに表現できます.ベクトルXをx軸,Yをy軸としてグラフ化するには,plot(X, Y)とします.<br />
<br />
>> X = linspace(0,10,100);<br />
>> Y = sin(X);<br />
>> plot(X, Y)<br />
<br />
線の種類や色を変えたいときは,変数の後に続けてダブルコーテーションかシングルコーテーションでくくったフォーマット文字列を書けばいいです.<br />
<br />
>> plot(X, Y, 'b+')<br />
<br />
この例は,色をblueとし,線ではなくて+記号でプロットします.その他の色や線類はhelpで調べて下さい.<br />
<br />
なお,plot関数の引き数としてx軸, y軸, 線種を繰り返し用いることで複数のグラフを重ね書きすることもできます.<br />
<br />
>> plot(X1, Y1, 'r-', X2, Y2, 'g-')<br />
<br />
<br />
=== その他の装飾 ===<br />
<br />
plot関数でグラフを書いた後,xlabel, ylabel, titile関数で軸ラベルとタイトルをつけることができます.<br />
<br />
>> xlabel('time (s)')<br />
>> ylabel('sin(x)')<br />
>> title('This is a sample graph')<br />
<br />
また,グリッド(格子)をつけるには,<br />
>> grid on<br />
<br />
を実行すればいいです.<br />
<br />
プロットの説明(凡例)が右上に自動的にでますが,これはlegend関数で変更できます.不要な場合は,<br />
>> legend('off')<br />
で消えます.<br />
<br />
なお,環境によってはlegend関数がうまく機能しない場合があります.その場合は,plot関数でプロットする際に,色や線種を指定するのと同時に説明文をセミコロンで囲むことで指定できます.<br />
<br />
>> plot(X, Y, 'r-;sin;', X, Z, 'g-;cos;')<br />
<br />
<br />
また,グラフの表示範囲は自動的に設定されますが,複数のグラフを比較するときなど,一律に範囲を指定してプロットすべきです.その場合は,axis関数を使います.<br />
<br />
>> axis([xmin xmax ymin ymax])<br />
<br />
とすることで,x軸y軸それぞれの範囲を指定できます.なお,axis関数はグラフをプロットした後に実行しても効果がないので,後から実行した場合はもう一度プロットし直す必要があります.また,自動調整に戻す場合は,<br />
<br />
>> axis('auto')<br />
<br />
とします.<br />
<br />
<br />
=== 対数グラフ ===<br />
<br />
plot関数のかわりにsemilogx関数を使うと片対数(x軸だけ対数)のグラフになります.両対数はloglog関数です.線種の指定などはplot関数と同じです<br />
<br />
=== 文書への張り込み ===<br />
<br />
グラフをTeX文書などに取り込む場合は,EPSファイルとしていったん保存します.print関数を使うことでファイルに出力できます.<br />
<br />
>> print('test.eps','-depsc2')<br />
<br />
一つ目の引数はファイル名で,二つ目はファイルの形式を指定するオプションです.-dに引き続いて,epsc2はEPSのカラーでレベル2と言う意味です.<br />
<br />
== スクリプトファイル ==<br />
<br />
=== スクリプトファイル(mファイル)とは ===<br />
これまでのようにコマンドを1行1行打ち込んでいっても作業はできますが,ある程度まとまった処理や繰り返し試行する処理などは,面倒ですし,間違いも見つかりにくいです.そこで,その一連の作業をmファイルというテキストファイルとして保存しておくと,実行や修正が非常に楽になります.<br />
<br />
=== mファイルの作成と実行 ===<br />
mファイルはただのテキストファイルですから,メモ帳など使い慣れたエディタで作成・編集できます.保存する場所は自分のホームディレクトリ以下の適当なところとします.<br />
<br />
ファイル名は変数名と同じく数字で始まらない英数字とし,拡張子は.mとします.実行はファイル名から.mを抜いた部分を入力すればいいです.カレント・ディレクトリにその名前のファイルがあれば実行されます.<br />
<br />
=== path ===<br />
自作のmファイルをあるディレクトリにまとめておき,カレント・ディレクトリがどこであっても,そのmファイルを実行できるようにすることができます.汎用性の高い関数やツールを作り,将来にわたり使いたい場合に便利です.<br />
<br />
path関数によって,現在のコマンド検索pathの表示と変更ができます.<br />
>> path<br />
とすることで現在のpath設定が表示されます.(ゼミ開講現在,Windows環境ではなぜか表示されません.)これらに,自身のディレクトリを''追加''するには以下のようにします.<br />
<br />
>> path(path, '/cygdrive/h/Documents/m_files/')<br />
<br />
この例では,Documentsディレクトリの下のm_filesディレクトリにmファイルを入れておけば,カレントディレクトリがどこであっても実行できるようになります.なお,間違って<br />
>> path('/cygdrive/h/Documents/m_files/')<br />
とすると,pathがm_filesだけになり,自作のコマンド以外は全く実行できなくなりますので,注意です.(一度Octaveを終了して再度起動すれば元に戻ります)<br />
<br />
<br />
== 制御系解析・設計コマンド類 ==<br />
<br />
<br />
=== システムの表現 ===<br />
<br />
Octave上では,システムは伝達関数表現(分子分母それぞれの係数を降べきの順に並べた2つのベクトルの組),状態空間表現(4つの行列の組),システム行列表現(1つの行列で表現)のいずれかで表現できます.しかし,後述する解析や設計の関数はシステム行列表現を引数としてとるので,その他の表現で与えられた物をシステム行列表現に変換する必要があります.変換を行う関数はtf()です(古いバージョンのoctaveの場合はtf2sys).<br />
<br />
以下の例は,&math(\frac{1}{s^2 + 2 s + 3});の伝達関数表現をシステム行列表現に変換する例です.<br />
<br />
>> sys = tf([1], [1 2 3]);<br />
<br />
<br />
=== 周波数応答の計算 ===<br />
<br />
代表例としてボード線図を書いてみます.関数はbodeを利用します.<br />
<br />
>> sys = tf([1], [1 2 3]);<br />
>> bode(sys);<br />
<br />
でゲイン線図と位相線図が描かれます.しかし,実際には複数のプロットを重ねたり,ゲイン線図だけが欲しかったりするので,bode関数は周波数応答の計算だけに利用して,グラフはあらためてplotまたはsemilog関数でプロットする方がいいです.<br />
<br />
以下の例は,bodeの結果を変数gain, phaseに入れ,あらためてsemilog関数でプロットしています.なお,横軸である周波数軸を指定するために,logspace関数で変数omegaを作って利用しています.<br />
<br />
>> sys = tf([1], [1 2 3]);<br />
>> omega = logspace(-1,2,100);<br />
>> [gain phase] = bode(sys, omega);<br />
>> gain_db = 20*log10(gain);<br />
>> axis([0.1 100 -120 0]);<br />
>> semilogx(omega, gain_db);<br />
<br />
<br />
<br />
== データファイルの取り扱い ==<br />
<br />
=== 全変数の保存と復元 ===<br />
<br />
一旦Octaveを終了して次回続きをやりたいときなど,変数の内容をとっておきたいことがあります.スクリプトファイルとして作業手順を保存することはできますが,時間のかかる計算が必要な場合その度に計算し直すのも面倒です.<br />
<br />
このような時,saveコマンドで変数の内容をファイルに保存できます.<br />
<br />
>> save オプション ファイル名<br />
<br />
とすると,カレントディレクトリに変数の内容を保持したファイルが作成されます.例えば,<br />
<br />
>> a = [1 2 3];<br />
>> B = [1 2 3; 4 5 6; 7 8 9];<br />
>> save -text alldata.dat<br />
<br />
とすれば,ファイルalldata.datに,現在のすべての変数の内容がアスキー形式(テキスト形式)で書き出されます.メモ帳など適当なテキストエディタで内容を確認できるはずです.なお,バイナリ形式で保存する場合は-binaryというオプションをつけます.テキスト形式にくらべて精度が高く,ファイルサイズも小さくなります.<br />
<br />
保存したファイルの読み込みにはloadコマンドを使います.読み込むとすべての変数が復活します.試しに,いったんclearコマンドで変数を全て消してから,loadして見てください.ファイルがアスキー形式かバイナリ形式かは自動的に判別されます.<br />
<br />
>> clear<br />
>> load alldata.dat<br />
<br />
なお,読み込もうとした変数がすでに存在する場合はエラーとなります.強制的に上書きする場合は,<br />
<br />
>> load -force ファイル名<br />
<br />
のように-forceオプションをつけます.<br />
<br />
=== 指定した変数だけの保存と復元 ===<br />
<br />
すべての変数を保存する必要がない場合や,一つのファイルに保存してある複数の変数のうちのいくつかだけを復元したい場合もあります.そのような場合,saveやloadコマンドでファイル名の後に変数名を羅列します.<br />
<br />
>> save オプション ファイル名 変数名 変数名 ...<br />
<br />
>> load オプション ファイル名 変数名 変数名 ...<br />
<br />
できます.なお,先と同様にloadコマンドではファイルの形式は自動的に判別されるので,オプションは通常不要です.<br />
<br />
=== タブまたはスペース区切りのテキストデータの読み込み ===<br />
<br />
実験結果をOctaveで処理したりグラフ化する場合,実験用のプログラム(通常はC言語などで自作するでしょう)側はOctaveに渡したいデータをテキスト形式のファイルとして保存するのが簡単です.<br />
<br />
saveコマンドに-textオプションをつけて保存したファイルは,一般に複数の変数について,変数名,タイプ,行サイズ,列サイズ,数列が列挙されています.このフォーマットを再現するようにプログラムを自作すれば,loadコマンドで先と同様に読み込めます.しかし,通常はタブまたはスペース区切りの数列だけのテキストファイルで保存しておき,Octave側で必要に応じて各変数に切り分けることが多いです.<br />
<br />
例えば,次のような内容のテキストファイルresult.txtがカレントディレクトリにあるとします.<br />
<br />
1 2 3<br />
2 4 6<br />
3 6 9<br />
4 8 12<br />
5 10 15<br />
<br />
このファイルを<br />
<br />
>> load result.txt<br />
<br />
と読み込むことができます.この時,変数名はファイル名から拡張子をとったものとして読み込まれます.すなわち,この例の場合resultという名前の変数ができます.<br />
<br />
先のsaveコマンドで保存したファイルの読み込みと異なるのは,このようにファイル名に基づいて変数名が決まることと,一度にひとつの変数しか読み込めないことです.ただし,後者は複数の変数の内容を結合して一つの行列としておき,それを一つのファイルでやり取りすることで対応できます.<br />
<br />
例えば,先の例では,1列目が時間tのデータ,2列目が入力uのデータ,3列目は出力yのデータというように3つの変数を一つの行列にまとめたものであるという具合です.この場合,loadした後で,次のように列に切り分ければ,3つの変数として分離できます.<br />
<br />
>> t = result(:,1);<br />
>> u = result(:,2);<br />
>> y = result(:,3);<br />
<br />
=== 他のアプリケーション向けのテキストデータ書き出し ===<br />
<br />
Octaveでのシミュレーションや解析の結果を他のアプリケーション(例えばExcelなどのスプレッドシートやIgorやNGraphといったグラフ化ソフトなど)に渡したい時はテキストファイルとして書き出します.ただし,save -text 変数名 変数名 ...で保存できるOctave固有のフォーマットのファイルをそのまま読み込めるとは限らないので,以下のような工夫が必要です.<br />
<br />
まず,書き出したい変数を結合して一つの変数にしておきます.このときサイズ(行数)が揃っていないとエラーになりますので,揃えるか,一緒にすることをあきらめて別のファイルにするか決めます.シミュレーション結果などは,時刻ベクトル,入力ベクトル,出力ベクトルなどが大抵同じ行数でしょうから,まとめて1つの行列にできるでしょう.<br />
<br />
例えば,時刻t,入力u,出力yの3つのベクトルを変数outfileにまとめてからテキストファイルoutfile.txtに保存するには以下のようにします.ただし,3つのベクトルは列ベクトルであるとします.<br />
<br />
>> outfile = [t u y];<br />
>> save -text outfile.txt outfile<br />
<br />
保存されたファイルの最初の5行は,日付や変数名,サイズなどの情報で先頭文字が#になっています.受け取る側のアプリケーションでその行を無視するように設定できれば,そのまま使用できますが,そうでない場合はテキストエディタで削除してから読み込ませる必要あります.<br />
<br />
最初から先頭の不要な行をつけないで保存するには,-textではなく,-asciiオプションを使用します.<br />
<br />
>> save -ascii outfile.txt outfile<br />
<br />
== Octaveスクリプトのいろいろ ==<br />
<br />
=== キーボード入力,画面への出力 ===<br />
<br />
スクリプト実行中にキーボードから数値や文字列を入力させるにはinput命令を使います.同時にメッセージとして表示させる文字列を指定することができます.<br />
<br />
画面への出力はC言語と同じくprintf命令を使います.<br />
<br />
a = input('Please input a: ');<br />
printf('a = %g\n',a);<br />
<br />
=== 条件判定 ===<br />
<br />
条件判定にはC言語と同じくif命令が利用できます.ただし,C言語のように括弧で条件式は囲みません.また,中括弧({ })は使用せず,endifでif命令の範囲を指定します.さらに,C言語ではelseとifを分けて書きますが,Octaveではelseifと続けて書きます.<br />
<br />
a = input('Please input a: ');<br />
if a > 0<br />
printf('a > 0\n');<br />
elseif a > -5<br />
printf('-5 < a <= 0\n');<br />
else<br />
printf('a < = -5\n');<br />
end <br />
<br />
=== 繰り返し ===<br />
<br />
==== while命令 ====<br />
<br />
while命令は条件が成り立っている間,命令群を繰り返します.やはり中括弧は用いずに,命令群の終わりはendwhileで指定します.なお,中断は\break命令です.<br />
<br />
while 条件<br />
命令群<br />
end<br />
<br />
sum = 0;<br />
while sum < 100<br />
a = input('Please input a: ');<br />
sum = sum + a;<br />
printf('sum = %g\n', sum);<br />
end<br />
<br />
<br />
==== for命令 ====<br />
<br />
for命令はC言語のforを限定的にした感じで,インデックスとする変数の初期値,増分,終値を指定して命令群を繰り返します.命令群の終わりはendfor,中断はbreakなのはwhileと同様です.なお,増分を省略すると1ととられます.<br />
<br />
for インデックス変数 = 初期値:増分:終値<br />
命令群<br />
endfor<br />
<br />
sum = 0;<br />
for i = 1:2:100<br />
sum = sum + i;<br />
if sum >100<br />
break<br />
end<br />
end<br />
printf('On i = %d, sum = %g\n', i, sum);<br />
<br />
初期値:増分:終値という書き方は,ベクトルの作成にも使えますので覚えておくと便利です.<br />
<br />
<br />
=== ユーザ定義関数 ===<br />
<br />
スクリプト内でユーザ独自の関数を定義したり,別ファイルで定義したりできます.<br />
<br />
スクリプト内で定義する場合は以下のようにします.<br />
<br />
function [戻値1, 戻値2, ...] = 関数名(引数1, 引数2, ...)<br />
% 関数の説明<br />
命令群<br />
end<br />
<br />
関数の終わりを示すためにendfunction命令が必要です.また,function命令直後のコメント文はhelpで表示されるので,簡単な説明を入れておくと良いでしょう.<br />
<br />
別ファイルで関数を定義する場合は,ファイル名を関数名に拡張子.mをつけます.関数名は既存の関数とかぶらないように,オリジナルなものになるよう注意が必要です.<br />
<br />
なお,C言語の関数と同様に,関数内で変数はローカル変数となるので,変数名がかぶっても内容は別物となることに注意が必要です.<br />
<br />
以下の例は,二つのベクトルの各要素ごとに差をとり,それを各々2乗したものの和を計算する関数の例です.(標準関数でsumsqというものがあるので作るまでもないのですが...)<br />
<br />
function err = sqerror(a, b)<br />
% usage: err = sqerror(a, b)<br />
% a: column vector<br />
% b: column vector, same siaze as a<br />
% err: sum of square errors between a and b<br />
c = a - b;<br />
err = c' * c;<br />
end</div>
Admin