C++ Complex::proj() function



The C++ std::complex::proj() function is used to return the projection of a complex number onto the Riemann sphere. If the complex number has a finite values, it returns the number itself or if the number has infinite components, it returns a special value representing infinity on the Riemann sphere.

Syntax

Following is the syntax for std::complex::proj() function.

proj (const complex& x);
complex conj (ArithmeticType x);

Parameters

  • x − It indicates the complex value.

Return Value

It returns the projection of the complex number x onto the Riemann sphere.

Exceptions

none

Example 1

In the following example, we are going to consider the basic usage of the proj() function.

#include 
#include 
int main() {
   std::complex < double > x(1.2, 2.3);
   std::complex < double > y = std::proj(x);
   std::cout << "Result : " << y << "\n";
   return 0;
}

Output

If we run the above code it will generate the following output −

Result : (1.2,2.3)

Example 2

Consider the following example, where we are going to create a projection of the complex number with infinite part.

#include 
#include 
int main() {
   std::complex < double > a(INFINITY, 1.3);
   std::complex < double > b = std::proj(a);
   std::cout << "Result : " << b << "\n";
   return 0;
}

Output

Output of the above code is as follows −

Result : (inf,0)

Example 3

Let's look at the following example, where we are going to create a projection of complex number with both infinite parts.

#include 
#include 
int main() {
   std::complex < double > a(INFINITY, INFINITY);
   std::complex < double > b = std::proj(a);
   std::cout << "Result : " << b << "\n";
   return 0;
}

Output

Following is the output of the above code −

Result : (inf,0)
complex.htm
Advertisements