# 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 var a = math.complex(3, -4); // a = Complex 3 - 4i a.re = 5; // a = Complex 5 - 4i var i = a.im; // Number -4; var b = math.complex('2 + 6i'); // Complex 2 + 6i var c = math.complex(); // Complex 0 + 0i var 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)