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:
Giới thiệu Google Guice – Binding
Hướng dẫn Java Design Pattern – Builder
Difference Between Wait and Sleep in Java
Disable DNS caching
Java Program to Implement Self Balancing Binary Search Tree
Mệnh đề if-else trong java
Java Program to Compute the Area of a Triangle Using Determinants
Java Stream Filter with Lambda Expression
Examine the internal DNS cache
Spring Boot - Servlet Filter
Java Program to Implement LinkedList API
Jackson – Bidirectional Relationships
Jackson Unmarshalling JSON with Unknown Properties
Lớp Arrarys trong Java (Arrays Utility Class)
Spring Boot - Code Structure
Guide to Java Instrumentation
Guide to Mustache with Spring Boot
Jackson Exceptions – Problems and Solutions
Hướng dẫn Java Design Pattern – State
Control the Session with Spring Security
Lớp lồng nhau trong java (Java inner class)
Java Program to Implement Max Heap
Simultaneous Spring WebClient Calls
Iterable to Stream in Java
Java – Combine Multiple Collections
Introduction to Using FreeMarker in Spring MVC
Allow user:password in URL
Java 14 Record Keyword
Từ khóa this và super trong Java
Running Spring Boot Applications With Minikube
JWT – Token-based Authentication trong Jersey 2.x
Request Method Not Supported (405) in Spring