This is the java implementation of calculating coefficients of the given function performing the Discrete-Fourier Transform. Formula for calculating the coefficient is X(k) = Sum(x(n)*cos(2*PI*k*n/N) – iSum(x(n)*sin(2*PI*k*n/N)) over 0 to N-1
Here is the source code of the Java Program to Compute DFT Coefficients Directly. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
//This is a sample program to calculate a DFT Coefficients using the formula import java.util.Scanner; public class DFT_Coefficient { double real, img; public DFT_Coefficient() { this.real = 0.0; this.img = 0.0; } public static void main(String args[]) { int N = 10; Scanner sc = new Scanner(System.in); System.out.println("Calculation DFT Coefficients"); System.out.println("Enter the coefficient of simple linear funtion:"); System.out.println("ax + by = c"); double a = sc.nextDouble(); double b = sc.nextDouble(); double c = sc.nextDouble(); double []function = new double[N]; for(int i=0; i<N; i++) { function[i] = (((a*(double)i) + (b*(double)i)) - c); //System.out.print( " "+function[i] + " "); } System.out.println("Enter the max K value: "); int k = sc.nextInt(); double []cos = new double[N]; double []sin = new double[N]; for(int i=0; i<N; i++) { cos[i] = Math.cos((2 * i * k * Math.PI) / N); sin[i] = Math.sin((2 * i * k * Math.PI) / N); } DFT_Coefficient dft_val = new DFT_Coefficient(); System.out.println("The coefficients are: "); for(int i=0; i<N; i++) { dft_val.real += function[i] * cos[i]; dft_val.img += function[i] * sin[i]; } System.out.println("("+dft_val.real + ") - " + "("+dft_val.img + " i)"); sc.close(); } }
Output:
$ javac DFT_Coefficient.java $ java DFT_Coefficient Calculation DFT Coefficients Enter the coefficient of simple linear funtion: ax + by = c 1 2 3 Enter the max K value: 2 The coefficients are: (-15.00000000000001) - (-20.6457288070676 i)
Related posts:
Batch Processing with Spring Cloud Data Flow
Weak References in Java
Java Program to Solve any Linear Equation in One Variable
Java Program to Find MST (Minimum Spanning Tree) using Kruskal’s Algorithm
Setting Up Swagger 2 with a Spring REST API
The DAO with JPA and Spring
Java Program to Create a Balanced Binary Tree of the Incoming Data
Java Program to Emulate N Dice Roller
Java Program to Perform Complex Number Multiplication
Spring Data Java 8 Support
Java Program to Perform the Unique Factorization of a Given Number
JUnit 5 @Test Annotation
Java Program to Implement ArrayDeque API
Different Ways to Capture Java Heap Dumps
Getting Started with GraphQL and Spring Boot
Filtering and Transforming Collections in Guava
HashSet trong Java hoạt động như thế nào?
An Example of Load Balancing with Zuul and Eureka
Java String Conversions
Đồng bộ hóa các luồng trong Java
Test a REST API with Java
Functional Interfaces in Java 8
Intersection of Two Lists in Java
Giới thiệu SOAP UI và thực hiện test Web Service
Java Program to Describe the Representation of Graph using Adjacency Matrix
ExecutorService – Waiting for Threads to Finish
Java Program to Perform Stooge Sort
Mệnh đề if-else trong java
Java Program to Implement Circular Doubly Linked List
Java Program to Implement Heap Sort Using Library Functions
Guide to Java OutputStream
Custom Exception trong Java