What Are Complex Data Type in Fortran?


Larry Thompson

What Are Complex Data Types in Fortran?

In Fortran, complex data types are used to represent numbers with both real and imaginary parts. These data types are particularly useful in scientific and engineering applications where complex numbers are commonly used.

Declaring Complex Variables

To declare a complex variable in Fortran, you use the COMPLEX keyword followed by the desired variable name. For example:

COMPLEX :: x, y

Initializing Complex Variables

You can initialize a complex variable at the time of declaration by providing the initial values for its real and imaginary parts. The syntax for initialization is as follows:

COMPLEX :: z = (real_part, imaginary_part)

For example:

COMPLEX :: z = (1.0, 2.5)

Operations on Complex Variables

In Fortran, you can perform various operations on complex variables such as addition, subtraction, multiplication, division, and conjugation.

Addition and Subtraction

To add or subtract two complex variables, you simply use the standard addition or subtraction operators. For example:

z = x + y
z = x - y

Multiplication and Division

The multiplication of two complex numbers is performed using the asterisk (*) operator. Division is done using the forward slash (/) operator.

z = x * y
z = x / y


The conjugate of a complex number can be obtained using the CONJG function. It returns a complex number with the same real part but the negation of the imaginary part.

z = CONJG(x)

Accessing Real and Imaginary Parts

In Fortran, you can access the real and imaginary parts of a complex variable using the REAL and AIMAG functions, respectively.

real_part = REAL(z)
imaginary_part = AIMAG(z)


In conclusion, complex data types in Fortran allow you to work with numbers that have both real and imaginary parts. They are essential for performing calculations in scientific and engineering applications. By using the provided keywords, operators, and functions, you can easily manipulate complex variables in your Fortran programs.

Discord Server - Web Server - Private Server - DNS Server - Object-Oriented Programming - Scripting - Data Types - Data Structures

Privacy Policy