div method

MathComplex div(
  1. dynamic r
)

Implementation

MathComplex div( dynamic r ){
	if( r is MathComplex ){
		if( r._im == 0.0 ){
			return MathComplex( _re / r._re, _im / r._re );
		}
		if( ClipMath.abs( r._re ) < ClipMath.abs( r._im ) ){
			double w = r._re / r._im;
			double d = r._re * w + r._im;
			return MathComplex( (_re * w + _im) / d, (_im * w - _re) / d );
		}
		double w = r._im / r._re;
		double d = r._re + r._im * w;
		return MathComplex( (_re + _im * w) / d, (_im - _re * w) / d );
	}
	double rr = ClipMath.toDouble(r);
	return MathComplex( _re / rr, _im / rr );
}