From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,4246083efae0e43b X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!postnews1.google.com!not-for-mail From: aschwarz@acm.org (skidmarks) Newsgroups: comp.lang.ada Subject: Re: Singular Value Decomposition (SVD) Ada Algorithm Date: 30 Oct 2004 23:59:09 -0700 Organization: http://groups.google.com Message-ID: <35f054ea.0410302259.7510a56e@posting.google.com> References: <35f054ea.0410290918.5f7f7d0@posting.google.com> <34defe4d.0410300854.5c038648@posting.google.com> NNTP-Posting-Host: 12.72.61.103 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: posting.google.com 1099205949 31970 127.0.0.1 (31 Oct 2004 06:59:09 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sun, 31 Oct 2004 06:59:09 +0000 (UTC) Xref: g2news1.google.com comp.lang.ada:5929 Date: 2004-10-30T23:59:09-07:00 List-Id: > > I have a considerable collection of publicly available Ada libraries, > and I find that there is one that defines an SVD: > > You can acquire the Drexel U Matrix Math items from > http://dflwww.ece.drexel.edu/research/ada/ > They are marked: > -- Copyright (c) Drexel University, 1996 -- > -- Data Fusion Laboratory -- > -- Electrical and Computer Engineering Department -- > -- $AUTHORS: Chris Papademetrious, Xiaoxun Zhu, Moshe Kam > > Their package Generic_Real_Arrays.Operations defines a subprogram > "Singular_Value_Decomposition". > > This might be what you want! Thank you. I haven't looked closely but have looked enough (to say) it seems to be what I need. By-the-by, any reason that you made it a generic package? More a loaded question than you'd expect. What I tend to do, and to encourage others to do, is to separate what needs to be 'generic' from what needs not be 'generic' but is required for the generic package to execute. In my own (very recent experience) I developed a doubly-linked list. List management is a normal package body. The generic package provides space, in the generic body, and interfaces to the non-generic list manager. The effect is to have a no-cost generic package interfacing with a shared non-generic package. (And so I'm on a mission - sigh). Anyway. Thanks. art