[ut.na] NAgMAg v89 #24

krj@na.toronto.edu (Ken Jackson) (11/24/89)

NAgMAg		Friday,  November 24 1989	Volume 89   Issue 24

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%   The official electronic digest of the NAG Users Association   %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Today's Topics
                     On-line Information Supplement
                          New library routines
                          New library routines?

%%
%% Well some response from my request for what new routines people
%% would like to see in the library. There must be lots of users
%% out there who come along to their computing centres etc. saying
%% why isn't there a routine to do x. So let's have a few more
%% suggestions.
%%
%% Tim
%%
---------------------------

Date: Wed, 15 Nov 89 16:57:34 PST
From:  Jerry Berkman <jerry@violet.berkeley.edu>
Subject: On-line Information Supplement


I recently installed the generic UNIX version of the NAG online
information supplement for the Mark 13 library on our Cray X-MP running
UNICOS 4.0.  I think this is a fine service.  Here are some comments
and recommendations.

1. News

I found a topic called "news" which is titled:
	"NAG FORTRAN LIBRARY MARK13 NEWS"
It contains everything in sections 2-5 of the "Fortran Mark 13 News"
at the beginning of Volume 1 of the printed NAG Fortran Library Manual:
	New Routines, Withdrawn Routines, Routines Scheduled for Withdrawal,
	Superseded Routines, Routines Revised at Mark 13
NAG should also include section 1, "New Features of Mark 13" so the online news
is complete (I added it manually).

NAG should also document this section by mentioning it exists in the printed
documentation and by adding it to the subject index, subject.d .  I found it
purely by accident.

2. A00AAF

This routine should be described, rather than aliasing a reference to the
topic "local".

3. INDEX

The generic UNIX version uses "index" as an intrinsic in one program unit
of help.f and uses "index" as the name of the block data generated by
index.f .  This is legal Fortran 77 (see ANSI standard section 18.1.2),
but doesn't work with Cray compilers.  Cray acknowledges this is a bug
which will be fixed in the future.  But for now you must change format
97 of index.f.  By the way, IBM's VS FORTRAN also can not handle this
condition and IBM has stated they will NOT fix this (Problem 4X650)
so future AIX sites will probably stumble on this.  And there may be
other compilers which stumble on this.

4. /IO/

The generic UNIX version unnecessarily mixes chararacter and non-char.
variables in common block IO in help.f .  This is non-standard and there are
compilers which enforce the standard which will not compile help.f .
On our Cray system, CFT won't compile this, CFT77 does.  However,
CFT77 3.0 with optimization on (by default) generates bad code for
assign in help.f .  This has been fixed in CFT77 3.1 which we now use.

	- Jerry Berkman, U.C. Berkeley, USA
	  jerry@violet.berkeley.edu (internet)
	  jerry at ucbviole (bitnet)
	  (415)642-4804 (phone)

---------------------------

Date: Fri, 17 Nov 89 16:36:02 GMT
From: "Mr.C.Daly" <chas@cent1.lancs.ac.uk>
Subject: New library routines

Tim, you ask for suggestions for new Nag routines, so here goes - but I have
only recently started to receive Nagmag, so my apologies if this topic has
already been raised.

G05CAF has a period of 10**17 and has been very satisfactory. However there is
an increasing need for pseudo-random number generators with longer periods as
machines become more and more powerful, and there is also a need for the
ability to initiate simultaneously a large number of independent series of
pseudo-random numbers - when running a job on a multi-transputer system, for
example.
Both of these needs would appear to be met by a generator called RANMAR, due 
to Marsaglia and Zaman, details of which will be found in CERN report DD/88/22
whose author is F.James. This requires two integer seeds, each in the
approximate range 0 to 30000. It would appear that these allow the possibility
of 900 million independent series, each of length about 10**30.
It is completely portable, giving bit-identical results on all machines with
at least 24-bit mantissas in the floating point representation ( ie all the
common computers of 32 bits or more).
If this generator is as good as it sounds then I suggest that we ought to
find a place for it in the Nag repertoire.

Charles Daly 


---------------------------

Date: Sun,19 Nov 89 16:15:03 GMT
From: David_Rhead@vme.ccc.nottingham.ac.uk
Subject: New library routines?

In NagMag #23, Tim asks for suggestions for new facilities in the main
Fortran Library.
 
I'd like to see routines in the E04 chapter for
      minimizing
            a sum of squares of non-linear functions
      subject to
            simple bounds on the variables.
i.e., routines that bear the same relation to the E04Fs, E04Gs and E04Hs
that the E04Js, E04Ks and E04Ls bear to the E04Cs, E04Ds and E04Es.
Such routines would be of great value to people who are fitting models
to data (and my guess is that there are more such people than there are
people who have objective functions that are not sums-of-squares).
 
It is very common for people who are fitting models to data to know
that the fitted values must be in a certain range:
either for modelling reasons (e.g., an exponential must be a decaying one)
or     for programming reasons (e.g., if this goes negative, I won't be
       able to evaluate that).
 
At the moment, if a user has a sum-of-squares problem with bounds,
one has to advise them to use a general routine (bad, because the routine
cannot take advantage of the sum-of-squares structure and, as far I
remember, will be solving a worse-conditioned problem than the original one)
or ignore the bounds and hope (bad, because it may be a matter of experimenting
with different starting points until the algorithm finds a path from starting
point to minimum that happens not to violate any bounds en route).
 
In any case, surely the rationalle that applies in the general case also
applies in the sum-of-squares case.  It is very rare that absolutely
any values in the range (-infinity,+infinity) will really be acceptable,
if only because, at some point, we would say that the problem is badly
scaled.  It would make more sense to have "just bounded routines"
rather than "just unbounded routines" in the sum-of-squares case,
in the same way that, in the general case, NAG seems to be withdrawing
the "unbounded black-boxes" in favour of "bounded black-boxes".
 
                                                                David Rhead

---------------------------

%%   For NAGUA membership details contact:
%% Janet Bentley, Administrator NAGUA,
%% Shore Lane Farm, Blackstone Edge Old Road,
%% LITTLEBOROUGH, Lancashire, OL15 0LQ, UK.
%%
%% For other NAGUA enquiries contact:
%% Caroline J Foers
%% NAGUA Coordinator,
%% NAG Users Association,
%% PO Box 426,
%% Oxford, OX2 8SD, U.K.
%%
%% e-mail   caroline@uk.co.nag.vax

%%
%%   Replies or submissions to          nagmag@uk.ac.ukc
%%   Distribution changes to    nagmag-request@uk.ac.ukc
%%
%%   END OF ISSUE 


---------------------

Reposted by

Prof. Kenneth R. Jackson,      krj@na.toronto.edu   (on Internet, CSNet, 
Computer Science Dept.,                              ARPAnet, BITNET)
University of Toronto,         krj@na.utoronto.ca   (on CDNnet and other 
Toronto, Ontario,                                    X.400 nets (Europe))
Canada   M5S 1A4               ...!{uunet,pyramid,watmath,ubc-cs}!utai!krj
(Phone: 416-978-7075)                               (on UUCP)
(FAX: 416-978-4765)