আমি এফএফটিগুলি বোঝার চেষ্টা করছি, আমার এখন পর্যন্ত যা আছে তা এখানে:
তরঙ্গরূপে ফ্রিকোয়েন্সিগুলির মাত্রা নির্ধারণ করার জন্য, তরঙ্গকে তারা যে ফ্রিকোয়েন্সিটি অনুসন্ধান করছে তার দ্বার দুটি পৃথক ধাপে (পাপ এবং মহা) এবং প্রতিটি গড়ে গড়ে তাদের তদন্ত করতে হবে। এই দফার সাথে তার সম্পর্কের মাধ্যমে এই পর্বটি পাওয়া যায় এবং এর জন্য কোডটি এরকম:
//simple pseudocode
var wave = [...]; //an array of floats representing amplitude of wave
var numSamples = wave.length;
var spectrum = [1,2,3,4,5,6...] //all frequencies being tested for.
function getMagnitudesOfSpectrum() {
var magnitudesOut = [];
var phasesOut = [];
for(freq in spectrum) {
var magnitudeSin = 0;
var magnitudeCos = 0;
for(sample in numSamples) {
magnitudeSin += amplitudeSinAt(sample, freq) * wave[sample];
magnitudeCos += amplitudeCosAt(sample, freq) * wave[sample];
}
magnitudesOut[freq] = (magnitudeSin + magnitudeCos)/numSamples;
phasesOut[freq] = //based off magnitudeSin and magnitudeCos
}
return magnitudesOut and phasesOut;
}
খুব দ্রুত খুব ঘন ঘন ফ্রিকোয়েন্সিগুলির জন্য এটি করতে, এফএফটিগুলি অনেক কৌশল ব্যবহার করে।
ডিএফটি এর চেয়ে এত দ্রুত এফএফটি তৈরি করতে ব্যবহৃত কৌশলগুলি কী কী?
পিএস আমি ওয়েবে সম্পূর্ণ এফএফটি অ্যালগরিদমগুলি দেখার চেষ্টা করেছি, তবে সমস্ত কৌশলগুলি কোনও ব্যাখ্যা ছাড়াই কোডের একটি সুন্দর টুকরোতে ঘনীভূত হতে থাকে। আমার প্রথমে যা প্রয়োজন, আমি পুরো বিষয়টি বুঝতে পারার আগে, সেগুলি ধারণা হিসাবে এই প্রতিটি দক্ষ পরিবর্তনের কিছুটা পরিচিতি।
ধন্যবাদ.
sudo
আপনার কোড উদাহরণে ব্যবহার বিভ্রান্তিকর হতে পারে, কারণ এটি কম্পিউটার জগতের একটি সুপরিচিত কমান্ড। আপনি সম্ভবত psuedocode বোঝাতে চেয়েছিলেন।