[#10467] Module re-inclusion in 1.9 vs 1.8 — "Rick DeNatale" <rick.denatale@...>
Some months ago I noticed that the semantics of module inclusion had
[#10468] Floats that are NaN have strange behavior — Jonas Kongslund <jonas@...>
Hi
[#10478] Plan to add ext/digest/lib/digest/hmac.rb to 1.8.6 or 1.8.7? — "Zev Blut" <rubyzbibd@...>
Hello,
[#10480] Ruby 1.8.6 delayed for seven days — "Akinori MUSHA" <knu@...>
I am afraid I have to announce that Ruby 1.8.6 final release will be
[#10490] Join with block — "Farrel Lifson" <farrel.lifson@...>
This patch adds the ability to give the Array#join method a block like so
[#10492] Ruby 1.8.6 preview3 has been released — "Akinori MUSHA" <knu@...>
Hi,
Akinori MUSHA wrote:
On Mon, 5 Mar 2007, Akinori MUSHA wrote:
On Mar 5, 2007, at 04:16, Hugh Sasse wrote:
On Tue, 6 Mar 2007, Eric Hodel wrote:
On Mar 5, 2007, at 10:46, Hugh Sasse wrote:
On Tue, 6 Mar 2007, Eric Hodel wrote:
On Mar 5, 2007, at 12:07, Hugh Sasse wrote:
On Tue, 6 Mar 2007, Eric Hodel wrote:
Hi,
On Tue, 6 Mar 2007, Nobuyoshi Nakada wrote:
Hi,
[#10494] make check for 1.8.6-preview3: TestDBM: DBMError: dbm_store failed — <noreply@...>
Bugs item #9031, was opened at 2007-03-04 12:57
[#10507] Dynamic Array#join with block — <noreply@...>
Patches item #9055, was opened at 2007-03-05 19:57
Hi,
On 06/03/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
On 06/03/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
Hi,
On 09/03/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
[#10536] DRb freezes YARV? — "Meinrad Recheis" <meinrad.recheis@...>
dear all,
[#10552] ruby 1.8.5p12: default IO object for gets() ? — Unknown <borg@...3.net>
Hello..
[#10563] Ruby 1.8.6 has been released — "Akinori MUSHA" <knu@...>
Hello,
[#10575] 'rescue' with non-exception class — Brian Candler <B.Candler@...>
I was just caught out by this odd behaviour: a 'rescue' clause doesn't
[#10580] Kernel#exec on OSX — "Kent Sibilev" <ksruby@...>
Does anyone know how to explain this:
[#10585] Bugfix: Extension Compile Error with 1.8.6 — Lothar Scholz <mailinglists@...>
Hello,
[#10594] grave bug in 1.8.6's thread implementation — Sylvain Joyeux <sylvain.joyeux@...4x.org>
In ext/thread/thread.c, remove_one leaves the list in an inconsistent state.
On Thu, 15 Mar 2007 00:15:57 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:
> > The fix is in thread-mutex-remove_one.diff.
On Thu, 15 Mar 2007 01:19:04 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:
On Wednesday 14 March 2007 17:29, MenTaLguY wrote:
On Thu, 15 Mar 2007 01:48:42 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:
Here the next one (hopefully the last)
On Thu, 15 Mar 2007 03:11:41 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:
On Wednesday 14 March 2007, MenTaLguY wrote:
On Thu, 15 Mar 2007 06:07:30 +0900, Sylvain Joyeux <sylvain.joyeux@m4x.org> wrote:
At Thu, 15 Mar 2007 10:18:19 +0900,
> Which set of patches do you think should be committed? The former to
[#10615] Multiton in standard library — TRANS <transfire@...>
Hi--
On 3/15/07, Tom Pollard <tomp@earthlink.net> wrote:
On Mar 15, 2007, at 11:46 PM, TRANS wrote:
On 3/16/07, James Edward Gray II <james@grayproductions.net> wrote:
[#10646] Marshal.dump shouldn't complain about singletons if the _dump method is defined — <noreply@...>
Bugs item #9376, was opened at 2007-03-19 15:58
noreply@rubyforge.org wrote:
On Monday 19 March 2007 18:01, Urabe Shyouhei wrote:
Hi,
On 3/19/07, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:
Hi,
> |But what if that singleton class just contained a method that allowed
Hi,
[#10701] Discrepancy between GetoptLong.new and documentation — <noreply@...>
Bugs item #8384, was opened at 2007-02-02 10:06
> -----Original Message-----
[#10705] Google Summer of Code proposal. — "Pedro Del Gallego" <pedro.delgallego@...>
Hi,
On 3/21/07, Pedro Del Gallego <pedro.delgallego@gmail.com> wrote:
[#10711] Re: Extensions to ipaddr.rb — Brian Candler <B.Candler@...>
> Is this your intention?
[#10712] Ruby Method Signatures (was Re: Multiton in standard library) — "Rick DeNatale" <rick.denatale@...>
On 3/19/07, TRANS <transfire@gmail.com> wrote:
On 3/19/07, TRANS <transfire@gmail.com> wrote:
On 3/21/07, Jos Backus <jos@catnook.com> wrote:
On 3/21/07, TRANS <transfire@gmail.com> wrote:
On Thu, Mar 22, 2007 at 10:26:38PM +0900, Rick DeNatale wrote:
On 3/22/07, Paul Brannan <pbrannan@atdesk.com> wrote:
On 3/23/07, Rick DeNatale <rick.denatale@gmail.com> wrote:
[#10729] BUGS in metaclasses inheritance — <noreply@...>
Bugs item #9462, was opened at 22/03/2007 11:19
noreply@rubyforge.org wrote:
[#10746] sub-process with Test::Unit does not exit error code as expected — <noreply@...>
Bugs item #9300, was opened at 2007-03-15 03:35
Hi,
[#10749] class_extension — TRANS <transfire@...>
I'm just following up to find out the status of consideration for
[#10768] Lastest Version IRHG - Technical Review Requested — Charles Thornton <ceo@...>
TO: CORE
[#10798] Virtual classes and 'real' classes -- why? — "John Lam (CLR)" <jflam@...>
I was wondering if someone could help me understand why there's a parallel =
On Thu, 29 Mar 2007 04:44:16 +0900, "John Lam (CLR)" <jflam@microsoft.com> wrote:
Thanks for sharing the eigenclass hack.
John Lam (CLR) wrote:
[#10818] Bug in Net::HTTP#keep_alive? — Aaron Patterson <aaron@...>
Sometimes Apache will send a connection header like this:
Should I submit a bug for this? I guess I'm not sure what proper
[#10826] Comparable module and values of <=> operator — David Flanagan <david@...>
The rdoc for the Comparable module and its methods consistently indicate
Replying to my own post...
I think there's nothing wrong with the implementation and documentation.
[ ruby-Bugs-9360 ] Matrix inverse problem
Bugs item #9360, was opened at 2007-03-18 23:41
You can respond by visiting:
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=9360&group_id=426
Category: Standard Library
Group: 1.8.6
Status: Open
Resolution: None
Priority: 3
Submitted By: Stefan M端hlebach (muehlebach)
Assigned to: Nobody (None)
Summary: Matrix inverse problem
Initial Comment:
There is a problem with the Matrix.inverse method.
Given the following matrix
m = Matrix[[0.417787968829298, 0.542037605627772, 0.729142268138943],
[0.0, 6.12303176911189e-17, 1.0],
[-0.542037605627772, 0.417787968829298, -2.55812900589452e-17]]
the result of
m.inverse * m
is
[[1.0, 0.0, 0.650423523448542],
[5.55111512312578e-17, 1.0, 0.84385869292008],
[0.0, 9.24446373305873e-33, 1.0]]
but it should be
[[1.0, 0.0, 0.0],
[0.0, 1.0, 0.0],
[0.0, 0.0, 1.0]]
or close to this!
----------------------------------------------------------------------
>Comment By: Stefan M端hlebach (muehlebach)
Date: 2007-03-19 01:56
Message:
What the hell is 'R'?
The equation system I'm trying to solve looks like this:
1) n * ray = cos(phi)
2) ray * ray' = cos(2*phi)
3) ray' * (n x ray) = 0
Where phi is a given scalar, n and ray' are given vectors
with three elements, '*' is the scalar product and 'x' is
the vector product. The elements of ray are to be computed.
The equations are part of a nice Java-Applet
(http://muehlebach.dyndns.org/~stefan/Egg/EggApplet.html -
You need the J3D-Library to run the applet! Use the mouse
and the cursor keys.)
I just installed GSL and try to get into it...
----------------------------------------------------------------------
Comment By: Ed Borasky (znmeb)
Date: 2007-03-19 01:42
Message:
OK ... I found the FORTRAN code, which is as difficult to read as what's in "Matrix". :) The algorithms look close; the FORTRAN version claims it is using a Gauss-Jordan algorithm. Bear in mind that the FORTRAN in question is from the mid 1960s, and that the Gauss-Jordan algorithm has not been used for matrix inversion for decades.
So there are two possibilities that I can see: your matrix is so poorly conditioned that Gauss-Jordan is failing to invert it, or the programmer of Matrix made a mistake in coding the Gauss-Jordan. I suspect the latter, since some of the rows and columns look right and some of them don't.
In either case, my recommendation would be to replace the Gauss-Jordan with something "modern", like an LU decomposition with partial pivoting and multiple right-hand sides. Because of Ruby's "duck typing", you can probably lift the LU decomposition code right out of the solver that's in BigDecimal. :) As soon as someone picks this bug up, I'll be happy to provide references on computational linear algebra.
----------------------------------------------------------------------
Comment By: Ed Borasky (znmeb)
Date: 2007-03-19 01:15
Message:
I used R, not Ruby, to do the computations. However, there is an R - Ruby interface called "RSRuby" on RubyForge, so if you're happier in Ruby, you can create your data in Ruby and pass the matrix off to R for computation.
For just plain linear equation solving, doing the inverse is usually (almost always) a bad idea. There are lots of alternatives in Ruby, including the Ruby - GNU Scientific Library (GSL) interface, and the built-in equation solver in the "BigDecimal" package. If you have your heart set on pure Ruby, check out the BigDecimal version first.
This could actually be a bug in the inverse routine in "Matrix". I looked at it and it looks like it was copied out of an ancient FORTRAN scientific library, and there aren't any comments. It might just be a typo somewhere in the code. Since I don't in general do matrix inverses, and when I do, I usually use someone else's code. If I can find the original FORTRAN (I think I have it around the house somewhere, believe it or not) :) I'll check it.
----------------------------------------------------------------------
Comment By: Stefan M端hlebach (muehlebach)
Date: 2007-03-19 00:57
Message:
1. Yes, I did load 'mathn'.
2. I'm trying to solve an equation system. I did exactly the
same using Java and the J3D-Library where the results where
more accurate.
3. Your results look much better! Where do I get the MASS
library?
----------------------------------------------------------------------
Comment By: Ed Borasky (znmeb)
Date: 2007-03-19 00:27
Message:
Questions:
1. Have you loaded "mathn"? If not, load it and try again. The "Matrix" routines are more accurate with "mathn" loaded.
2. What is the problem you're actually trying to solve? Matrix inversion has some nasty numerical properties that other methods overcome, and matrix inversion is also slower than most of these methods for some problem.
3. I've run this problem through R so you can see what the inverse of the matrix *should* be. Note that "small" numbers like -4.918979e-17 are zero to within the precision of the operations performed. Also note that I computed the inverse using a process that is more robust than a typical matrix inverse -- it's called the Moore-Penrose Generalized Inverse and is in the MASS library of R as function "ginv". "%*%" is how you do a matrix multiply in R.
> m
[,1] [,2] [,3]
[1,] 0.4177880 5.420376e-01 7.291423e-01
[2,] 0.0000000 6.123032e-17 1.000000e+00
[3,] -0.5420376 4.177880e-01 -2.558129e-17
> ginv(m)
[,1] [,2] [,3]
[1,] 8.920393e-01 -0.6504235 -1.157331e+00
[2,] 1.157331e+00 -0.8438587 8.920393e-01
[3,] -1.125944e-16 1.0000000 -3.150951e-16
> m%*%ginv(m)
[,1] [,2] [,3]
[1,] 1.000000e-00 4.857226e-16 -3.852509e-16
[2,] -4.173067e-17 1.000000e+00 -2.604753e-16
[3,] -4.049495e-17 -4.918979e-17 1.000000e-00
----------------------------------------------------------------------
You can respond by visiting:
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=9360&group_id=426