gen_9.1.gif
gen_1.1.gif gen_4.1.gif
Presentazione Foto d'altri tempi Apparecchi radio e tv QSL Programmi
gen_2.1.gif
gen_3.1.gif

Tempo fa, precisamente alla fine del 2008 avevo ricevuto una richiesta dal Dr. Julian Hill, ex allievo del Dr John Griffiths all'Universitá di Leeds¹ del listato della versione per Apple II del programma PPP-MO (Pariser-Parr-Pople Molecular Orbital) che feci nel lontano 1982

La richiesta era in questa forma: (riporto i passi principali della conversazione in lingua originale)

Do you still have the program? I am now a school teacher and I teach computing and chemistry. I would like a copy of your program to show my students how powerful Pascal is as a language. We are still using Pascal to teach programming.

I'm happy to ear that there are still some one in the world teaching programming, non only making mess with the current fashion anarchical C! Microsoft docet!

I agree with you. It is important to teach good programming. Pascal is still, I think, the best language for this.

your request gave me an idea: the PPP program can be useful for historical and teaching purpose. I would publish it on my site...
...The main difference between the various versions is on the graphic output management as each compiler had different primitives.

Using the data for Disperse Red 1, I was able to confirm that the new program gave the same results I calculated using the Algol program 20 years ago. This predicts an absorption maximum of 451nm, which is within 2nm of the measured experimental value of 453nm when using cyclohexane as the solvent.
.....
......
It is fantastic that you have gone to so much effort to recover the code and to make it available for others to use on your web site. I think the only thing left to do is to rewrite the manual. As my very small contribution to this project, I have updated the manual and have provide this as both a Microsoft Word and a PDF document.  I have checked that the input file in the document matches the output results and have supplied these as attachments.

Nota: Non posso giudicare la dimensione del contributo del Dr. Julian Hill. Quello che posso affermare con sicurezza é che é stato un contributo determinante: senza di quello questa pagina non sarebbe mai stata scritta e il listato del programma sarebbe rimasto a dormire in un disco da qualche parte nel mio ufficio!

Purtroppo la comunicazione con il Dr. Hill si interruppe inaspettatamente e questa pagina rimase dormiente per un pó di anni. Ora peró ho deciso di farla rivivere. Pubblico pure la versione originale in inglese, che al momento lascio cosí come era. Vedremo col tempo se portare avanti sia la versione Italiana che Inglese.

Penso possa essere utile far conoscere cosa si poteva fare con un elaboratore con 64k di memoria centrale ed un processore a 8 bit con clok ad 1 Mhz al giorno in cui una macchina da 2 Giga di memoria centrale, processore a 64 bit e clock a 2.4 Ghz puó essere considerata vecchia e lenta se non ha almeno un processore quad!

Il programma originale era segmentato a causa delle limitazioni di memoria e ottimizzato molto, ma molto a fondo per raggiungere l'obiettivo di una esecuzione in 12 ore per una molecola di 20 atomi. Il calcolo per la stessa molecola in una macchina attuale termina prima che si possa sollevare lo sguardo dopo aver premuto il tasto INVIO (non tuttte le persone possono digitare senza guardare la tastiera!!) :-).

Al momento Non ho a disposizione la copia originale del programma per Apple II, dato che ho il disco ma non ho la macchina per leggerlo. Il listato disponibile é stato copiato dal listato in forma cartacea e non é stato testato!

Quella che ho inviato a Julian é stata la copia in Turbo Pascal 3 (qui si trova l'eseguibile) ed al principio era errata, dato che alcune righe di codice si erano perse durante i numerosi trasferimenti (a quel momento si usava la porta seriale per fare i trasferimenti. Le chiavette USB sono state inventate un pó di tempo dopo!). Con l'aiuto di Julian ho potuto testarlo e correggerlo, dato che mi ha mandato il manuale, i dati d'ingresso ed i risultati di una esecuzione corretta per provarlo. Cosí ora posso pubblicarlo. Altre pagine di questo mio revival storico dimostrano che non sempre viene applicato questo criterio!

I manuali disponibili sono l'originale del programma scritto in Algol, il file Leggimi della traduzione per Apple II e la nuova revisione della documentazione originale, modificata per la nuova versione del programma, fatta da Julian. Essa contiene una nuova esecuzione di test.

Al momento non ho la vesione originale del programma di plot. Ricordo che era implementata utilizzando il Turtle graphic (disponibile per l'UCSD Pascal sull'Apple II). Includo la traduzione per il Turtle graphic del Turbo Pascal 3. Come riferisce Julian il programma puó essere compilato anche con Free Pascal per Windows e Lazarus per Linus.

The program also compiles using Free Pascal under Windows and also Lazarus
under Linux. Of course, these do not provide the graphical output.

Ho fatto una nuova versione che utilizza il GDI di Windows. Non ho usato il GUI di Windows per mantenere le dimensioni del programma ad un livello "ragionevole" (cosa che non vedo tale se per fornire i risultati in foma grafica si usa un multiplo delle dimensioni del programma che li produce). La grafica é utile solo per vedere la correttezza dei dati d'ingresso e non credo sia giusto che occupi la maggior parte dello spazio dimensionale del programma. Ho fatto una versione openGL del programma (non completamente corretta) e forse faró una versione con la GUI di Windows a scopo comparativo. Ho pure una versione per Borland Turbo Pascal 3, 4, 5, 6, che potró pubblicare se richiesto.

Un altro programma che ho deciso di pubblicare é la implementazione in Lisp dell'algoritmo A* che ho scritto per ricercare il cammino di minimo costo (energetico) fra due configurazioni prestabilite di una molecola. Il programma é stato scritto per Lisp 1.5 su Univac 1100.

¹Department of Colour Chemistry, The University, Leeds LS2 9JT, UK ICI Colours and Fine Chemicals, Hexagon House, Blackley, Manchester M9 3DA, UK

²Castellani Giorgio F., Jan C.J. Bart
Color prediction of organic dye molecules on a microcomputer - A readily available form of the PPP-MO method for teaching and research
Dyes Pigm Vol. 5; No 3, P. 165-170

³Griffiths, J. Hill, B Fishwich
The Application of PPP-MO Theory to the halochromism of 4-aminoazobenzene dyes
Dyes Pigm. Vol. 15, No. 4, P. 307-31




Questo sito é ospitato da
VHosting Solution LLC
Ultimo aggiornamento il: 13/07/12