comp.lang.ada
 help / color / mirror / Atom feed
From: Ada novice <posts@gmx.us>
Subject: Re: matrix package with Ada
Date: Sun, 25 Jul 2010 12:15:17 -0700 (PDT)
Date: 2010-07-25T12:15:17-07:00	[thread overview]
Message-ID: <d938d969-51b9-4146-866c-0a53708c3688@q12g2000yqj.googlegroups.com> (raw)
In-Reply-To: i22jtk$gm$1@munin.nbi.dk

Thanks for all these information. I'll comment as appropriate:

On Jul 20, 12:34 am, "Randy Brukardt" <ra...@rrsoftware.com> wrote:

> As far as I know, we haven't had a single request for more numeric
> facilities in Ada 2012, and I'm pretty sure that there are no open requests
> for the same.

This can mean that people are still not much aware of Ada as a very
good and robust language for scientific programming. If we look at
recent publications, how many books discuss scientific computations
from the view of Ada, how many from the view say C++? For Ada, the sad
news is that we have practically no recent publication. There were
strong interest in the 1980s...e.g. the book Scientific Ada and
Applied Ada. What happened after that?

> If you want to see additional facilities, you need to ask (on Ada-Comment)
> and give examples of problems that you have that can't be solved with the
> current facilities. (Even better, would be to actively participate in the
> language revision process; we don't have enough numerics expertise to do a
> great job.)

I also don't have enough numerics expertise.  But if other languages
have successfully created numerical
libraries since 1970 or 1980, then I guess that the Ada committee
could do some outsourcing and put up a team that would look into the
matter. I read here that some Ada users translate the codes from the
book Numerical recipes in Pascal. Translation can be ok, but re-
writing the code in Ada's spirit using generics and so on would be far
better. If the Ada committee doesn't put efforts to create good
numerical libraries, then we can say that Ada won't be appealing to
someone needing numerical computations.

> In any case, the eigenvalue routines originally were supposed to work on all
> matrices. That was dropped as the algorithms to solve such things are
> supposedly suspect. Here's the discussion from AI95-0296-1 (which defines
> the G.3 packages):

> In view of these computational difficulties and the fact that requiring the
> eigensystem of general matrices is uncommon, we decided not to provide such
> facilities.

> [End of quote from AI95-0296-1.]

I don't think that eigensystem analysis of general non-symmetric
matrices is uncommon. Many real-life systems can only be modeled
better as non-symmetric systems and these abound in engineering. If
eigensystem analysis for only symmetric matrices would exist, then
many engineering achievements would not be possible. The fact that
other languages do provide support for non-symmetric matrices do
indicate that they are needed more often than one may think.

> I recall that the situation is actually worse than reported here; some of
> the algorithms used may not terminate for some matricies. Algorithms that
> don't terminate aren't tolerable in the Ada predefined libraries!

This is good that Ada takes much care in providing robust libraries.

> I am no expert on numerics, but I have to wonder what other languages and/or
> packages do in such cases? Perhaps they just don't care (there is precedent
> for that; Ada takes great pains to define the accuracy of most of the
> numerical functions, most other languages say nothing at all).

Still, as I mentioned the engineering community will be frustrated if
eigensystem analysis for non-symmetric matrices wouldn't exist. Other
languages have successfully implemented algorithms to deal with
general matrices. These algorithms usually have to pass some
benchmarks and these benchmarks are available in literature.

The problem with Ada remains that there is practically no recent books
(we have two in the 1980's that I know) which specifically that
discuss numerical techniques. A new person considering to use Ada
would be only puzzled to see why there are no such books after the
1990's. So that person will easily consider Fortran, C++ or something
else. If on the other hand, the Ada committee will provide robust
numeric libraries and some authors would consider writing books
demonstrating the power of Ada in numerical computing, then people
will become interested using Ada in scientific programming.

YC



  parent reply	other threads:[~2010-07-25 19:15 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-10 13:25 matrix package with Ada fitta
2010-07-10 13:46 ` MRE
2010-07-10 15:42   ` fitta
2010-07-10 18:34     ` tmoran
2010-07-10 18:54       ` Simon Wright
2010-07-10 20:23     ` Gautier write-only
2010-07-14  2:02     ` robin
2010-07-10 20:22 ` Gautier write-only
2010-07-12  1:58   ` Jerry
2010-07-12 13:38   ` Ada novice
2010-07-12 15:13     ` jonathan
2010-07-12 19:13       ` Ada novice
2010-07-12 20:13       ` Simon Wright
2010-07-12 21:09         ` jonathan
2010-07-13  7:07           ` Ada novice
2010-07-13 14:27             ` jonathan
     [not found]               ` <ec73f176-876e-4bcf-ab11-eed852129d34@x21g2000yqa.googlegroups.com>
2010-07-13 17:59                 ` Jeffrey R. Carter
2010-07-13 18:00                 ` Georg Bauhaus
2010-07-13 18:26                   ` Ada novice
2010-07-19 22:34                 ` Randy Brukardt
2010-07-20  7:27                   ` Dmitry A. Kazakov
2010-07-25 19:15                   ` Ada novice [this message]
     [not found]                   ` <5f0082b8-7688-4422-be38-72f1c60be539@d8g2000yqf.googlegroups.com>
2010-07-25 19:39                     ` Nasser M. Abbasi
2010-07-13 19:11           ` Simon Wright
2010-07-13 20:43             ` Ada novice
2010-07-14 18:55               ` Simon Wright
2010-07-12 20:59     ` Simon Wright
2010-07-13 16:40   ` Warren
2010-07-27 22:10   ` jonathan
2010-07-27 22:40     ` jonathan
2010-07-28  0:51     ` jonathan
2010-07-12  2:04 ` Jerry
2010-07-12  8:52   ` Ada novice
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox