()
| 615 | } |
| 616 | |
| 617 | public Complex acos() { |
| 618 | Complex result; |
| 619 | double tempRe, tempIm; |
| 620 | // acos(z) = -i * log( z + i * sqrt(1 - z*z) ) |
| 621 | tempRe = 1.0-((re*re)-(im*im)); |
| 622 | tempIm = 0.0-((re*im)+(im*re)); |
| 623 | result = new Complex(tempRe, tempIm); |
| 624 | result = result.sqrt(); |
| 625 | tempRe = -result.im; |
| 626 | tempIm = result.re; |
| 627 | result.re = re+tempRe; |
| 628 | result.im = im+tempIm; |
| 629 | tempRe = Math.log(result.abs()); |
| 630 | tempIm = result.arg(); |
| 631 | result.re = tempIm; |
| 632 | result.im = -tempRe; |
| 633 | return result; |
| 634 | } |
| 635 | |
| 636 | public Complex atan() { |
| 637 | // atan(z) = -i/2 * log((i-z)/(i+z)) |
no test coverage detected