修正離散コサイン逆変換とは?

まず、修正離散コサイン変換は \begin{equation} S(r) = \sum_{k=0}^{N/2-1}p'(k){ \rm cos} ( \frac{2π}{N}(k+ \frac{1}{2})(r+ \frac{1}{2})) \end{equation} とDCTⅣで表せた。 よって逆変換が成立する。 \begin{equation} p'(k) = \sum_{r=0}^{N/2-1}S(r)…

修正離散コサイン変換とは何か2(まとめ)

前回の記事では詰めが甘い。 \begin{equation} S(r) = \frac{1}{2}{ \rm exp}(i \frac{πr}{N}) \sum_{k=N/4}^{3N/4-1}{ \rm exp}(iπ \frac{k+ \frac{1}{2}}{N}) (s(k- \frac{N}{4})-s( \frac{3N}{4}-1-k)){ \rm exp}(i \frac{2π}{N} kr) \end{equation} \beg…

修正離散コサイン変換とは、何か?(まとめ)

\begin{equation} S(r) = \sum_{k=0}^{N-1} s(k) {\rm cos}( \frac{2 \pi} {N} (k+ \frac{1}{2} + \frac{N}{4})(r+ \frac{1}{2})) ただし(r = 0~N/2-1) \end{equation} \begin{equation} = \frac{1}{2}( \sum_{k=0}^{N-1} s(k) {\rm exp}(i \frac {2 \pi} {…

DCTⅠをDFTで表す。(今回のは、正しいと思います。)

DCTⅠの定義は、次の通りです。 \begin{equation} S(r) = \frac{1}{2} s(0)+ \frac{1}{2} s(N-1)(-1)^r+ \sum_{k=1}^{N-2}s(k) {\rm cos} \frac{2πkr}{2N-2} \end{equation} 本式を変形します。 \begin{equation} S(r) = \frac{1}{2} s(0)+ \frac{1}{2} s(N-1…

DCTⅠをDFTで表す。

この記事は、DCTⅠ自身が逆変換になるDCTⅠの話ではありません。 本記事のDCTⅠの定義だと情報に不足が生じて、逆変換の本記事定義のDCTⅠでは もとにもどりません。正しい定義はWIKIPEDIAの式になります。 その式については、改めて書きたいと思います。 以下の…

DCTⅢをDFTで表す。

DCTⅢの定義式は、次の通りである。 \begin{equation} S(r) = \sum_{k=0}^{N-1}s(k){ \rm cos}( \frac{2π}{2N}k(r+ \frac{1}{2})) \end{equation} この式を変形する。 \begin{equation} S(r) = \frac{1}{2} \sum_{k=0}^{N-1}s(k) exp( \frac{i2π}{2 N}k(r + \…

DCTⅡをDFTで表す。

DCTⅡの定義式は、次の通りです。 \begin{equation} S(r)= \sum_{k=0}^{N-1}s(k){ \rm cos}( \frac{2π}{2N}(k+ \frac{1}{2})r) \end{equation} この式を変形します。 \begin{equation} S(r) = \frac{1}{2} \sum_{k=0}^{N-1} s(k)exp( \frac{i2π}{2N}(k+ \frac…

DCTⅣをDFTで表す。

DCTⅣの定義式はつぎのとおり \begin{equation} S(r)= \sum_{k=0}^{N-1}s(k) {\rm cos}( \frac{2π}{2N}(k+ \frac{1}{2})(r+ \frac{1}{2})) \end{equation} この式を変形します。 \begin{equation} S(r) = \frac{1}{2} \sum_{k=0}^{N-1}s(k) exp( \frac{i 2π}{…

修正離散コサイン変換をFFTで表して高速化するには

この記事は、このブログで以前に書いた記事に追加して書こうと思いましたが 記事の容量限界を超えたらしくエラーがでたので、新規記事として書きます。 まずは、修正離散コサイン変換をFFTで表す。から \begin{equation} S(r)=\sum_{k=0}^{N-1} s(k){\rm cos…

一般分布定数回路の数値計算

\begin{equation} \frac{\partial v}{\partial z}=-Ri-L \frac{\partial i}{\partial t} ・・・①\end{equation}\begin{equation} \frac{\partial i}{\partial z}=-Gv-C \frac{\partial v}{\partial t}・・・②\end{equation} ①式を離散化する。 $ n $ を時間…

位数2の有限体 ( GF(2) ) での1変数多項式の計算 (その2)

その2では多項式どうしの掛け算である。 (X^4+X+1)(X^4+X^3+X^2+X+1)(X^2+X+1) はどうやるかであるが、 まじめに展開する。 (X^4+X+1)(X^4+X^3+X^2+X+1)(X^2+X+1) =(X^8+X^7+X^6+X^5+X^4 +X^5+X^4+X^3+X^2+X +X^4+X^3+X^2+X+1)(x^2+X+1) =(X^8+X^7+X^6+X^4+1…

位数2の有限体 ( GF(2) ) での1変数多項式の計算 (その1)

元が0と1しかないGF(2)での計算について GF(2)での1変数の多項式を考えたとき 係数は0か1なので項は必ずx^3とかx^2とかで3*x^3とか5*x^2とかはない。 定数項は1しかない。 多項式どうしの足し算は 例えば x^5+x^3+x+1 と x^5+x^2+x+1 をまじめ…

最大3bitの誤りを訂正できるBCH(15,5)の符号化、ピーターソン法での復号の実例

原始多項式をX^4+X+1として GF(2^4)拡大体の元を列挙すると 0・・・・00001・・・・0001α・・・・0010α^2・・0100α^3・・1000α^4・・0011α^5・・0110α^6・・1100α^7・・1011α^8・・0101α^9・・1…

BCH符号をつくってみよう

GF(2^4)の原始多項式はX^4+X+1 GF(2)に原始根αを導入してGF(2^4)拡大体をつくる。 G(X)=X^4+X+1とおくとG(X)=0の根は原始根αなのでG(α)=0 α^4+α+1=0 α^4=α+1 これでBCH符号をつくってみよう。 α^4=α+1を使って最大次の次数が3次になる…

誤り訂正符号の生成多項式

まず、リードソロモン符号の生成多項式例えば(x-α)(x-α^2)(x-α^3)(x-α^4)であるが、1個前の記事で、わかるひとはわかるように符号は、生成多項式でわりきれるように、生成多項式でわったときに、そのままでは余りがでる多項式に余りを…

CRC符号(BCH符号の作り方はCRC符号と同じ)

例えばCRC4っていうのがある生成多項式がx^4+x+1となっている。これで誤りを検出する符号をつくるにはどうするかということを説明してみよう。 0+0は0、0+1は1、1+0は1、1+1は0、 0x0は0、0x1は0、1x0は0、1x1は1 引き算は…

訂正できる最大の誤りの個数と必要なシンドロームの数の関係

最大3個の誤りを訂正できるBCH符号、もしくは、最大3ブロックの誤りを訂正できるリードソロモン符号で、3個(3ブロック)の誤りがあるのではないかと疑ってまず3次式による誤り位置多項式を $ \beta_{3} x^{3} + \beta_{2} x^{2} + \beta_{1} x + 1=0 $ とする…

GF(2)でf(x^2)=f(x)^2が成り立つわけ

なんでかわかんなかった係数が0か1のつまりGF(2)の場合の多項式についてf(x^2)=f(x)^2が成り立つわけがわかった。 GF(2)のガロア体の多項式の一般形で表すと数学的帰納法で証明できる (a+b)^2=a^2+2ab+b^2の公式を順番に適用していけばよい。 GF(2)のガロ…

群、環、体の理論で、加算と乗算については議論されるけど、減算、除算についてはあまり議論されない理由

よく群、環、体の理論で、加法について閉じているとか乗法について閉じているというけど 減算、除算について閉じているといわないのはなぜかというと 加法について閉じていて、かつ単位元が存在し、かつ逆元が存在すると減算が定義できる。そして減算につい…

有限体でのガロア拡大(その3)

X^8+X^4+X^3+X^2+1は、原始多項式である。地デジやブルーレイや光通信やQRコードのリードソロモン符号ででてくる。なぜ、これが多用されているかというと、コンピュータはデータをバイト(8ビット)の整数倍で処理するので都合がいいからである。X^8+X^4+…

有限体でのガロア拡大(その2)

昔の記事でf(x)=x^8-xとおくと、GF(2^3)上でのf(x)=0の根が、GF(2^3)のすべての元になる理由がわからなかったのですっきりわかったら書くという宿題の答えが半分でた。x^8-x=x(x-1)(x-α)(x-α^2)(x-α^3)(x-α^4)(x-α^5)(x-α^6)となる理由は まず、掛け算、足…

有限体でのガロア拡大(その1)

GF(2)からGF(2^3)のガロア拡大の理屈を工学部出身者向けに直観的に説明してみます。 まず、X^8-X=0の根がGF(2^3)の元であることを天下りで決めます。 なぜX^8-X=0の根がGF(2^3)の元であるかは zuruyasumineko2002.hatenablog.com で書いてます。 まず、X^8-X…

修正離散コサイン変換(MDCT)を離散フーリエ変換(DFT)で表す。

修正離散コサイン変換の式は次のとおりです。 \begin{equation} S(r)=\sum_{k=0}^{N-1} s(k){\rm cos}(\frac {2 \pi} {N} (k+ \frac{1}{2} + \frac{N}{4})(r+\frac{1}{2})) ただし r=0 ~ \frac{N}{2}-1 \end{equation} これを離散フーリエ変換で表します。 …

完備なゼータ関数と呼ばれるクシー関数(素数の並びを決める素数関数について)

リーマンのゼータ関数を $\zeta(s) $ とし、ガンマ関数を $ \Gamma(s) $ とする。 ここでクシー関数 $ \xi(s) $ を次のように定義する。 \begin{equation} \xi(s)=\zeta(s)\pi^{-s/2}\Gamma(s/2) \tag{1} \end{equation} 上式で、 $ \zeta(s) $ は、リーマン…