function complex( real, imag, dtype ) {
	var ctor;
	if ( arguments.length > 2 ) {
		ctor = ctors( TABLE[ dtype ] );
		if ( ctor ) {
			return new ctor( real, imag );
		}
		throw new TypeError( format( 'invalid argument. Must provide a recognized data type. Value: `%s`.', dtype ) );
	}
	return new DEFAULT_CTOR( real, imag );
}
Creates a complex number.

@param {number} real - real component
@param {number} imag - imaginary component
@param {string} [dtype="float64"] - data type
@throws {TypeError} must provide a recognized data type
@returns {Complex} complex number

@example
var z = complex( 5.0, 3.0, 'float64' );
// returns <Complex128>