Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

An introduction to Complex Struct of dotnet 4.0

0.00/5 (No votes)
27 Oct 2010 1  
This short article will show some of the benifits that the Complex Struct provides

Introduction

The Complex struct which resides in System.Numerics assembly is use for representing complex numbers.

For using the Complex struct, we need to Add the System.Numerics assembly to our project

Using the code

Let us see some examples as how it helps us

Example 1: Display the Real,Imaginary,Magnitude and Phase parts

static void Main(string[] args)
{
	Complex c1 = new Complex(12, 24);
	Complex c2 = new Complex(21, 34);
	string format1 = "Real,Imaginary,Magnitude,Phase part of first Complex is {0}, {1},{2},{3} respectively";
	Console.WriteLine(format1, c1.Real, c1.Imaginary, c1.Magnitude, c1.Phase);
	string format2 = "Real,Imaginary,Magnitude,Phase part of second Complex is {0}, {1},{2},{3} respectively";
	Console.WriteLine(format2, c2.Real, c2.Imaginary, c1.Magnitude, c1.Phase);
	Console.ReadKey(true);
}

The output is

3.jpg

Example 2: Simple Addition of Complex Numbers

	static void Main(string[] args)
        {
            Complex c1 = new Complex(12, 24);
            Complex c2 = new Complex(21, 34);            
            Complex result = c1 + c2;
            Console.WriteLine("Addition of Complex numbers is {0}", result);
            Console.ReadKey(true);
        }

The result being

5.jpg

Addition can also be performed by using the Add method of Complex struct as shown below

 Complex.Add(c1, c2)

Likewise, we can do Complex.Subract,Complex.Multiply, Complex.Divide etc.

Example 3: Negation of Complex Number

Complex number negation can be perform by using the minus(-) sign before the complex number

Console.WriteLine("Negation of First Complex numbers is {0}", -c1);

OR

Complex.Negate(c1)

Output

6.jpg

Example 4: Conjugate of Complex number

Complex.Conjugate(c1)

conjugates the first complex number

The answer being 12,-24

Example 5: Reciprocal of Complex number

Complex.Reciprocal(c1))

does reciprocate the first complex number.

Example 6: Exponential of Complex number

Complex.Exp(c1)

results into the exponential of the first complex number

Example 7: Trigonometric function of Complex number

Complex.Sin(c1)

yields the sin of the first Complex Number

Complex.Cos(c1)

yields the Cosin of the first Complex Number

Complex.Tan(c1)

yields the Tangent of the first Complex Number

Here is the output

7.jpg

Likewise, there are many other trigonometric functions

Example 8: Find the Log base 10 of Complex Number

Complex.Log10(c1)

gives the result.

Similarly other logarithmic functions are available.

Conclusion:

In this article we have seen how the new Complex Struct of .Net Framework 4.0 has helped us in accomplishing complex number operations.

Comments on the topic are highly appreciated for the improvement of the topic.

Thanks for reading the article.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here