[PLUTO-Journal] Articoli per il prossimo numero
Francisco Yepes Barrera
paco.yepes a libero.it
Ven 10 Set 2004 12:35:16 CEST
g_zucchetta a virgilio.it writes:
> La cosa mi interessa. Potresti spiegare meglio cosa intendi
> per "ambiente matematico-scientifico"? ed quale sarebbero
> gli argomenti che tocchi?
Per ambiente matematico-scientifico intendo l'utilizzo di strumenti
computazionali per la risoluzione diretta o indiretta degli aspetti
matematici inerenti problemi im ambito delle scienze chimiche,
fisiche, matematiche o in ingegneria. Cioè, l'uso di programmi per
realizzare tutte quelle operazioni matematiche complesse che
costituiscono i problemi in sé (risoluzione diretta) o che
costituiscono passaggi intermedi obbligati nel trattamento dei
problemi (risoluzione indiretta).
Gli argomenti da trattare potrebbero essere:
1. Introduzione all'argomento: Linux come piattaforma ideale per il
trattamento matematico dei problemi in ambito scientifico.
2. Enumerazione e descrizione sommaria delle routine di base per un
trattamento computazionale dei problemi in generale.
3. Introduzione al modo di utilizzo del codice di calcolo: librerie e
programmi.
4. Librerie:
4.1. Librerie statiche e dinamiche.
4.2. Descrizione sommaria delle librerie matematiche più
utilizzate: slatec, netlib, ...
4.3. Linkaggio di librerie statiche e dinamiche a un proprio
programma.
5. Programmi:
5.1. Computazione numerica: Octave. Esempio: risoluzione
numerica di un sistema di equazioni differenziali con il
programma Octave.
5.2. Computazione simbolica: Maxima. Esempio: risoluzione
esatta e approssimata di integrali multipli con Maxima.
5.3. Altre utility: il programma di conversione delle unità
Units e Gnuplot.
6. Parallelizzazione dei calcoli:
6.1. Modalità per la parallelizzazione e distribuzione dei
calcoli: topologia e classificazione.
6.2. Metodi per il passaggio dei messaggi tra i nodi di una
architettura parallela: memoria condivisa, trasmissione
di segnali e multithreading.
6.3. Il multithreading come tecnica ideale per la costruzione
di algoritmi di calcolo parallelo.
6.4. Costruzione di un server con tecniche multithreading per
la risoluzione di un programma in modalità parallela
(potrebbe essere, ma potrei cambiare idea, ad esempio il
calcolo di un determinante di grosse dimensioni).
6.5. Sistemi di bilanciamento del carico dei processori e
della memoria: Mosix.
7. Interfacciamento grafico:
7.1. La tecnologia web come strumento ideale per l'utilizzo
dei programmi di calcolo scientifico.
7.2. Costruzione di un'applicazione cgi semplice per la
rappresentazione grafica di funzioni con Gnuplot e per la
risoluzione simbolica e rappresentazioni di integrali
usando Maxima.
L'argomento è molto ampio, ma penso che non valga la pena di trattarlo
in maniera sommaria o descrittiva; al limite il materiale si può
suddividere in diverse parti che potrebbero apparire in numeri
successivi. L'indice proposto è solo indicativo.
Qualche considerazione:
1. Il materiale ha due aspetti: uno per l'uso dei programmi e le
librerie già disponibili in rete, e un'altro che illustra
l'utilizzo di tecniche di programmazione focalizzando l'attenzione
sui programmi di calcolo. Queste tecniche sono di carattere
generale, e possono essere usate per qualunque pogramma. Io, nel PJ
vedo fondamentalmente descrizioni sull'uso di programmi, ma non su
tecniche di programmazione. Non so se si tratta di una direttiva
editoriale o cosa, ma secondo me in questo caso le tecniche di
programmazione costituiscono l'aspetto più interessante.
2. Gli esempi alle tecniche di programmazione verrebbero scritti in C,
mentre l'applicazione cgi sarebbe scritta in Perl.
3. I programmi raccolti in rete sono tutti ovviamento open source.
Scusate se mi sono un po' allungato.
Paco Yepes
Maggiori informazioni sulla lista
pluto-journal