This is the java implementation of multiplication of two matrices consisting of complex numbers. Complex numbers are of the form a+bi.
Here is the source code of the Java Program to Perform Complex Number Multiplication. 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 find the multiplication of two matrices consisting of complex numbers of any dimension
import java.util.Scanner;
public class Complex_Multiplication_Matrix
{
private double real=0.0, img=0.0;
public Complex_Multiplication_Matrix(double real, double img)
{
this.real = real;
this.img = img;
}
public Complex_Multiplication_Matrix()
{
this.real = 0;
this.img = 0;
}
public Complex_Multiplication_Matrix complex_Form(double re, double im)
{
Complex_Multiplication_Matrix res = new Complex_Multiplication_Matrix();
res.real = re;
res.img = im;
return res;
}
public Complex_Multiplication_Matrix multiplication(Complex_Multiplication_Matrix C2)
{
Complex_Multiplication_Matrix Res = new Complex_Multiplication_Matrix();
Res.real = (this.real * C2.real) - (this.img * C2.img);
Res.img = (this.real * C2.img) + (this.img * C2.real);
return Res;
}
public Complex_Multiplication_Matrix addtion(Complex_Multiplication_Matrix C2)
{
Complex_Multiplication_Matrix Res = new Complex_Multiplication_Matrix();
this.real += C2.real;
this.img += C2.img;
Res.real = this.real;
Res.img = this.img;
return Res;
}
public Complex_Multiplication_Matrix[][] matrix_multiplication(Complex_Multiplication_Matrix[][] a, Complex_Multiplication_Matrix[][] b, Complex_Multiplication_Matrix[][] res, int n)
{
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
for (int k = 0; k < n; k++)
res[i][j] = res[i][j].addtion(a[i][k].multiplication(b[k][j]));
return res;
}
public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
System.out.println("Enter the dimension of the square matrix: ");
int n = sc.nextInt();
double re,im;
Complex_Multiplication_Matrix[][] a = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix[][] b = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix[][] res = new Complex_Multiplication_Matrix[n][n];
Complex_Multiplication_Matrix C = new Complex_Multiplication_Matrix();
System.out.println("Enter the complex elements of 1st matrix: ");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = sc.nextDouble();
im = sc.nextDouble();
a[i][j] = C.complex_Form(re, im);
}
}
System.out.println("Enter the complex elements of matrix: ");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = sc.nextDouble();
im = sc.nextDouble();
b[i][j] = C.complex_Form(re, im);
}
}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
re = 0.0;
im = 0.0;
res[i][j] = C.complex_Form(re, im);
}
}
res = C.matrix_multiplication(a, b, res, n);
System.out.println("The Multiplication is:");
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
System.out.print(res[i][j].real+"+"+res[i][j].img+"i ");
System.out.println();
}
sc.close();
}
}
Output:
$ javac Complex_Multiplication_Matrix.java $ java Complex_Multiplication_Matrix Enter the dimension of the square matrix: 2 Enter the complex elements of matrix: 1 2 1 2 1 2 1 2 Enter the complex elements of matrix: 1 2 1 2 1 2 1 2 The Multiplication is: -6.0+8.0i -6.0+8.0i -6.0+8.0i -6.0+8.0i
Related posts:
Hướng dẫn sử dụng Java Reflection
Java Program to Implement Ternary Heap
Assert an Exception is Thrown in JUnit 4 and 5
Java Program to Implement Knapsack Algorithm
Form Validation with AngularJS and Spring MVC
Java Program to Perform Insertion in a 2 Dimension K-D Tree
A Guide to ConcurrentMap
Java Program to Compute Discrete Fourier Transform Using Naive Approach
Introduction to the Java NIO2 File API
Java Program to Implement Karatsuba Multiplication Algorithm
Inheritance and Composition (Is-a vs Has-a relationship) in Java
Tạo ứng dụng Java RESTful Client với thư viện Retrofit
Java Program to Implement Pagoda
Hướng dẫn Java Design Pattern – Abstract Factory
Java Program to Implement Graph Structured Stack
Giới thiệu Design Patterns
Java Program to Implement Dijkstra’s Algorithm using Queue
Java – InputStream to Reader
Autoboxing và Unboxing trong Java
Java Program to Implement LinkedHashSet API
Registration – Activate a New Account by Email
Hướng dẫn sử dụng Java Annotation
Giới thiệu SOAP UI và thực hiện test Web Service
Java InputStream to String
A Custom Data Binder in Spring MVC
Spring Boot - Logging
Java Program to Generate All Possible Subsets with Exactly k Elements in Each Subset
DynamoDB in a Spring Boot Application Using Spring Data
Đồng bộ hóa các luồng trong Java
Java Program to Implement Binary Heap
Getting Started with Custom Deserialization in Jackson
Class Loaders in Java