ACM-TOMS / CALGO

The Collected Algorithms of the ACM (CALGO)
Other
10 stars 1 forks source link

Single file - Group 2 #4

Open pauldj opened 2 years ago

pauldj commented 2 years ago

I understand that ACM already put a lot of work into Group 2 (Algorithms 493-798), by splitting the single file into multiple one, by providing drivers, Makefile, and so on.

However, here we are dealing with the "single files" again. How to incorporate the improvements into the repository? Do we have the CD? Is the content available somewhere?

bangerth commented 2 years ago

That's a question for @TimHopkins .

pauldj commented 2 years ago

Tim has all the material from the CD and then some. We will include different versions of the algorithms (e.g., "minimal working version", "version with drivers and extra fixes", ...) in different subdirectories

pauldj commented 2 years ago

Update: Tim will share this material with Paolo.

TimHopkins commented 2 years ago

I have the CD contents (covering algorithms 493--798) and I will fold these into the CALGO files. This allows me to make two updates at the same time to the ftp site; first, to replace many .gz files with zip for consistency and second, to provide more useful versions of these codes to end users.

My original thoughts for naming the subdirectories within each algorithm directory was to use names like AlgTV44N2 (Algorithm Toms Vol 44 No 2) for the original algorithm submission and RemTV48N1 (similar code to above) for any associated updates via published remarks. I get the feeling that you would be in favour of something more simple like Original for the algorithm submission and RemarkNN where NN is 01, 02, ... for any each subsequent updates. Is this a general consensus?

The current state of the CD is that each algorithm has a directory structure like

AlgNo Doc (contains Makefile, user manual, licences, etc) Fortran77 (or possibly another language) Sp (Single precision -- may or may not be present) Src (Single precision of the algorithm source) Drivers (Single precision drivers + expected results) Dp (Double precision -- may or may not be present) Src (Double precision of the algorithm source) Drivers (Double precision drivers + expected results)

at least one and maybe both of Sp and Dp may be present.

I propose to replace the AlgNo directory by CD or CALGO_CD at the same level as Original.

For some of these algorithms I’ve also generated a Fortran 90+ version of the code. There are not many of these and they have not been 'officially' published. Should these be included and, if so, where would an appropriate place be to put them within the directory tree?