<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/matla/">
    <title>matla @ ウィキ</title>
    <link>http://w.atwiki.jp/matla/</link>
    <atom:link href="https://w.atwiki.jp/matla/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>matla @ ウィキ</description>

    <dc:language>ja</dc:language>
    <dc:date>2013-11-10T03:26:55+09:00</dc:date>
    <utime>1384021615</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/16.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/28.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/27.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/26.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/25.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/2.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/1.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/22.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/13.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/matla/pages/12.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/matla/pages/16.html">
    <title>Tips</title>
    <link>https://w.atwiki.jp/matla/pages/16.html</link>
    <description>
      
&lt;p&gt;管理人的備忘録＆Tipsです！&lt;/p&gt;
&lt;p&gt;[ MATLAB関連]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; Figureをepsで保存するとサイズが変わってしまう対策&lt;br /&gt;
set(gcf,&#039;paperpositionmode&#039;,&#039;auto&#039;);   %&lt;br /&gt;
saveas(gcf,&#039;hogehoge&#039;,&#039;epsc&#039;);   %hogehoge.epsに保存．epscでカラーeps．モノクロなら&#039;eps&#039;&lt;/li&gt;
&lt;li&gt;コマンドで，ベクトルフォーマットにてeps保存(上と別の方法)，ついでに保存windowも出る&lt;br /&gt;
print(gcf, &#039;-painters&#039;,&#039;-depsc&#039;, uiputfile(&#039;*.eps&#039;, &#039;Select&#039;));&lt;/li&gt;
&lt;li&gt;コマンドラインオプションについて&lt;br /&gt;
１．　MATLABの起動を高速化１&lt;br /&gt;
環境がいらない場合(ちょっとした計算とかテストとか，自動化したスクリプトの実行とか)，コマンドのみで起動できる．&lt;br /&gt;
起動オプションに， -nodesktopをつける．つけ方は，MATLABのショートカットのリンク先を，&lt;br /&gt;
&quot;C:\Program Files\MATLAB\(バージョン)\bin\matlab.exe&quot; -nodesktop&lt;br /&gt;
とする．&lt;br /&gt;&lt;br /&gt;
２．　MATLABの起動を高速化２&lt;br /&gt;
最初のスプラッシュを消せる(MATLABのロゴが出るやつ)．&lt;br /&gt;
起動オプションに， -nosplashをつける．つけ方は，MATLABのショートカットのリンク先を，&lt;br /&gt;
&quot;C:\Program Files\MATLAB\(バージョン)\bin\matlab.exe&quot; -nosplash&lt;br /&gt;
とする． -nosplash -nodesktopの両方つけると結構速い．&lt;br /&gt;&lt;br /&gt;
３．　実行するコマンドを指定して起動&lt;br /&gt;
&quot;C:\Program Files\MATLAB\(バージョン)\bin\matlab.exe&quot; -r &quot;disp(&#039;hogehoge&#039;);&quot;&lt;br /&gt;
というかんじで実行できる．&lt;/li&gt;
&lt;li&gt;MATLABでのOMPのスレッド数設定&lt;br /&gt;
maxNumCompThreadsを用いると，最大スレッド数を設定可能．&lt;br /&gt;
はたして自分でマルチスレッドを組んだ方が早いのか？！&lt;/li&gt;
&lt;li&gt;&lt;br /&gt;
 &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;[Power Point関連]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; PowerPoint (パワーポイント，以下ぱわぽ)をしばらく編集していると，日本語の文字が消える（表示が透明になる）ことがあります．&lt;br /&gt;
内部的にフォントのキャッシュが解放されず，ページファイルをがびがび消耗していくことで，&lt;br /&gt;
ページファイル容量が限界を超えた瞬間，日本語フォントが飛ぶらしいのです．これを防ぐには，&lt;br /&gt;
レジストリエディタを使って以下のように編集します．&lt;br /&gt;
（レジストリエディタを良く知らずに編集すると，PCが起動しなくなる等不具合の可能性があります！）&lt;br /&gt;
（必ず自己責任で理解したうえで実行してくださいまし！私は責任取れません．）&lt;br /&gt;
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session
Manager\KnownDLLs &lt;br /&gt;
に，[usp10]のキーを新規追加し，値を[usp10.dll]とする&lt;/li&gt;
&lt;li&gt;ぱわぽからｅｐｓを書き出すには，remora ( &lt;a href=&quot;http://d.hatena.ne.jp/n-oohira/touch/searchdiary?word=*%5Bremora%5D&quot;&gt;d.hatena.ne.jp/n-oohira/touch/searchdiary&lt;/a&gt; )が&lt;br /&gt;
非常に便利です．emfで図を保存すると，ウラでepsに自動変換してくれます．emf2epsのフロントエンド&lt;br /&gt;
なのですが，コマンドがおかしい場合は，適当にemf2epsを改造すれば使えたり…&lt;/li&gt;
&lt;li&gt;パワーポイントから書き出す際，学会投稿するときに，いれた覚えも無いのに，TrueTypeフォントが&lt;br /&gt;
入っていると怒られる場合があります．ぱわぽの図のデフォルトフォントが日本語になっているためで，&lt;br /&gt;
図にテキストを編集で半角スペース等テキストを追加し，FontをTimes new roman等に設定した後に&lt;br /&gt;
emfとして保存することで回避できます．&lt;br /&gt;
 &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;[Windows関連]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Windows 7
で，Terastationを使っていると，ファイル共有でワークグループが同じに設定されているにもかかわらず，相手のルートフォルダは見えるのだが，アクセスしようとID，パスワードを入力しても，勝手にPC名が付与されて，アクセスできない．ように見える．&lt;br /&gt;
なんど入れ直してもダメと言われる．これの解決策は，&lt;br /&gt;
コントロールパネル-&amp;gt;クラシック表示(一部PCではこれが出ないので，かわりに表示方法-&amp;gt;小さいアイコンとする)-&amp;gt;管理ツール(コンピュータ-&amp;gt;管理ツールとは&lt;span style=&quot;color:#ff0000;&quot;&gt;違う&lt;/span&gt;ので注意)-&amp;gt;ローカルセキュリティポリシー-&amp;gt;ローカルポリシー-&amp;gt;セキュリティーオプション-&amp;gt;右のリストの中盤の「ネットワークセキュリティ：LAN
Manager認証レベル･･･ほげほげ」をダブルクリック-&amp;gt;NTLM応答のみ送信する，あるいはLMとNTLM応答を送信する，に設定する．&lt;span style=&quot;color:#ff0000;&quot;&gt;ただし，副作用などはわからないので，やはり自己責任でお願いします！&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Windows XP 32bit から、Windows 7 64bitに移行した時，Visual Studio
2008で、以前のプロジェクトをビルドすると、リンカのエラーが出ることがある。&lt;br /&gt;
私の場合、32bitアプリをWin7 64bit環境でビルドしようとした時に発生。&lt;br /&gt;
エラー内容は「 LINK : fatal error LNK1000: Internal error during IncrBuildImage 」&lt;br /&gt;
以下のURLから提供されるパッチで解決可能。&lt;br /&gt;&lt;a href=&quot;http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=11399&quot;&gt;
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=11399&lt;/a&gt;&lt;/li&gt;
&lt;li&gt; Windows 7
で，エクスプローラの左に表示されるツリー表示には，ホームグループが表示されるが，これ，あんまり使わないので，正直うざい．消す方法がマイコミジャーナルに載ってた．&lt;br /&gt;&lt;a href=&quot;http://journal.mycom.co.jp/column/windows/055/index.html&quot;&gt;http://journal.mycom.co.jp/column/windows/055/index.html&lt;/a&gt; レジストリを弄ることになるので注意を．&lt;/li&gt;
&lt;li&gt; Windowsで，相対パスでショートカットを作成する方法．&lt;br /&gt;
ふつうにショートカットを作成し，リンク先を下記のように変更する．&lt;br /&gt;
%windir%\system32\rundll32.exe url.dll,FileProtocolHandler
&quot;./Hogehoge/Mogemoge.sln&quot;&lt;br /&gt;
↑これで，HogehogeフォルダにあるMogemoge.slnを開ける．ただし，XPではうまくいったが，Win7ではダメぽ…&lt;br /&gt;
Win7のx64では，以下のようにしたら，できました．Batファイルなので安全とは言えませんが…&lt;br /&gt;
-------ShortCut.bat (名前はなんでもＯＫ)----- 以下，中身&lt;br /&gt;
start &quot;&quot; &quot;Hogehoge\Mogemoge.sln&quot;&lt;br /&gt;
----------------------------------------- 一行だけですねｗ&lt;br /&gt;
Startコマンドの第一に空白，第二に相対パスでの開きたいファイルやフォルダ名を入れます．&lt;br /&gt;
batファイルなので，駆け上がりは cd ../ を一行目の前に入れるだけですね．&lt;br /&gt;
安全ではないのでお勧めはしませんが，手っ取り早くショートカット的なものが作れます．&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt; [TortoiseSVN]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;バッチで複数のローカルなワークスペースのフォルダを自動的にupdate．&lt;br /&gt;
TortoiseProc /command:update /path:&quot;hoge*foo*bar&quot; /closeonend:3&lt;/li&gt;
&lt;li&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; [Latex]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;ページにたくさん図表を張り付けたい時に次のページに図表が移動するのを防ぐ方法．　&lt;br /&gt;
\setcounter{topnumber}{10}　&lt;br /&gt;
\renewcommand\topfraction{1.0}&lt;br /&gt;
として1ページの最大図表数と文章のどこまで図表が来れるかを設定すると良い．&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt;[Visual Studio]&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;デバッグ時のウオッチをカスタマイズする．&lt;br /&gt;
下記はEigenのｖｅｃｔｏｒ，matrixを見やすくする場合．動的配列だと便利！&lt;br /&gt;
C:\Program Files (x86)\Microsoft Visual Studio
10.0\Common7\Packages\Debugger\autoexp.dat&lt;br /&gt;
を編集する．&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;
;------------------------------------------------------------------------------&lt;br /&gt;
;  Eigen::Vector from &amp;lt;vector&amp;gt;&lt;br /&gt;
;------------------------------------------------------------------------------&lt;br /&gt;
; vector is previewed with &quot;[&amp;lt;size&amp;gt;](&amp;lt;elements&amp;gt;)&quot;.&lt;br /&gt;
; It has [size] and [capacity] children, followed by its elements.&lt;br /&gt;
; The other containers follow its example.&lt;br /&gt;
Eigen::Matrix&amp;lt;*,-1,1,0,-1,1&amp;gt;{&lt;br /&gt;
    preview (&lt;br /&gt;
        #(&lt;br /&gt;
            &quot;[&quot;,&lt;br /&gt;
            $e.m_storage.m_rows,&lt;br /&gt;
            &quot;](&quot;,&lt;br /&gt;
            #array(&lt;br /&gt;
                expr: $e.m_storage.m_data[$i],&lt;br /&gt;
                size: $e.m_storage.m_rows&lt;br /&gt;
            ),&lt;br /&gt;
            &quot;)&quot;&lt;br /&gt;
        )&lt;br /&gt;
    )&lt;/p&gt;
&lt;p&gt;    children (&lt;br /&gt;
        #(&lt;br /&gt;
            [actual members]: [$e,!],&lt;br /&gt;
            #([size] : $e.m_storage.m_rows),&lt;br /&gt;
            #array(&lt;br /&gt;
                expr: $e.m_storage.m_data[$i],&lt;br /&gt;
                size: $e.m_storage.m_rows&lt;br /&gt;
            )&lt;br /&gt;
        )&lt;br /&gt;
    )&lt;br /&gt;
}&lt;br /&gt;
;------------------------------------------------------------------------------&lt;br /&gt;
;  Eigen::Matrix from &amp;lt;vector&amp;gt;&lt;br /&gt;
;------------------------------------------------------------------------------&lt;br /&gt;
; vector is previewed with &quot;[&amp;lt;size&amp;gt;](&amp;lt;elements&amp;gt;)&quot;.&lt;br /&gt;
; It has [size] and [capacity] children, followed by its elements.&lt;br /&gt;
; The other containers follow its example.&lt;br /&gt;
Eigen::Matrix&amp;lt;*,-1,-1,0,-1,-1&amp;gt;{&lt;br /&gt;
    preview (&lt;br /&gt;
        #(&lt;br /&gt;
            &quot;[&quot;,&lt;br /&gt;
            $e.m_storage.m_rows,&lt;br /&gt;
            &quot;,&quot;,&lt;br /&gt;
            $e.m_storage.m_rcols,&lt;br /&gt;
            &quot;](&quot;,&lt;br /&gt;
            #array(&lt;br /&gt;
                expr: $e.m_storage.m_data[$i],&lt;br /&gt;
                size: $e.m_storage.m_rows * $e.m_storage.m_cols&lt;br /&gt;
            ),&lt;br /&gt;
            &quot;)&quot;&lt;br /&gt;
        )&lt;br /&gt;
    )&lt;/p&gt;
&lt;p&gt;    children (&lt;br /&gt;
        #(&lt;br /&gt;
            [actual members]: [$e,!],&lt;br /&gt;
            #([rows] : $e.m_storage.m_rows),&lt;br /&gt;
            #([cols] : $e.m_storage.m_cols),&lt;br /&gt;
            #array(&lt;br /&gt;
                expr: $e.m_storage.m_data[$i],&lt;br /&gt;
                size: $e.m_storage.m_rows * $e.m_storage.m_cols&lt;br /&gt;
            )&lt;br /&gt;
        )&lt;br /&gt;
    )&lt;br /&gt;
}&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;    </description>
    <dc:date>2013-11-10T03:26:55+09:00</dc:date>
    <utime>1384021615</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/28.html">
    <title>ART-Linuxの便利ツール</title>
    <link>https://w.atwiki.jp/matla/pages/28.html</link>
    <description>
      個人的に一番書いておきたい備忘録ｗ

ART-Linuxを使うに当たって，便利ツールをいろいろ準備する．
すべてUbuntu10.04向けな情報である．

***gccを入れておく
なんとLinuxのくせに開発環境が入っていない．
G++4.4をSynapticからインストールする．

ついでにmakefileの依存関係をなんとかしてくれる
makedependをインストールしておく．g++の-MMオプションを使う人はいらない．
# sudo apt-get install makedepend

***Subversionを入れる
バージョン管理ツールとして，RapidSVNとmeldを入れた．
# sudo apt-get install rapidsvn
# sudo apt-get install meld

RapidSVNを起動して
表示→設定→プログラム→比較ツール→
上の空欄(参照の左)に [/usr/bin/meld]
引数に              [%1 %2] を入力
で，meldを差分表示ツールとして登録可能

ついでにRapidSVNではSubversion自体は入らないので，
# apt-get install subversion
もしておくと困ったときに使える．

***geditにshift-jisエンコーディング対応させる。
Windowsがメインユーザである私は，エディタにはgeditを使っている．
いろんな意味でメモ帳みたいなものだからである．
しかし，SHIFT-JISには最初対応していないので，文字化けする．
ターミナルから、
# sudo gconf-editor
して、apps -&gt; gedit2-&gt;preferences-&gt;encoding
を開き、auto_detectに [SHIFT_JIS]を追加する。
ねんのため上の方にもっていっておく。

キーを右クリックして、デフォルト、かつシステムの設定にしておく。
geditを開き直せばあらふしぎ。できなかったらググってください．

***バックアップを考える
制御システムでは，新しいドライバのインストールや改造が
たびたびになるが，そのたびにシステムを壊していると何度もセットアップが必要になる．
バックアップを取っておきたいところ．
Linuxのバックアップユーティリティ、remastersysを使ってみる．
システム→システム管理→アップデートマネージャ→設定→他のソフトウェア→追加として、
deb http://www.geekconnection.org/remastersys/repository karmic/
を、APTラインとして追加する．

一度ここで再起動して、synapticでremastersysを検索、インストールする．

remastersysを起動し、backupする．/home/remastersys/remastersys に、
cunstombackup.isoとして保存される．
これをどこかにコピーしておくか，右クリック-&gt;書き込みでリストアdvdを書き込む．

リストアしたい場合、これを書き込んだDVDを入れて起動して、
インストール(boot : install)すればよいと思われる。
動作確認ならば、boot: live でいいかな？？
ただし、デフォルトでは通常linuxが起動します…
install後に、StartupManagerで変更してください。

***Ubuntu で、suコマンドを使用可能にする
毎回sudoを打つのは非常に面倒．
また，制御でハードウェアを直接たたく場合などは
rootでログインしたいとことだが，Ubuntuではrootにパスワードがなく，ログインできない．

そこでrootにパスワードを設定すればsuコマンドが使える．らしい．
# sudo passwd root
→sudoのためのパスワードの後、設定したいパスワードを二回入力

これでターミナルを開いたあと、# su して、パスワードを入力すれば、
そのターミナルではsudoが不要になる．はず．

***root権限のファイルをファイルブラウザで移動できるようにする
ファイルブラウザではroot権限の場所にファイルを移動できない。
GUIで、システム領域にファイルをいじいじする場合は、
# sudo nautilus
でファイルブラウザを起動し、アクセスすればよい。たぶん。
パネルに、カスタムアプリケーションを追加して、
上記コマンドを入れておくと、らくちんぽん。


***boostをインストールする
制御用プログラムを使うに当たって，boostを準備する。
とっても便利なライブラリboost．
とりあえず最新版(執筆時ば1.47)をダウンロードして．．．

Boost C++ Libraries
http://www.boost.org/

ダウンロード後、アーカイブマネージャなどで
例えば/home/pa10/workspace下などに解答しておく。

# cd /home/pa10/workspace/boost_*
(*は、boost_1_47_0などのboostばーじょん)
でフォルダに入り、
# sudo sh bootstrap.sh
# sudo EXPAT_INCLUDE=/usr/include EXPAT_LIBPATH=/usr/lib ./bjam --without-mpi --prefix=/usr/local --without-python threading=multi install
でインストールと、ライブラリのコンパイルを行う。
(--without-pythonなどで例えばpythonなしにできる。時間とHDDの節約ね。)

コンパイル後、ライブラリへのパスを、環境変数に追加する必要がある。
# export LD_LIBRARY_PATH=/usr/local/lib
とする。ただし、再起動などすると環境変数が消えるので、
bashの起動時設定ファイルを下記のように開いて…
# sudo gedit ~/.bashrc
適当な場所（たとえば最初のコメントのすぐ後）に、下記を追加する。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

これを保存して、ターミナルを立ち上げ直せばOK。
(注意！ suしてrootになった状態で#sudo gedit ~/.bashrcしても
ユーザの設定ではなくrootの設定だけ変わってうまくいかないので、
ターミナルを起動してそのまま#sudo gedit ~/.bashrcすること。)

***IT++を準備する

制御プログラムではvectorやmatrixの計算が必要になる．
いろいろな数学ライブラリはあるが，
boost/numericか，IT++を使うのが個人的にはブーム．
ここではIT++を使ってみる．
Matlab互換のパラメータ読み込みとか，インデックス操作がいい感じ．
欠点といえばvector×matrixが定義されていないことかな…
全部Matirxというのもいまいち残念だし…
あとは固定長vectorを使ったコンパイル時のサイズ解決ができないこと．
ロボット制御で，3次元や4次元のvectorを使うことが多い私にはちょっと不満ですが…

とりあえず使う分には便利なので入れ方をメモっておく．
なんと，Synapticで検索するだけ．Quickでは出てこないので
検索ボタンを押して「itpp」を検索して出てくるものを全部インストールするだけ．終わり．

自分のプログラムを作る際には，コンパイルフラグに，
# g++ `itpp-config --cflags` -o hoge hoge.cpp `itpp-config --libs`
などとするだけ．まぁ簡単．
Windowsだとclapackやcblasのライブラリをネットでゲットしてきたり，コンパイルする必要がある．


----
以上．何か便利に使う設定で忘れそうなことがあったら，随時この備忘録に追加します．

Next -&gt; [[ART-Linuxの実行テスト]]

本日の来訪者：&amp;counter(today)
昨日の来訪者：&amp;counter(yesterday)
来訪者累積：&amp;counter(total)

#comment(title_name=おなまえ,title_msg=こめんと,nsize=50,size=100,vsize=3,disableurl,below)    </description>
    <dc:date>2011-09-29T01:03:05+09:00</dc:date>
    <utime>1317225785</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/27.html">
    <title>ART-Linuxのインストール</title>
    <link>https://w.atwiki.jp/matla/pages/27.html</link>
    <description>
      ART-linuxを準備するには，まず，x86互換PCを準備します．
いわゆるパソコンですね．ただし，現在は32bitのみの対応のようです．
64bit版はハードウェアドライバの対応なども状況がよくありませんので，
制御をする場合には無難な選択肢でしょう．

***PC選択時の注意点

個人的には，多くのシステムで試したわけではないのですが，
-Core2Duoシステムではなぜか上手くいかない例が多い(重い)
-ビデオカードがnVidiaなシステムではなぜか上手くいかない例が多い(重い)
といった経験があります．どうも，ARTの割り込みとビデオカード周り？の割り込みがバッティングし，
非常に動作が重くなるようです．原因については謎とのことですが…
修正は難しく，たぶん改良も期待薄(商品ではありませんからね！)なので，上手く動くハードを探します．
私の経験だと，古き良きPentium4や，corei5のPCでは，nvidiaボードであっても上手くいっていました．
(core2duoシステムがいけないのかな？？)
また，AMDのAthlonなんかもいまのところ上手くいっています．CPUしか記憶にありませんが，一応うまくうごいたものを
以下にリストアップします．古いのは詳細が記憶にないのですいません．
-Socket 478系のPentium4，PentiumD + 845 (ART カーネル2.2系にて動作)
-Corei5 Sandy Bridge + H67 
-Athlon 64 XP 5800+ + ?
ただし，重いからといってART機能が使えないわけではありません．重くて使いものにならないかもしれませんが…
CUIで動かすと問題なく使える可能性が0ではありません^^;

インストール前の注意として，
Speed step, Turbo boost等の実クロック可変なシステムはBIOSによりoffにしたほうが無難でしょう．
というか，offにしてください．時間計測にも影響を及ぼす可能性が0とは言えません．

それではArt-linuxシステム構築の備忘録です．下記備忘録のため書きなぐります．

***Linuxをインストールする

まず，土台となるlinuxをインストールする．現在，ARTがサポートされているのは[[公式ページ&gt;http://www.dh.aist.go.jp/jp/research/humanoid/ART-Linux/]]を確認．
ここではUbuntu 10.04 LTSを使う．私はwindowsメインなユーザのため，debianよりUbuntuが好き．

インストールに関する詳細はググってください．windowsとのデュアルブートでもかまいません．

***パッケージのアップデートを行う

起動すると，だいたいパッケージアップデートマネージャが出て，
各パッケージのアップデート情報が教えてもらえる．
滞りなくアップデートしてもらってください．

***ART-linuxパッチを充てる

Ubuntuを起動し，とりあえずARTパッチを充てる．
公式ページに行き，

Ubuntu 10.04用
linux-image-2.6.32-art_20110914_i386.deb
linux-headers-2.6.32-art_20110914_i386.deb
linux-source-2.6.32-art_20110914_all.deb

のところから，クリックして，パッケージマネージャで開いてそのままインストールする．
あるいは，ダウンロード後，上記の下に記されているコマンドでカーネルをインストールする．
できれば三つともインストールする．(dpkg -i *** の***を三つそれぞれに変えて実行する)

ここで一度再起動をお勧め．

***ARTで起動できるように設定する

インストールしたカーネルで，起動するように設定を変更する必要がある．

Windowsとデュアルブートの場合，起動時にカーネル選択が可能となるが，
そうでない場合，自分で起動カーネルを設定する必要がある．
現在，Art-linuxのカーネルで動いているかを確認するには，ターミナルで
# uname -a
として，カーネルの名前が2.6.32-art 等とartが入っていればＯＫ．
設定するには主に二つの方法がある．

1. Startupマネージャを使ってデフォルトを変更する

-デフォルトの起動をARTにできる．簡単．起動ごとに選べない
-Grub2の設定をいじらないと，最低割り込み周期を変更できない

UbuntuのメニューからSynapticを起動し，startupと検索すると出てくる．
これをインストールし，起動して，エントリ群から，Ubuntu, *** 2.6.32-art等と，
artがついているカーネルのものに変更すればOK．完了．
ARTオプションはデフォルトのため，1msec周期以上までの実時間となる．

簡単に起動カーネルを変更できるので，どちらにせよ入れておくのをお勧めする．

2. Grub 2の設定を変更する

-起動時にメニューを表示し，ARTを起動するか通常のUbuntuで起動するか選択できる．
-少々複雑だが，一度設定していまえば非常に便利．

設定の要領は以下の通り．

grub2では，grub.cfgが自動的に書き換えられ，bootに登録される．
そこで，/etc/grub.d/40_customにカスタム項目を追加する形となる．
二つターミナルを開き，それぞれ
# sudo gedit /etc/grub.d/40_custom
# gedit /boot/grub/grub.cfg
を実行する．grub.cfgの下の方に，
----
 menuentry &#039;Ubuntu, with Linux 2.6.32-art&#039; --class ubuntu --class gnu-linux --class gnu --class os {
     recordfail
     insmod ext2
     set root=&#039;(hd0,1)&#039;
     search --no-floppy --fs-uuid --set **********
     linux	/boot/vmlinuz-2.6.32-art root=UUID=********** ro   quiet splash
     initrd	/boot/initrd.img-2.6.32-art
 }
----
こんな感じのエントリーがある．名前が&#039;Ubuntu, with Linux 2.6.32-art&#039;となっているからわかるとおり，
これはart-linuxのエントリである．これをコピーし，/etc/grub.d/40_customの一番下に張り付ける．
以降，張り付けた/etc/grub.d/40_customだけ弄るので，grub.cfgは閉じておくと安全．

まず，ARTオプション(ART=***で，実時間割り込み周期の最短時間が***μ秒となる)を与える．
linux	/boot/vmlinuz-2.6.32-art root=UUID=********** ro   quiet splash
を
linux	/boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=500 quiet splash
に変更する．500を100等に変更したら，もっと割り込み周期を小さくできるが，負荷はちょっと大きい．
ハード構成にもよるが，100μ秒くらいがせいぜいだと思っている．

次に，エントリ名&#039;Ubuntu, with Linux 2.6.32-art&#039;を好きなように(たとえば&#039;ART-Ubuntu, ART=500&#039;など)変更する．

ここで， &#039;quiet splash&#039;を， &#039;quiet text&#039;に変更すると，CUIモードで起動できるため，たとえば上記エントリを
２つコピーしておき，

----
 menuentry &#039;ART-Ubuntu&#039; --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root=&#039;(hd0,1)&#039;
	search --no-floppy --fs-uuid --set **********
	linux	/boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=200 quiet splash
	initrd	/boot/initrd.img-2.6.32-art
 }
 menuentry &#039;ART-Ubuntu CUI&#039; --class ubuntu --class gnu-linux --class gnu --class os {
	recordfail
	insmod ext2
	set root=&#039;(hd0,1)&#039;
	search --no-floppy --fs-uuid --set **********
	linux	/boot/vmlinuz-2.6.32-art root=UUID=********** ro ART=200 quiet text
	initrd	/boot/initrd.img-2.6.32-art
 }
----
などとしておくと，便利かもしれない．制御時にはCUIの方がお勧めだし，
先述の重くなるcore2環境などでも，若干軽くなるかもしれない．CUI環境については詳細は後述．
/etc/grub.d/40_customを保存しておく．
(この時点で，StartupManagerを起動すると，エントリーが追加されているので，それで選択してもよい)

次に，起動時メニューを表示できるようにする．
ターミナルにて
# sudo gedit /etc/default/grub
としてgrub設定ファイルを開く．そして以下のように編集する．

----
1. GRUB_HIDDEN_TIMEOUTをコメントアウト
# GRUB_HIDDEN_TIMEOUT=0	

2. GRUB_HIDDEN_TIMEOUT_QUIETをfalseに
GRUB_HIDDEN_TIMEOUT_QUIET=false

3.必要があればGRUB_TIMEOUTの時間を任意に変更(単位は秒)
GRUB_TIMEOUT=&quot;30&quot;

4. リカバリモードがうっとうしいということならば，下記を有効にする
GRUB_DISABLE_LINUX_RECOVERY=&quot;true&quot;

5. /etc/default/grubを保存し，閉じる．

6. memtestも不要ならば，ターミナルで下記を実行し，実行権限を削除しておく
# sudo chmod -x /etc/grub.d/20_memtest86+

7. update-grubで変更内容を適用
# sudo update-grub

再起動すると選べるようになっているはず．
以上でART-linuxで起動する準備は完了です．

***CUIでのart-linuxについて
Ubuntuでは，これまでのようにinit 3とかしてランレベルを変更できないらしい．
上記のGrubの設定か，ログイン時にCtrl+Alt+F1を押すことでCUIモードに行ける．

ただし，CUIでは日本語が◆として表示されるうえ，日本語入力はできない．
表示側だけは，jfbtermを用いるとちゃんと表示できるようだ．
synapticであらかじめインストールしておくか，ターミナルにて
# apt-get install jfbterm
# jfbterm
としてインストール＋実行することで日本語は表示される．
(インストール中，y/n?が聞かれる．文字化け中だとなにがなんだかわからないが，
yとして答えるとインストール可能である)

CUIには大きな問題がある．日本語版Ubuntuでは，デスクトップが，カタカナで「デスクトップ」
というディレクトリとして作られている．CUIではカタカタが打てず，移動できない（！じゃぱにーずの悲劇！）．
あらかじめ，GUI環境にて，desktopなどの名前でシンボリックリンクを作っておかないとはまる．

もうひとつ問題がある．
CUIからGUIに移動するには，startxとすれば良いが，root権限が必要であり，
sudoやsuによってrootになりstartxするとrootとしてGUIにログインされ，
通常のGUIログイン時のデスクトップ設定が反映されない．
これで困る場合はおとなしくrebootするしかないようだ？？＞情報求む
個人的には開発はGUI，実行はCUIでやりたいため，これができないと不便なのだが…
そもそも実験システムなので，rootでGUI環境を作ってしまうという手も無くはなさそうだ．

Next -&gt; [[ART-Linuxの便利ツール]]

本日の来訪者：&amp;counter(today)
昨日の来訪者：&amp;counter(yesterday)
来訪者累積：&amp;counter(total)

#comment(title_name=おなまえ,title_msg=こめんと,nsize=50,size=100,vsize=3,disableurl,below)    </description>
    <dc:date>2011-09-20T20:50:32+09:00</dc:date>
    <utime>1316519432</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/26.html">
    <title>ART-Linuxについて</title>
    <link>https://w.atwiki.jp/matla/pages/26.html</link>
    <description>
      *ART-Linuxについて

ART-LinuxはRT-Linuxのように実時間でのプロセス実行を目指したOSで，
産総研さんが開発し，現在はSourceForgeにArt-Linuxの項目があるようです．（[[Art-Linux&gt;http://sourceforge.net/mailarchive/forum.php?forum_name=art-linux-welcome]]）

個人的にはすごくお勧めなのですが，理由は以下です．
-100μ秒程度の実時間実行が簡単に実現可能
-ユーザ空間でリアルタイムが実現できるのでRT-linuxのようにカーネルプロセスと分けて開発する必要がない
-上記のことから，普通のマルチスレッドで組みさえすればよく，面倒なプロセス間通信が必要がない
-タイマーボード等を用意する必要がない
-OS等ソフトウェアはタダのものを使える！(←重要！)

利点１に関しては，制御をする際には非常に重要です．
リアルタイム性は高速に周期実行ができるとか，そういうことではありません．
たとえ1sec周期であっても，windowsではリアルタイム実行が困難です．
それは，windowsだと次回の実行時間が1.000sec後かもしれないし，1.005sec後かもしれないからです．
これはいわゆるリアルタイム性が通常保証されないためです．
その当たりを保証するには，タイマーボード等を用いるか，高度なプログラミングが必要になります．

利点５は重要ですね．OSがオープンソースであり，ARTパッチも無料で使用可能です．
(ただし，ライセンスの詳細は確認してください)
お金のない研究室で，リアルタイム制御が必要ならば，
手持ちのPC＋インターフェース社等のAD/DA/DIOを使うことで
10万円前後での実時間制御システムの構築も可能でしょう．

逆に，欠点は以下です．
-Linuxベースのため，Windowsユーザーには壁が高く感じられる（^^;
-RT-linuxのような，二桁μ秒の割り込みは無理(経験的にはARTは100μ秒程度まで…)
-意外とハードウェア(PC)を選ぶ

上記の欠点があったとしても，制御を考える際には非常に有力な選択肢になりうると思います．
個人的には組み込みでもなければ，RT-Linuxはちょっと…という感じです．

欠点１は，カーネル2.6対応ARTの登場でかなり状況が変わってきました．
WindowsユーザにやさしいUbuntuが使えるようになったからです．
PCに弱い私からすれば，VisualStudioが使えないのは結構なネックですが…
どうしても必要ならeclipseでなんとかなるでしょう．

欠点２は，モータの時定数やロボット制御に必要な計算量を考えれば，
だいたい1msec～サブミリ秒で制御ができれば，十分であろうと思いますし，
これ以上短周期ならDSPも視野に入ってくるレベルだと思いますので，それほど欠点ではないかなと思います．
筆者は200μ秒周期で動作させていた経験があります．
Windowsでは10msec程度がせいぜいなので，これに比べれば随分いいでしょう．


欠点３は，もはや情報を集めるしかありませんｗ
詳細はインストールの項目に書きます．


以下の項目に当たればART-Linuxがお勧めです．
-目標とする制御周期が200μ秒～10msec程度である
-制御に使うデバイスで，linux用のドライバがちゃんと提供されている(←非常に重要！)
-RT-linux用のドライバが無い(←これ多いパターン)
-DSPが使えない（買えるほどお金がない，ドライバがない，計算が複雑）
-小型PCやノートPCを使うため，タイマーボードが着けられない
-RT-linuxが使えるほどlinuxに詳しくないor面倒くさい
-カーネル領域で完ぺきに動くモジュールプログラミングができるほどプログラミングスキルがない
-フリーズが怖いのでカーネル領域で自作プログラムを動かしたくない
-リアルタイムモジュールとユーザモジュール，二つもメンテナンスしたくない
-最近のDebianとかUbuntuくらいGUIが動くならなんとか使えそうｗ
-RealTimeWindowsなんか高くて買えるか！(プチリアルタイムができたWindows CEは無くなったしｗ)


制御をおこなう場合，一番重要なことは，デバイスドライバの問題です．
いまだにwindows用ドライバしか提供されていない「残念な」デバイスが売られています．
（こういうのは淘汰されてほしいですねｗ）

兎に角，ART-linuxは一度環境さえ構築できてしまえば，実時間制御に非常に有用です．
それでは実際に構築方法をメモっていきますｗ

Next -&gt; [[ART-Linuxのインストール]]


本日の来訪者：&amp;counter(today)
昨日の来訪者：&amp;counter(yesterday)
来訪者累積：&amp;counter(total)

#comment(title_name=おなまえ,title_msg=こめんと,nsize=50,size=100,vsize=3,disableurl,below)    </description>
    <dc:date>2011-09-20T20:50:15+09:00</dc:date>
    <utime>1316519415</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/25.html">
    <title>How to ART-Linux</title>
    <link>https://w.atwiki.jp/matla/pages/25.html</link>
    <description>
      *ART-Linuxについて

ART-Linux(←が正しいと思いますが，入力の手間から時々大文字小文字が違ったらすいません^^;)はRTLinuxのように実時間でのプロセス実行を目指したOSで，
産総研さんが開発し，現在はSourceForgeにArt-Linuxの項目があるようです．（[[Art-Linux&gt;http://sourceforge.net/mailarchive/forum.php?forum_name=art-linux-welcome]]）

個人的にはすごくお勧めなのですが，理由は以下です．
-100μ秒程度の実時間実行が簡単に実現可能
-ユーザ空間でリアルタイムが実現できるのでRT-linuxのようにカーネルプロセスと分けて開発する必要がない
-上記のことから，普通のマルチスレッドで組みさえすればよく，面倒なプロセス間通信が必要がない
-タイマーボード等を用意する必要がない
-OS等ソフトウェアはタダのものを使える！(←重要！)

逆に，欠点は以下です．
-Linuxベースのため，Windowsユーザーには壁が高く感じられる（^^;
-RT-linuxのように，二桁μ秒の割り込みは無理(経験的にはARTは100μ秒程度まで…)
-意外とハードウェア(PC)を選ぶ

兎に角，ART-linuxは一度環境さえ構築できてしまえば，実時間制御に非常に有用です．
今回はその構築法について，備忘録がてら，書きたいと思います．

+[[ART-Linuxについて]]
+[[ART-Linuxのインストール]]
+[[ART-Linuxの便利ツール]]

本日の来訪者：&amp;counter(today)
昨日の来訪者：&amp;counter(yesterday)
来訪者累積：&amp;counter(total)

#comment(title_name=おなまえ,title_msg=こめんと,nsize=50,size=100,vsize=3,disableurl,below)    </description>
    <dc:date>2011-09-20T20:49:48+09:00</dc:date>
    <utime>1316519388</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/2.html">
    <title>メニュー</title>
    <link>https://w.atwiki.jp/matla/pages/2.html</link>
    <description>
      **メニュー
-[[トップページ]]
-[[使えるMatlab Central]]
-[[管理人の作ったmファイル]]
-[[MATLAB関連のVBS]]
-[[MATLAB&amp;CUDAで快適計算ライフ]]，[[その２&gt;MATLAB&amp;CUDAで快適計算ライフ2]]，[[その３&gt;MATLAB&amp;CUDAで快適計算ライフ3]]，[[MATLAB+CUDAv3.1について]]，[[CUDAがMATLABのツールボックスに！]]
-[[ART-Linuxのすすめ&gt;How to ART-Linux]]
-[[OHPack_コメントフォーム]]
-[[Tips]]


更新履歴

#recent(10)

&amp;link_editmenu(text=ここを編集)    </description>
    <dc:date>2011-09-18T16:18:01+09:00</dc:date>
    <utime>1316330281</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/1.html">
    <title>トップページ</title>
    <link>https://w.atwiki.jp/matla/pages/1.html</link>
    <description>
      -MATLABについて、備忘録など、Tipsを掲載予定！

-[[使えるMatlab Central]]
-[[管理人の作ったmファイル]]
-[[MATLAB&amp;CUDAで快適計算ライフ]]，[[その2&gt;MATLAB&amp;CUDAで快適計算ライフ2]]，[[その3&gt;MATLAB&amp;CUDAで快適計算ライフ3]]，[[MATLAB+CUDAv3.1について]]，[[CUDAがMATLABのツールボックスに！]]，
-[[MATLAB関連のVBS]]
-[[How to ART-Linux]]
-[[OHPack_コメントフォーム]]
-[[Tips]]
#search()


======================================================================
======================================================================
======================================================================









_    </description>
    <dc:date>2011-09-18T14:58:58+09:00</dc:date>
    <utime>1316325538</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/22.html">
    <title>ohpack_bbs_log</title>
    <link>https://w.atwiki.jp/matla/pages/22.html</link>
    <description>
      -書き込みテストです．左側に名前，右側にコメントをどうぞ． - 管理人 2010-04-16 23:13:31  
-早速いただきました！参考にさせていただきます． - 牧田（三重大） 2010-04-27 15:10:31  
--ありがとうございます！プログラムが書け次第随時機能追加予定ですので，またよろしくお願いします．ありましたら欲しい機能，バグ報告等お願いします！ - 管理人 2010-04-28 09:52:11  
-Ohpackに少し機能を追加しました． - 奥田(管理人) 2010-05-17 15:38:50  
-頂きます！論文も参考にさせていただいています．ありがとうございます． - 後藤（三重大） 2010-07-07 14:35:43  
--ありがとうございます！よろしければ使用後ご感想をお願いします． - 管理人 2010-07-08 15:08:51  
-Ohpack，活用させていただきます．ダウンロードページでは斜線表示されていたのですがV0.4は使えるのでしょうか？ - monkey 2011-02-24 12:13:24  
--現状のoh-packは開発中のもので，とてもリリースと呼べないためあのように表示していますｗバグ取りなど，改造の上でご使用頂く分には問題ありません．おかしい点などありましたら，書き込んでくださると助かります！ - 管理人 2011-03-24 14:00:33      </description>
    <dc:date>2011-03-24T14:00:32+09:00</dc:date>
    <utime>1300942832</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/13.html">
    <title>管理人の作ったmファイル</title>
    <link>https://w.atwiki.jp/matla/pages/13.html</link>
    <description>
      
&lt;p&gt;管理人の作ったmファイルで，ちょっと便利そうなのを，知人に渡す用に載っけてみます．&lt;br /&gt;
もちろん自由に使って構いません．が，何か要望があれば言ってください．暇なら作りor直します．まぁ，ソースが統一されていないなど不出来なので，ごめんちゃい．フォーマットとか無く，手書きなので許して．&lt;/p&gt;
&lt;p&gt;気がついたバグは直していきますが(暇な時間にだけですが)，更新はめっちゃ不定期です．更新しないかも．万が一要望があれば答えますでしょう．きっと．&lt;/p&gt;
&lt;p&gt;なお，大問題かもしれませんが，テストは十分でないのと，エラー処理も手抜きなので，ゆるしてちょ．使いかたがわからなかったら私に聞いてください．&lt;/p&gt;
&lt;ul&gt;&lt;li&gt; &lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=Getcdnameshort.m&quot;&gt;GetCdNameShort.m&lt;/a&gt;　：現在のフォルダ名を取得．cdを使うとフルパスが取得できちゃうので．&lt;/li&gt;
&lt;li&gt; &lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=csvread_ext.m&quot;&gt;csvread_ext.m&lt;/a&gt;　：CSVをちょっと高度に読み込む．いまいち高度じゃないけど．1行目に文字列からなる列題，2行目以降に数値データが行列にならぶ場合(多くの計測データは部分的にこの形になるのでは)に使える．構造体のフィールドに，各列のインデックス名が設定されてそれぞれベクトルとして読み込む&#039;st&#039;モードと，数値データを一つの行列に読み込んで，各列のインデックスとその列番号を同時に保持する，&#039;mat&#039;モードがある．私的には便利です．&lt;/li&gt;
&lt;li&gt; &lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=csvread2cell.m&quot;&gt;csvread2cell.m&lt;/a&gt;　：上記csvread_extのさらに拡張版．連番のCSVをちょっと高度に読み込む．要は上記csvread_extを複数ファイルに適用して各々セルに読み込むだけ．ただし，別途&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=get_numed_filename.m&quot;&gt;&lt;u&gt;&lt;font color=&quot;#0000FF&quot;&gt;get_numed_filename.m&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;，&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=csvread_ext.m&quot;&gt;&lt;u&gt;&lt;font color=&quot;#0000FF&quot;&gt;csvread_ext.m&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;が必要．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=get_numed_filename.m&quot;&gt;
get_numed_filename.m&lt;/a&gt;　：連番ファイル名を作成．たとえば，file###.csv
とかの###の部分に，001→050などの番号を埋め込んだファイル名が取得可能．0詰め(file012.csvなど)も，詰めなしも(file12.csvなど)できる．はず．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=subplot_spaced.m&quot;&gt;
subplot_spaced.m&lt;/a&gt;：余白，間隔を指定できるサブプロット．ちょっと使い方が違うけど…．これはグリッド状にサブプロットを作って，そのハンドルを返します．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=hits_aux_draw_progress.m&quot;&gt;
hits_aux_draw_progress.m&lt;/a&gt;：計算の進捗状況を表示します．テキストモード，グラフィックモードを搭載．プログレスバーがでます．現在作成中のツールボックスから抜粋．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www9.atwiki.jp/matla?cmd=upload&amp;amp;act=open&amp;amp;pageid=13&amp;amp;file=send_key_mex.c&quot;&gt;
send_key_mex.c&lt;/a&gt;：MATLABから他Windowへのキー送信のサンプルプログラム．他のプログラムをいじいじしたいときに使えるかも？？理解し，バグを修正した上で自己責任で使ってください． &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;改造などはご自由にどうぞ．ただし，私に責任を求めないでください．&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;_&lt;/p&gt;
    </description>
    <dc:date>2011-02-03T11:36:09+09:00</dc:date>
    <utime>1296700569</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/matla/pages/12.html">
    <title>使えるMatlab Central</title>
    <link>https://w.atwiki.jp/matla/pages/12.html</link>
    <description>
      
&lt;p&gt;Matlab CentralのFile
Exchangeには，とても便利なツールがたくさんあります．しかし，管理人は英語が読めません．そこで，同じく英語が読めない人に，Matlab
Centralで見つけた，便利なmファイルを紹介します．ついでに， 便利だと気付いたMATLABのコマンドも紹介します．&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;ul&gt;&lt;li style=&quot;list-style-type:none;&quot;&gt;MATLAB Centralのコマンド&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=4259&amp;amp;objectType=file&quot;&gt;
keep3&lt;/a&gt;　：必要なもの以外の変数を削除します．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=7031&amp;amp;objectType=file&quot;&gt;
keepfield&lt;/a&gt;　：構造体中の必要なフィールド以外削除します．&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=15743&amp;amp;objectType=file&quot;&gt;
fix_dottedline&lt;/a&gt;　：figureからepsで保存すると，破線や点線がビミョーな感じに出力されますが，それを改善してくれます．でもできればもう一声きれいにｗ&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=16003&amp;amp;objectType=file&quot;&gt;
tick2text&lt;/a&gt;　：tick
labelをテキストに変換し，ハンドルを返してくれます．textなので，interpreterをlatex等に設定可能．これで，tickラベルにギリシャ文字が使える！！&lt;/li&gt;
&lt;li&gt; &lt;/li&gt;
&lt;li&gt; &lt;/li&gt;
&lt;li&gt; &lt;/li&gt;
&lt;li style=&quot;list-style-type:none;&quot;&gt;MATLAB標準コマンド&lt;/li&gt;
&lt;li&gt;mvnrnd：ある分布のデータ行列を作る&lt;/li&gt;
&lt;li&gt;fileparts：ファイル名をパスとファイル名に分離 &lt;/li&gt;
&lt;li&gt;strseq：文字に番号を追加した文字列をセルにして取得(strseq(&#039;a&#039;,[1 2 4])=&amp;gt; {a1, a2, a4})&lt;/li&gt;
&lt;li&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;_&lt;/p&gt;
    </description>
    <dc:date>2011-01-28T16:14:19+09:00</dc:date>
    <utime>1296198859</utime>
  </item>
  </rdf:RDF>
