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:
Java Program to Implement Wagner and Fisher Algorithm for online String Matching
Spring Security Custom AuthenticationFailureHandler
Spring Boot with Multiple SQL Import Files
Tránh lỗi NullPointerException trong Java như thế nào?
Phương thức tham chiếu trong Java 8 – Method References
Java Program to Find the Minimum Element of a Rotated Sorted Array using Binary Search approach
Java Program to Implement D-ary-Heap
Java Program to Implement Johnson’s Algorithm
Spring Security Basic Authentication
Convert a Map to an Array, List or Set in Java
Pagination and Sorting using Spring Data JPA
Java Program to Implement ArrayDeque API
Using JWT with Spring Security OAuth (legacy stack)
Spring REST API with Protocol Buffers
Auditing with JPA, Hibernate, and Spring Data JPA
Java Program to Implement Bellman-Ford Algorithm
Java Program to Implement LinkedBlockingDeque API
Jackson – Bidirectional Relationships
OAuth2 for a Spring REST API – Handle the Refresh Token in AngularJS
Java Program to Implement Binary Tree
Java – Get Random Item/Element From a List
Giới thiệu JDBC Connection Pool
Java Program to Implement Double Order Traversal of a Binary Tree
Introduction to Spring Data JPA
Create a Custom Auto-Configuration with Spring Boot
Java Program to Implement Vector API
Returning Image/Media Data with Spring MVC
Guide to @JsonFormat in Jackson
Spring Cloud AWS – EC2
Java Program to Find SSSP (Single Source Shortest Path) in DAG (Directed Acyclic Graphs)
Java Program to Implement Pollard Rho Algorithm
Java Program to Implement Sparse Array