Fourier là gì

  -  

Đây là bài bác đầu tiên của loạt nội dung bài viết về Fourier Transkhung. Nội dung được kđắm đuối khảo từ bỏ trangweb http://thefouriertranssize.com.

Bạn đang xem: Fourier là gì

Mục đích của Fourier Transform là bóc biểu thị dạng sóng thành các tần số riêng lẻ tạora nó. Cụ thể rộng, Fourier Transkhung tách hàm số thành tổng những hàm sin cùng cos, từng hàm tất cả tần sốkhông giống nhau.

Ví dụ lúc ta nghịch bọn, nốt Đô bao gồm tần số 261.63Hz, nốt Rê tất cả tần số 293.66Hz. Nếu ấn 2 nốtnày và một dịp thì 2 tần số này sẽ pha trộn vào với nhau. khi thu âm lại, ta hoàn toàn có thể dùngFourier Transform nhằm bóc âm tkhô cứng nhận được thành 2 tần số Đô và Rê ban đầu.

Xem thêm: Quỹ Chỉ Số Là Gì ? Quỹ Hỗ Tương Là Gì? Quỹ Hỗ Tương Là Gì

Gần như phần đa thiết bị bên trên trái đất gần như rất có thể biểu diễn bởi dạng sóng (wavekhung - hàm số biễu diễnbiên độ theo thời gian). Âm tkhô giòn, bộc lộ năng lượng điện, ánh sáng, các biểu lộ radio, 3G, wifi,… tấtcả phần đa là sóng. Thông qua Fourier Transkhung, ta đã thấy các bộc lộ hồ hết hoàn toàn có thể phân tách thànhtổng những hàm sin, cos. Vì vậy, Fourier Transform vào vai trò đặc trưng vào khoa họcnói chung chứ đọng chưa hẳn chỉ trong Tin học. Nhà toán thù học Gilbert Strang Gọi Fast FourierTranskhung là thuật toán đặc biệt tuyệt nhất của rứa kỷ đôi mươi.

Trong loạt bài bác sẽ sử dụng các kiến thức và kỹ năng về tích phân, các lượng chất giác, số phức với lũy vượt cùng với số nón phức.Ngoài ta, bản thân vẫn thực hiện ngữ điệu lập trình sẵn R nhằm minch họa code. Để dễ theo dõi và quan sát, độc giả nênmua R với RStudio.

Xem thêm: Giá Btc Vault (Btcv) - Diễn Đàn Và Trao Đổi Về Bitcoin Vault

Fourier Series

Dãy Fourier tất cả trách nhiệm bóc tách hàm tuần dứt tổng của các hàm sin và cos, nói theo cách khác hàng Fourierlà đổi khác Fourier cho các hàm tuần hoàn. Định nghĩa hàm tuần hoàn:

Hàm F được Gọi là tuần trả với chu kì T ((T > 0)) nếu:

(F(t + T) = F(t)) với tất cả (t)

Ta thấy, nếu F tuần trả với chu kì T thì cũng tuần trả với chu kì 2T. Vì vậy bao gồm thêm định nghĩa chu kì cơ bản,là chu kì nlắp duy nhất của F. Ví dụ, (sin2x) là hàm tuần trả cùng với chu kì cơ phiên bản là (T = pi).

Xét hàm số (f(t)) với chu kì cơ bản là T, ta có dãy Fourier của (f) là:

Với:

Ví dụ

Xét hàm (f(t)) cùng với chu kì cơ bản (T=2) nlỗi sau:

*

Ta công thêm những thông số của dãy Fourier của hàm trên:

Tính (a_0):(a_0 = frac1T int_0^T f(t),mathrmdt\= frac12 int_0^2 f(t),mathrmdt\= frac12 int_0^1 f(t),mathrmdt + frac12 int_1^2 f(t),mathrmdt\= frac12 int_1^2 1,mathrmdt = frac12)

Tính (a_m):

Tính (b_n):

Vậy:

Ta có thể thấy (g) càng ngày tiến sát cho (f):

*

Code (R):


g = function(n) function(t) 50% + sum(sapply(0:n, function(i) -(2/(2*i+1)/pi)*sin((2*i+1)*pi*t)))draw = function(n) plot(function(x) floor(x) %% 2, type="l", xlab="", ylab="", xlim=c(-3, 3), ylim=c(-1,2)) x = seq(-3, 3, by=0.01) y = sapply(x, g(n)) lines(x, y)for (i in 0:15) draw(i) Sys.sleep(0.2)
CodeSau đó là code tính dãy Fourier bằng phương pháp tổng quát nghỉ ngơi trên, bạn đọc rất có thể dùng làm phân tách. Chỉ cần sửahàm f, chu kì T, và độ đúng đắn n đến phù hợp:


coeff = function(f, T, m, g) integrate(function(x) f(x) * g(2*pi*m*x/T), 0, T)$value * 2 / Tcoeff_a = function(f, T, m) coeff(f, T, m, cos)coeff_b = function(f, T, m) coeff(f, T, m, sin)g = function(f, T, m) function(x) integrate(f, 0, T)$value / T + sum(sapply(1:m, function(i) coeff_a(f, T, i) * cos(2*pi*i*x/T))) + sum(sapply(1:m, function(i) coeff_b(f, T, i) * sin(2*pi*i*x/T)))draw = function(f, T, n) g = g(f, T, n) x = seq(-2*T, 2*T, by=0.05) yg = sapply(x, g) yf = sapply(x, f) plot(x, yf, type="l") lines(x, yg, col="blue")f = function(x) x*xdraw(f, T=2, n=10)