summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorCharles Blake <cblake@csail.mit.edu>2015-02-28 19:21:52 -0500
committerCharles Blake <cblake@csail.mit.edu>2015-02-28 19:21:52 -0500
commit840f80e45c92b913991158fdb301050d98a986af (patch)
tree536600f271e72e1c9f4b203728477a046f8f1a9b
parent2df10fc4a60e6c8f7e0b42205dba29988e0a5c06 (diff)
downloadNim-840f80e45c92b913991158fdb301050d98a986af.tar.gz
Fix buggy rect(), doc comment, and unit test.
-rw-r--r--lib/pure/complex.nim7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/pure/complex.nim b/lib/pure/complex.nim
index c844c1fa2..8577bf7a1 100644
--- a/lib/pure/complex.nim
+++ b/lib/pure/complex.nim
@@ -365,9 +365,9 @@ proc polar*(z: Complex): tuple[r, phi: float] =
   result.phi = phase(z)
 
 proc rect*(r: float, phi: float): Complex =
-  ## Returns the complex number with poolar coordinates `r` and `phi`.
+  ## Returns the complex number with polar coordinates `r` and `phi`.
   result.re = r * cos(phi)
-  result.im = sin(phi)
+  result.im = r * sin(phi)
 
 
 proc `$`*(z: Complex): string =
@@ -438,5 +438,6 @@ when isMainModule:
   assert( arccoth(a) =~ arctanh(1/a) )
 
   assert( phase(a) == 1.1071487177940904 )
-  assert( polar(a) =~ (2.23606797749979, 1.1071487177940904) )
+  var t = polar(a)
+  assert( rect(t.r, t.phi) =~ a )
   assert( rect(1.0, 2.0) =~ (-0.4161468365471424, 0.9092974268256817) )