読み書きプログラミング

日常のプログラミングで気づいたことを綴っています

2011-05-03から1日間の記事一覧

(50) スペクトル密度

波形とスペクトル密度の関係を見ます。通常は、パワースペクトルを見ますが、振幅の小さなところの特徴も見るため、振幅スペクトルを見ます。まず、振幅スペクトルを計算する関数とそれをプロットする関数を用意しましょう。 /* 8.2.9m */ load("fft")$ matc…

(52) 無限インパルス応答

以下のような無限インパルス応答(IIR)ディジタルフィルタについて考えます。c=0.95でgを0から0.9まで変化させた時のゲインをプロットしてみましょう。 /* 8.3.6m */ c : 0.95$ a : [2 * c * g, -c ^ 2]$ p : length(a)$ b : [-(2 * c * g) / (1 + c ^ 2)]$ q…

(54) 画像処理(パス)

"Crandall"には画像データのエッジ検出がありますが、Maximaで画像データを扱うライブラリを存じないので、パスします。 参考文献 Crandall, Mathematica―理工系ツールとしての (アジソン ウェスレイ・トッパン情報科学シリーズ) p.261-p.265

(53) 有限インパルス応答

有限インパルス応答(FIR)フィルタの場合、バンドパスフィルタは、周波数と共鳴幅を決めるとほぼ決ります。伝達函数は以下のような感じです。特定の周波数に関して、この伝達函数での周波数応答をプロットしてみましょう。 /* 8.3.13m */ sinc(x) := ( local(…

(51) 音声処理(パス)

"Crandall"には音声データのソノグラム可視化がありますが、Maximaで音声データを扱うライブラリを存じないので、パスします。 参考文献 Crandall, Mathematica―理工系ツールとしての (アジソン ウェスレイ・トッパン情報科学シリーズ) p.247-p.252

(49) 論理回路のKarnaugh図

以下の論理回路を例に、考えます。 この回路のKarnaugh図を生成してみましょう。 /* 8.1.14m */ nand(x, y) := not (x and y)$ logic(x, y) := nand(nand(x, y), nand(not x, not y))$ apply(matrix, makelist(makelist([a, b, logic(a>0, b>0)], a, 0, 1), …

(48) 定電圧源回路の静特性

以下の最も簡単な定電圧源回路を考えます。これは非線形回路の例になります。 対応する方程式は以下です。二番目の式は、Shockleyのダイオード方程式です。は飽和漏れ電流、qは素電荷、Tは絶対温度、kはBoltzmann定数です。室温(T=298K)、抵抗100Ωの条件で、…