Mo'ydinjonov habibullo
Download 194.57 Kb.
|
Mo\'ydinjonov H amaliy ishi 4 algaritimni loyhalash
- Bu sahifa navigatsiya:
- Maqsad
MO'YDINJONOV HABIBULLO O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI KOMPYUTER INJINIRINGI FAKULTETI ATS_11-21 GURUH TALABASINING Algoritmlarni loyihalash FANIDAN 4-amaliy ish Topshirdi: H.Mo'ydinjonov Qabul qildi: S.Bo'riyev Jadval funksiyani Fur’ye qatoriga yoyish. Fur’ye koeffitsiyentlarini hisoblash. Qator hadlari sonini tanlash Maqsad: Talabalar Fure qatorlar yig’indisini hisoblashni o‘rganishi, funksiyalarni qiymatini qatorlar yordamida taqribiy hisoblash va Fure koeffitsiyentlarini hisoblash usullarini o‘rganishi, bu usullar haqida bilim va ko‘nikmalarga ega bo‘lishi hamda mustaqil masalalar yechishi va shu masalaga mos algoritmlar qura olishi kerak. Fourier koeffitsiyentlari, bir sinyalning frekans maydonidagi komponentlarini ifodalaydigan koeffitsiyentlardir. Bu koeffitsiyentlar, berilgan vaqt maydonidagi sinyalning Furie o'zgarishini (Fourier o'zgarishi) ishlatib aniqlanadi. Furie koeffitsiyentlari, xususiyatlar bilan ishlatish, sinyallarni filtrlash, ma'lumotlarni to'plash va boshqa sohalarda qo'llaniladi. Fourier o'zgarishi, vaqtni bo'lgan sinyalni chastotali maydonga aylantiruvchi matematikaviy operatsiyadir. Ushbu o'zgarish, sinyalni doimiy chastotali komponentlarga ajratadi. Furie koeffitsiyentlari, ushbu chastotali komponentlarni ifodalaydi. Fure koeffitsiyentalarini topish uchun C++ tilida foydalanish mumkin bo'lgan oddiy misol dasturini quyidagicha yozish mumkin: #include #include #include int main() { // Sinyalning vaqtdagi qiymatlari double input[] = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0}; // FFT uchun kerakli o'zgaruvchilarni e'lon qiling int N = sizeof(input) / sizeof(double); fftw_complex* fft_input = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N); fftw_complex* fft_output = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N); fftw_plan plan = fftw_plan_dft_1d(N, fft_input, fft_output, FFTW_FORWARD, FFTW_ESTIMATE); // Kirish qiymatlarni FFT formatiga o'tkazing for (int i = 0; i < N; i++) { fft_input[i][0] = input[i]; // Haqiqiy qism fft_input[i][1] = 0.0; // Sanal qism } // FFT amalini bajarish fftw_execute(plan); // Fure koeffitsiyentalarni chiqaring for (int i = 0; i < N; i++) { std::cout << "Koeffitsiyent " << i << ": " << fft_output[i][0] << " + " << fft_output[i][1] << "i" << std::endl; } // Xotirani tozalang va FFTW rejasini bo'sating fftw_destroy_plan(plan); fftw_free(fft_input); fftw_free(fft_output); return 0; } Ushbu dastur kiritilgan sinyalni FFT formatiga o'tkazib, FFTW kutubxonasidan foydalanib Fure koeffitsiyentalarni hisoblaydi. Hisoblangan koeffitsiyentalarni chiqaradi. Download 194.57 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling