|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jan 2006
Messaggi: 301
|
consiglio: quale linguaggio??
salve,
premetto che non sono un informatico e oltre al pascal (su cui ho fatto un esame) non conosco alcun linguaggio di programmazione. Vorrei imparare un linguaggio di programmazione; la domanda e': qual'e' quello piu' adatto per scrivere programmi di calcolo/simulazione numerica? All'universita' alcuni professori fanno usare il fortran; mi chiedevo se anche il c++ e' adatto a questo scopo o piu' indicato per altre applicazioni. tnx |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Dipende da quello che ci devi fare.
Se si tratta di operazioni computazionalmente pesanti, il Fortran è il linguaggio più adatto. Se invece devi soltanto modellare un problema, esistono diverse alternative che ti permettono di sbrigarti molto più velocemente. Fra queste Mathlab è molto conosciuto, ma ormai stanno prendendo piede anche linguaggi come Python che hanno librerie ad hoc per il calcolo scientifico: http://wiki.python.org/moin/NumericAndScientific
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Cesare via...non mi sembra il caso di mettere Python dove non c'entra niente. Python di suo ha prestazioni di calcolo di uno o due ordini inferiori rispetto a C++ o Fortran...si vede nel link che avevi postato te nell'altra discussione.
Il fatto che sia necessaria una libreria esterna (non scritta in Python) per ottenere prestazioni decenti non depone a suo favore, anche perché gli altri linguaggi di librerie matematiche/algebriche ne hanno a bizzeffe. miki_pisa: Fortran è la scelta migliore, anche perché ha un approccio molto vicino al linguaggio matematico. C e C++ hanno ottime prestazioni, ma necessitano di librerie esterne per ottenere la stessa espressività del Fortran. Inoltre c'è anche un altro vantaggio per Fortran: è il linguaggio di default per i Job dei supercomputer ![]() |
![]() |
![]() |
![]() |
#4 | ||
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
![]() Per il resto non sono certo io che che cito Python come linguaggio da usare per la modellazione di problemi scientifici: troverai non poche informazioni in merito se fai qualche ricerca. Quote:
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
||
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Ci sono ottime librerie per C++ che competono in quanto a prestazioni con l'equivalente codice Fortran.
La scelta del linguaggio va valutata in funzione del problema specifico, delle conoscenze pregresse e del budget a disposizione. |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Come nota di curiosità cito Fortress.
http://fortress.sunsource.net/ Lingua sviluppata da Sun Microsystem per il progetto Darpa HPC (da cui, per la cronaca, Sun è stata buttata fuori, restano in gara IBM con il suo X11, un dialetto Java, e Cray con Chapel). E' ancora in sviluppo quindi è, appunto, "una curiosità accademica". Qui c'è un esempio di programma scritto in Fortress: http://research.sun.com/projects/plrg/faq/NAS-CG.pdf
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me! |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Jan 2006
Messaggi: 301
|
circa l'apprendimento cosa sapete dirmi? (premesso che per l'esame di informatica ho studiato il pascal)
Fortran vs C++: qual'e' quello piu' problematico? (visto il linguaggio sporco, presumo il c++) Il posto in cui faro' girare i codici di calcolo dispone di computer cluster (non so quante unita'). Forse sarebbe meglio se chiedessi a quelli del centro quale linguaggio sarebbe meglio imparare ... |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
SArebbe meglio...ma al 90% ti diranno Fortran
![]() |
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Comunque per la mia esperienza Fortran è più semplice da programmare rispetto al C++, e per questo tipo di applicazioni (enorme quantità di calcolo) è più efficiente (ci sono dei compilatori che sono dei veri e propri gioielli, frutto di decenni di ricerca).
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
Quote:
|
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Mi chiedo come si possa suggerire il Visual Basic in risposta alla domanda "quale è il linguaggio piu' adatto per scrivere programmi di calcolo/simulazione numerica?".
![]() Anche presupponendo un engine realizzato in Fortran/C++/C ci sono piattaforme migliori per sviluppare il layer di visualizzazione dei dati. |
![]() |
![]() |
![]() |
#13 | ||
Senior Member
Iscritto dal: Feb 2002
Messaggi: 906
|
Quote:
Quote:
io ho usato il vb per la riduzione delle colonne al totocalcio e con i pc di ora non mi posso lamentare della velocità di esecuzione. Se deve fare calcoli non simulati va bene qualsiasi linguaggio: rata = ((capitale * tax) / (1 - ((1 + tax) ^ -Anni)) / 12) ho consigliato vb e c++ perchè uso questi non conosco il fortran Cosa ha il fortran, a titolo informativo, di superiore nei calcoli? Come approccia all'fpu. Le sue librerie sono + performanti?... ma passano sempre per il chip della fpu? |
||
![]() |
![]() |
![]() |
#14 | ||
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Quote:
Quote:
![]() |
||
![]() |
![]() |
![]() |
#15 |
Moderatore
Iscritto dal: Nov 2003
Messaggi: 16211
|
Se il tuo motto nel calcolo numerico è "io non corro, volo basso": Fortran.
Se invece la velocità non è davvero il primo dei tuoi requisiti: Python + libreria Numeric + un buon manuale, ad esempio quello di Langtangen; che è quello che sto usando adesso io, e mi ci trovo benissimo. Per la terza via, faccio notare che un saggio una volta ha detto: "Python rompe il c##o a Matlab in termini di velocità dell'interprete, chiarezza del linguaggio, scalabilità e prestazioni su array piccoli. Su array grandi, Python (con numarray) e Matlab hanno prestazioni confrontabili. Matlab si presenta con una documentazione più graziosa e un'interfaccia grafica in stile taccuino."
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" ![]() Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu |
![]() |
![]() |
![]() |
#16 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Che ne pensi di NumPy, e di SciPy?
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
#17 | |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
Quote:
Grazie per le informazioni e per i link. ![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
![]() |
![]() |
![]() |
#18 |
Moderatore
Iscritto dal: Nov 2003
Messaggi: 16211
|
Non molto, per adesso: sto seguendo il Langtangen, che mi sembra usi Numeric, e finora sono veramente agli inizi.
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" ![]() Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu |
![]() |
![]() |
![]() |
#19 |
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
OK grazie (lo chiedevo perché NumPy deriva da Numeric, che stai usando, e SciPy a sua volta usa NumPy, per cui pensavo che li avessi già provati).
![]()
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:29.