最新MATLABハンドブック 第三版
概 要
MATLABは、複雑な数学的解析のプログラムを簡単に作成できる汎用数値解析用ソフトです。主に設計開発などの分野で使われていますが、多彩な用途に使用できるため、付属のマニュアルも膨大で、全体を理解することは困難です。そこで本書では、理工系の学生およびエンジニアを対象に、よく使うテクニックやノウハウ、便利なスクリプト、MATLABに特有なクセなどを解説。好評だった『最新MATLABハンドブック 改訂第二版』以降にでた、R2008aへのバージョンアップに対応し、要望の多かった章末問題の回答例を追加。さらにMATLABプログラミングの一例としてオシロスコープの作成例などを追加しました。理工系学生、エンジニアにおすすめします。
| 著者 |
小林一行 |
| 価格 |
円(税込)(本体3000円) |
| ISBN |
978-4-7980-2041-9 |
| 発売日 |
2008/8/22 |
| 判型 |
A5 |
| 色数 |
1色 |
| ページ数 |
402 |
| CD/DVD |
- |
| 対象読者 |
中級 |
| シリーズ |
- |
サポート情報は以下からご参照下さい。
目次
Chapter0
なぜMATLABか?
MATLABの使用用途は?
Simulinkの使用用途は?
MATLABを使いこなすためのポイント
使用時のポイント
スクリプト作成時のポイント
MATLAB文法でのポイント
Chapter1 MATLABとは
行列演算ツールとしてのMATLAB
MATLABの起動
基本的な数値・変数の扱い方
単純な数値演算
round、ceil、floor、fix関数について
変数による入力
基本算術演算子
MATLABワークスペース
特殊変数と定数
MATLAB変数の注意事項
複素数の扱い
ファイル操作・実行・保存
MATLABスクリプトmファイル
ファイル管理(関数管理)
スクリプトmファイルの保存・実行
コメント文
継続文
スクリプト内での変数値の表示
M-File Editor/Debuggerによる方法
実行処理速度を解析するコマンド(profileコマンド)
配列・行列演算
配列演算子
コロン演算子を使ったインデックス指定
多次元配列の場合
コロン演算子のみの使用
配列操作
スカラーと配列/行列の算術演算
配列同士または行列同士の算術演算
空配列を利用した行列・配列サイズのダイナミックアロケーション(動的確保)
zeros関数、ones関数
行列・配列の大きさを調べる関数
配列中の要素のサーチ
¥演算子
比較演算子
論理演算子
ビットの演算
文字列の扱い方
文字列について
数値から文字列への変換
文字列関数(eval関数)
制御フロー
for文
if文
while文
switch文
try-catch文
制御フローのまとめ
演習問題
Chapter2 データビジュアライゼーション
ツールとしてのMATLAB その1
MATLABグラフィックコマンド体系
2次元グラフィックス
plot関数
行列形式での記述
ラインタイプ、プロットシンボル、カラーについて
グリッドやラベルの追加
axis関数による表示設定の変更
xlim関数、ylim関数
表示スケールの変更
legend関数
holdコマンド
plotyy関数
subplot関数
zoomコマンド
plot関数を使ったアニメーション
logスケールグラフ
特殊なグラフ関数
bar関数のオプション
hist関数のオプション
階段状グラフ
stemプロット
errorbarsグラフ
3次元グラフィックス
plot3関数
ビューポイントの移動
2変数の1出力関数のプロット
mesh関数のオプション
surf関数のオプション
contour3関数
2-Dプロットの3-Dデータ
quiver関数
テクスチャマッピング
light関数
ボリュームビジュアライゼーション関数
ムービー用関数
演習問題
Chapter3 信号処理ツールとしてのMATLAB
MATLABへのデータ入出力
load・saveコマンド
loadコマンド
saveコマンド
各種データをウィザード形式で読み込む
低レベルファイル入出力関数
wavread関数
信号処理のための基礎知識
MATLABで時間応答グラフを描く場合の注意点
フーリエ変換とは
直交関数の内積(2信号の相関)
ウォルシュ関数による直交性の例
sin・cos関数に関する直交性
MATLABのfft関数について
fft関数と時系列データとの関係
表示のまとめ
波形整形法
フィルタ(signal processing toolboxが必要)
伝達関数、状態方程式による波形整形(control toolboxが必要)
伝達関数の離散値化
スムーザ
fft関数によるフィルタリング
fft関数によるバンドパスフィルタ
バンドエルミネーションフィルタ
スプライン関数によるデータ補間
特徴抽出
最小二乗カーブフィット
周波数領域による特徴抽出
specgram関数
自己回帰モデル法による周波数解析
arモデルからの周波数抽出例
fft法とarモデルによる方法の周波数分解能の違い
演習問題
Chapter4 Simulinkとは
Simulinkの起動
ブロック図を描く
シミュレーションパラメータ
(コンフィグレーションパラメータ)の設定
MATLABとSimulinkとの連携
Simulinkによるダイナミックシミュレーション
sim関数を使った2次振動系のシミュレーション
DCモータのシミュレーション例
サブシステム化
フィードバック制御によるDCモータのコントロール
速度フィードバックと位置フィードバック
P要素によるコントロール
PI要素によるコントロール
PID要素によるコントロール
現実的な非線形要素の対策
飽和要素によるワインドアップ現象
2重積分とバックラッシュの直列結合
演習問題
Chapter5 データビジュアライゼーション
ツールとしてのMATLAB その2
Handle Graphicsによるビジュアライゼーション
Handle Graphics
rootハンドル
figureハンドル
axesハンドル
lineハンドル
その他の便利なコマンド
findobj関数
MATLABのグラフィックアニメーションテクニック
図に関する属性の変更(属性'doublebuffer'の変更)
軸と線に関する属性の変更(属性'drawmode','erasemode'の変更)
全ての属性を変更した場合とその比較
Graphical User Interface(GUI)の構築
GUIのオブジェクトとしての位置づけ
uimenu関数について
メニューバーの追加
メニューバーのショートカットキーの割り当て
メニューバーの概観を整える
メニューアイテムの無効化
メニューバーの属性'callback'
uicontrol関数
pushbuttonスタイル
togglebuttonスタイル
radiobuttonスタイル
checkbox スタイル
textスタイル
editスタイル
sliderスタイル
frameスタイル
listboxスタイル
popupmenuスタイル
Handle Graphicsを利用した
MATLABイベントプログラミングテクニック
サンプルスクリプト例callback
属性'ButtonDownFcn'・'WindowButtonDownFcn'
属性'Interruptible'
無限ループシミュレーションの中断、再実行するスクリプト
属性'WindowButtonDownFcn'を使った簡単なデモスクリプト
guideコマンド
簡単な3次元のViewを変更するスライダの作成
まとめ
演習問題
Chapter6 プログラミング処理言語としての
MATLAB
関数mファイル
簡単な、関数mファイルの例(a+bの計算してその結果を出力)
helpコマンドのためのコメント
可変入出力変数(nargin,nargout)
可変引数(varargin)
サブ関数
global変数
global変数を使った、簡単なサンプルスクリプト
MATLAB関数内のみで内部的に変数値を保持したい場合(persistent変数)
関数を呼び出すための変数(@変数)
(1)ode45関数を使った常微分方程式の解法
非線形連立微分方程式のシミュレーション
付加パラメータの利用
(2)quad関数を使った円周率の計算例
(3)fminsearch関数を利用した逆関数の作成応用
未知変数が複数の場合
扱えるデータタイプと構造について
オリジナルクラス(binary class)の作成
コンストラクタ
表示関数
変換関数
オペレータオーバーロード
多次元配列
構造体(structures)
構造体配列
セルアレイ
変数のタイプのまとめ
演習問題
Chapter7 MATLABプログラミング応用例
GUIによる信号処理機能つきオシロスコープの作成
wavrecord関数を使った音声信号
リアルタイムビジュアライゼーション
音声データのリアルタイム表示
時間軸データからの特徴抽出
最大値の検出とその表示
max,min関数を使ったデータの最大最小カーソル表示例
時間軸カーソル表示例
平均値の計算と直流分のカット
標準偏差の計算
GUIによるオシロスコープの作成 その2
最小二乗法によるカーブフィッティング
時間データからの周期の検出
元のとなるデータについて
ノイズ対策
GUIによるオシロスコープの作成 その3
adstart.m
adrun.m
adupdate.m
adevent.m
トピック別目次
コンピュータの処理能力をテストするには
必要なコマンドを探すには
MATLABのヘルプを英語モードにするには
知っていると便利なコマンドは
MATLABで変数ネーミングの際の注意事項は
変数か関数かチェックする方法は
複素数演算での注意点は
数値表示形式を変更するには
MATLABスクリプトmファイルを保存・実行するには
cdコマンドの注意点
スクリプトmファイル名の注意点
スクリプト内で命令が長くなりすぎてしまう場合は
スクリプトをデバックするには
実行処理速度を解析するには
文法をチェックするには
配列・行列演算の仕方は
配列への参照法は
コロン演算で横ベクトルを作るには
コロン演算子を使ったテクニックは
行列・配列の大きさを調べるには
配列要素内で最大値を検出するには
MATLABの図のバックグランドの色を変更するには
配列データの並べ替えを行うには、
文字列を扱うには
数値から文字列へ変換するには
eval関数とは
for文での処理を高速化するには
if文での注意は
for文とwhile文の表現の違いは
MATLABスクリプトを実行中、途中で中断させるには
コマンドウィンドウから>>が出なくなってしまった場合は
plot関数の色やプロットシンボル、ラインタイプを変更するには
複数のグラフを描いた後からgridコマンドを設定するには
使用可能なTeXライクな文字は
clear コマンドとは
数値以外の文字をプロットの軸に表示するには
図の縦横比を1:1にするには、
図をファイルに保存するには
複数のグラフを一枚の図の中に表示するには
グラフ中で使われるフォントの大きさを変えるには
スムーズなアニメーションをするには
特殊なグラフを描くには
3次元データをアニメーションするには
ムービーを作成するには
テキストデータをMATLABに読み込むには
GUIベースのファイル入出力インターフェースを使うには
コマンドウィンドウ上でタイプしたコマンドを記録しておくには
各種データをウィザード形式でMATLABに読み込むには
時間応答グラフを描く場合の注意点は
方形波を作成、表示するには
方形波のデューティー比を変えるには
フーリエ変換の考え方は
三角波波形を作成、表示するには
fftでのサンプリング周波数とデータの関係は
伝達関数、状態方程式によるフィルタリングをするには
bode関数を用い、横軸をHzにするには?
伝達関数を離散値化するには
計算結果を高精度のまま他のアプリケーションに移すには
fftを用い信号のフィルタリングするには
fftによるバンドパスフィルタを作るには
fftによるバンドエルミネーションフィルタを作るには
サンプルしたデータを補間するには
最小二乗カーブフィット曲線を計算するには
グラフから直接近似パラメータを求めるには
ピークを検出するには
fft法とarモデルによる方法の周波数分解能の違いは
SimulinkでScopeに複数データを表示するには
Simulinkでシミュレーション終了時間を無効にするには
Simulinkブロックのブロックパラメータを常に表示させるには
MATLABからSimulinkモデルをシミュレーションするには
SimulinkからMATLABで書かれたスクリプトをシミュレーションするには
1次のハイパスフィルタをSimulinkブロックで作るには
パラメータを可変し、シミュレーションするには
Simulinkでモータモデルのシミュレーションをするには
Simulinkの接続線の情報を表示するには
ある程度まとまったSimulinkブロックを
ひとまとまりのブロックにまとめるには
ブロックをマスクするには
SimulinkによるPID制御のシミュレーションをするには
Simulinkで非線形要素を含んだモデルのシミュレーションをするには
set/get関数の使い方は
プロットの線を太くするには
ハンドルの値を探すには
MATLABでアニメーションする場合関連するハンドルとその属性は
ハンドルグラフィックスを利用したイベントプログラミングテクニックとは
属性'callback'を書くための文字列をチェックするには
無限ループシミュレーションを中断、再実行できるスクリプトを書くには
マウス操作を検出するには
プロットに独自のメニューバーを付けるには
プロットにボタンを付けるには
GUI構築ツールGUIDEの使い方は
スクリプトmファイルと関数mファイルの違いは
関数mファイルを作らずにスクリプトmファイル内で関数を宣言するには
コマンドと関数の違いとは
global変数を定義するときの注意点とは
global変数を使わず、関数内で変数値を保持するには
関数を呼び出すための変数とは
常微分方程式を解くには
定積分を計算するには
逆関数を作成するには
オリジナルクラスをつくるには
セル配列の中を見るには
PR