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:
Configuring a DataSource Programmatically in Spring Boot
Java Program to Implement Leftist Heap
Java Program to Implement Disjoint Sets
Create a Custom Auto-Configuration with Spring Boot
Java Program to Check the Connectivity of Graph Using DFS
Java Program to Represent Graph Using Incidence Matrix
Hướng dẫn Java Design Pattern – Chain of Responsibility
Java Program to Implement Hash Tables Chaining with Binary Trees
Java Program to Describe the Representation of Graph using Incidence List
The Registration Process With Spring Security
Java Program to Implement Bresenham Line Algorithm
Java Program to Implement Network Flow Problem
Hướng dẫn Java Design Pattern – Proxy
Adding Parameters to HttpClient Requests
Jackson Date
Spring WebClient vs. RestTemplate
Custom JUnit 4 Test Runners
Display Auto-Configuration Report in Spring Boot
The HttpMediaTypeNotAcceptableException in Spring MVC
Spring Boot - Thymeleaf
Create a Custom Exception in Java
The Registration API becomes RESTful
Java TreeMap vs HashMap
Creating a Generic Array in Java
Java 8 Collectors toMap
Iterable to Stream in Java
Java Program to Perform Optimal Paranthesization Using Dynamic Programming
Setting Up Swagger 2 with a Spring REST API
Java Program to Use Above Below Primitive to Test Whether Two Lines Intersect
Deploy a Spring Boot App to Azure
Java Program to Implement Hash Trie
Chuyển đổi giữa các kiểu dữ liệu trong Java