Costanti e Funzioni Matematiche in Precisione Multipla

Presenti 7 programmi (aggiunta la funzione di Riemann Z(3)

Disponibili i Listati Fortran e gli Eseguibili (WinDOS/Linux)

Contact information

Elenco dei programmi scaricabili

Istruzioni per compilare i programmi Fortran

Listati Fortran dei programmi

File Risultati dei programmi


Contact Information

Web link per download compilatore GNU/Fortran:
Sito di Astronomia Teorica
Italia
joematara (chiocciola) hotmail.com


Elenco dei programmi scaricabili

Ambiente DOS

MYPI.EXE (Pigreco fino a 50,000 cifre decimali)
L'eseguibile può essere scaricato da qui. All'avvio viene chiesto il numero desiderato delle cifre decimali, che a fine calcolo vengono raggruppate 50 per riga e distanziate a decine. E' pure visualizzato il tempo di calcolo impiegato dal processore (CPU). Sempre all'inizio, si può scegliere se si vuole il risultato su Video o su File.

MYFI.EXE (Sezione aurea Fi= (1+√5)/2 fino a 50,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

MYEU.EXE (Costante di Eulero Gamma fino a 50,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

MYNEP.EXE (Base dei logaritmi neperiani (e) fino a 50,000 cifre decimali)
Ecco l' eseguibile. Questo programma utilizza una routine per convertire interi da precisione singola a multipla. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

UNPACK.EXE (6 Esempi di calcolo di funzioni circolari - seno, coseno, tangente - con 43 cifre significative in formato `unpacked`, ovvero senza raggruppamenti).
Ecco l' eseguibile. Gli argomenti angolari prescelti sono: π, π/2, π/3, π/4, π/8, π/12.

SINCOS.EXE (Calcolo di seno e coseno di 1 radiante con 10,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

RIEMANN.EXE - Funzione di Riemann F(3) = ∑(n=1→∞) (1/n3), fino a 50,000 cifre decimali.
Ecco l' eseguibile.

Ambiente Linux

mypi (Pigreco fino a 50,000 cifre decimali)
L'eseguibile può essere scaricato da qui. All'avvio viene chiesto il numero desiderato delle cifre decimali, che a fine calcolo vengono raggruppate 50 per riga e distanziate a decine. E' pure visualizzato il tempo di calcolo impiegato dal processore (CPU). Sempre all'inizio, si può scegliere se si vuole il risultato su Video o su File.

myfi (Sezione aurea Fi= (1+√5)/2 fino a 50,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

myeu (Costante di Eulero Gamma fino a 50,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

mynep (Base dei logaritmi neperiani (e) fino a 50,000 cifre decimali)
Ecco l' eseguibile. Questo programma utilizza una routine per convertire interi da precisione singola a multipla. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

unpack (6 Esempi di calcolo di funzioni circolari - seno, coseno, tangente - con 43 cifre significative in formato `unpacked`, ovvero senza raggruppamenti).
Ecco l' eseguibile. Gli argomenti angolari prescelti sono: π, π/2, π/3, π/4, π/8, π/12.

sincos (Calcolo di seno e coseno di 1 radiante con 10,000 cifre decimali)
Ecco l' eseguibile. Modalità esecutive uguali a quelle riportate nel primo file di questa sezione.

riemann - Funzione di Riemann F(3) = ∑(n=1→∞) (1/n3), fino a 50,000 cifre decimali.
Ecco l' eseguibile.


Istruzioni per compilare i programmi Fortran

Per iniziare occorre avere a disposizione un compilatore Fortran, possibilmente gratuito.
Consigliamo di usare G77, di libera licenza GNU e non sottoposto quindi a copyright. Linkando il mio Sito di Astronomia Teorica ed aprendo la prima pagina (SOFA), c'è la possibilità di scaricare, attraverso i link indicati, il compiatore G77 nelle 3 versioni: Linux, Windows, DOS.

A questo punto occorre acquisire la libreria delle oltre 100 routine dei programmi del prof. Richard Brent (Australia), di pubblico dominio, e scaricabile da qui in forma gzippata.
Da questo file si procede quindi ad estrarre i due file che contengono la citata libreria: mplinux0.f e mplinux1.f.
Nota: non tragga in inganno il fatto che sia menzionato Linux, il compilatore G77 è scritto, come abbiamo detto sopra, per essere utilizzato su diverse piattaforme.

Il successivo passaggio (effettuato una sola volta) consiste nel compilare le subroutine della libreria in formato binario, che velocizza la compilazione dei programmi.
Il comando è: g77 -c mpl*.f . Si formano i file mplinuxo.o e mplinux1.o

Proviamo adesso a compilare un programma Fortran. Prendiamo come esempio il file test.f che si trova zippato su rpb043.tar.gz, visto in precedenza. Operando sempre all'interno della cartella di lavoro prescelta, digitiamo:
g77 -o test.exe test.f mpl*.o (invio) se siamo in ambiente Windows/DOS oppure g77 -o test test.f mpl*.o (invio) se ci troviamo in ambiente Linux. Qui l'eseguibile si attiva con ./test (invio) da terminale.


Listati Fortran dei programmi

mypi.for (Pigreco fino a 50,000 cifre decimali)
Codice del listato scaricabile da qui

myfi.for (Sezione aurea Fi= (1+√5)/2 fino a 50,000 cifre decimali)
Codice del listato scaricabile da qui

myeu.for (Costante di Eulero Gamma fino a 50,000 cifre decimali)
Codice del listato scaricabile da qui

mynep.for (Base dei logaritmi neperiani (e) fino a 50,000 cifre decimali)
Codice del listato scaricabile da qui

unpack.for (6 Esempi di calcolo di funzioni circolari - seno, coseno, tangente - con 43 cifre significative in formato `unpacked`, ovvero senza raggruppamenti).
Codice del listato scaricabile da qui

sincos.for (Calcolo di seno e coseno di 1 radiante con 10,000 cifre decimali)
Codice del listato scaricabile da qui

riemann.for (Funzione di Riemann F(3) = ∑(n=1→∞) (1/n3), fino a 50,000 cifre decimali.)
Codice del listato scaricabile da qui


File Risultati dei programmi


        I tempi di esecuzione dei programmi si riferiscono
        ad un processore Pentium4 a 2.40 Ghz, 256Mb di RAM
        in ambiente Linux (più veloce rispetto al DOS)
   
pi.txt (Pigreco fino a 50,000 cifre decimali)
File in formato testo scaricabile da qui

fi.txt (Sezione aurea Fi= (1+√5)/2 fino a 50,000 cifre decimali)
File in formato testo scaricabile da qui

eu.txt (Costante di Eulero Gamma fino a 50,000 cifre decimali)
File in formato testo scaricabile da qui

nep.txt (Base dei logaritmi neperiani (e) fino a 50,000 cifre decimali)
File in formato testo scaricabile da qui

unpack.txt (6 Esempi di calcolo di funzioni circolari - seno, coseno, tangente - con 43 cifre significative in formato `unpacked`, ovvero senza raggruppamenti).
File in formato testo scaricabile da qui

sincos.txt (Calcolo di seno e coseno di 1 radiante con 10,000 cifre decimali)
File in formato testo scaricabile da qui

riemann.txt (Funzione di Riemann F(3) = ∑(n=1→∞) (1/n3), fino a 50,000 cifre decimali.)
File in formato testo scaricabile da qui