# Function complex Create a complex value or convert a value to a complex value. ## Syntax ```js math.complex() // creates a complex value with zero // as real and imaginary part. math.complex(re : number, im : string) // creates a complex value with provided // values for real and imaginary part. math.complex(re : number) // creates a complex value with provided // real value and zero imaginary part. math.complex(complex : Complex) // clones the provided complex value. math.complex(arg : string) // parses a string into a complex value. math.complex(array : Array) // converts the elements of the array // or matrix element wise into a // complex value. math.complex({re: number, im: number}) // creates a complex value with provided // values for real an imaginary part. math.complex({r: number, phi: number}) // creates a complex value with provided // polar coordinates ``` ### Parameters Parameter | Type | Description --------- | ---- | ----------- `args` | * | Array | Matrix | Arguments specifying the real and imaginary part of the complex number ### Returns Type | Description ---- | ----------- Complex | Array | Matrix | Returns a complex value ## Examples ```js const a = math.complex(3, -4) // a = Complex 3 - 4i a.re = 5 // a = Complex 5 - 4i const i = a.im // Number -4 const b = math.complex('2 + 6i') // Complex 2 + 6i const c = math.complex() // Complex 0 + 0i const d = math.add(a, b) // Complex 5 + 2i ``` ## See also [bignumber](bignumber.md), [boolean](boolean.md), [index](index.md), [matrix](matrix.md), [number](number.md), [string](string.md), [unit](unit.md)