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

Complex class - Working with complex numbers

0.00/5 (No votes)
22 Oct 2007 1  
This class performs operations and evaluates functions with complex numbers. There are different kinds of available functions (log functions, trigonometric functios...). Check it out.

Screenshot - net_complex.jpg

Introduction

This is my first VB.NET project, so don't expect a lot of object orientated principles in this, but I still think this is an excellent class and I'm not sure you can find another class like this one. This class performs operations and evaluates functions with complex numbers. There are a lot of functions (log functions, trigonometric functions...) available. So check it out.

Functions

  • op_Add(ByVal z As Complex) – add z
  • op_Sub(ByVal z As Complex) – sub z
  • op_Mul(ByVal z As Complex) – multiply with z
  • op_Div(ByVal z As Complex) – divide with z
  • f_Sqr() – get square
  • f_Pow(ByVal n As Integer) – (X+Yi)^n
  • f_PowCplx(ByVal z As Complex) - (X+Yi)^z
  • f_Exp() – Exp(X+Yi)
  • f_Conjugate()
  • f_Invert() – (1 / (X+Yi))
  • f_Log(ByVal base As Byte) – Log((X+Yi),base)
  • f_Ln() – Ln(X+Yi)
  • f_Sin() – sin(x+yi)
  • f_Cos() – cos(x+yi)
  • f_ATan() – arctan(x+yi)
  • f_Tan() – tan(x+yi)
  • f_ACot() – acrcot(x+yi)
  • f_ASin() – arcsin(x+yi)
  • f_ACos() – arccos(x+yi)
  • f_Acsc() – arccosec(x+yi)
  • f_Asec() – arcsec (x+yi)
  • prop_Angle() – return angle
  • prop_Abs() – return absolute value
  • ToString() As String – Create string (example 2-5i, or –i, or 8+i)
  • set_FromXY(ByVal mX As Double, ByVal mY As Double) – set real and imaginary from mX and mY
  • set_CopyComplex(ByRef mCplx As Complex) – set real and imaginary from mCplx

Properties

  • Real() As Double
  • Imaginary() As Double

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