imparare fortran

Ciao a tutti,

il mio relatore mi ha richiesto, per svolgere la tesi triennale, di imparare a programmare in fortran. Dato il mio background molto scarso (qualche rudimento di C nel corso di informatica del primo anno), come mi consigliate di muovermi?
In rete ho trovato diverse “guide” che ho leggiucchiato. Ho scaricato anche un IDE: Force 2.0. Volevo però sapere: come si fa a programmare senza usare un IDE? Ricordandomi la teoria del corso di informatica so che devo usare un editor e poi un compiler, ma non ho la minima idea di come si faccia in pratica (ho Windows 7).
Su internet più leggo e meno ci capisco…

Grazie a chi risponderà!

Oltre all’editor e al compilatore è quasi sempre necessario usare uno strumento di build automation o system building (il più noto è make, che ha avuto origine su Unix). Ma, vista la complessità di questi strumenti che richiedono una configurazione manuale, è più semplice usare un IDE. Perché non puoi o non vuoi usare un IDE?

… non c’è un vero motivo. Leggendo mi era parso che fosse meglio. Se è così complicato come immaginavo allora userò Force senza farmi particolari problemi! Anche se a dir la verità uno c’è: Force supporta solo il Fortran 77, che ho letto essere parecchio obsoleto. Per imparare va bene lo stesso o devo cercare un altro IDE con una versione più recente?!

Questa può essere una limitazione, perché immagino che in ambito aerospaziale ora si usi soprattutto Fortran 90 o più recenti come 2003 o 2008, che sono versioni del linguaggio significativamente diverse da Fortran 77. Oltre al linguaggio è necessario scegliere o trovare, e imparare a usare, le librerie che serviranno ai programmi per eseguire calcoli matematici, visualizzazione grafica e altro.

Leggendo queste righe mi è sembrato di fare un viaggio indietro nel tempo . Alla fine degli anni 80 ero un neolaureato in Fisica e io ho anche utilizzato Fortran 77 ma pensavo che i Fortran fossero stati definitivamente abbandonati in favore di altri linguaggi (Pascal , ADA , C , ) tanto è vero che in tempo più recenti ho usato Matlab che se non vado errato usa un linguaggio molto simile a C . Evidentemente sbagliavo

Io per Fortran uso un vecchio compaq visual fortran che faccio girare nella macchina virtuale di windows XP. Ma studi al Politecnico di Torino?
Come compilatore gratuito c’è gfortran che su windows puoi avere scaricando mingw (da qualche parte avevo trovato un video che spiegava come fare).
Altrimenti se farai il grande passo e vai su Linux puoi utilizzare gfortran oppure scaricare gratis la suite Parallel studio della Intel che comprende il compilatore ifort e l’IDE. Cmq in questi giorni devo trovare anche io un valido compilatore+IDE per windows 7 alternativo al vecchio compialtore compaq, quindi possiamo cercare insieme le alternative

P.S. Leggendo meglio la tua domanda: i codici sorgenti sono semplici file di testo, quindi in teoria ti basta notepad per scrivere il codice. Avere però un editor di testo che ti “aiuti” nel trovare i comandi (o anche solo ti indichi la settimana colonna dalla quale iniziare a scrivere) può essere molto utile. Molti miei amici usano gedit, che si può usare sia su Windows che su Linux. Altrimenti io trovo buono geany, anche se non so se ci sia su windows.
Molti si trovano bene con emacs.
Per la compilazione invece io uso la cara e vecchia riga di comando da prompt di ms-dos o da shell su linux. Se i file da compilare son tanti uso un makefile su linux o un batch file su windows.
Se invece vuoi usare tutto in automatico, gli editor che ti ho suggerito prima dovrebbe poter essere configurati per chiamare il compilatore.

Al polito (per il poco che ho potuto vedere) matlab e fortran vanno abbastanza di pari passo: in aerodinamica ci hanno insegnato un po’ di matlab, e ora per la tesi mi è stato espressamente richiesto fortran.

Sì, sono al terzo anno di aerospaziale a torino! Il prof in questione è dario pastrone (propulsione aeronautica), magari lo conosci… Ieri sono riuscito a trovare una guida per adattare codeblocks (IDE che ho usato al 1 anno per C) ai fortran recenti, sembra che funzioni. Se ti interessa ti posto il link.
Mi interessava proprio capire come si usa il prompt di ms-dos per fortran. Sulle (scarse) guide che ci sono su internet non ci ho capito molto perché usano termini non familiari. Probabilmente avrò bisogno di un libro…

Per questo è più utile consultare la documentazione del compilatore, difficilmente un testo generale sul linguaggio descrive anche uno specifico strumento di sviluppo.

Allora dovrai lavorare sull’ascesa dell’ibrido :smiley:
Dopo Pasqua, se ti va, vieni nel mio ufficio o ci incontriamo in aula studio così guardiamo insieme il problema (che riguarda anche me), sia dal punto di vista del compilatore, sia guardiamo insieme il programma così ti do qualche spiegazione più dettagliata

In campo aerospaziale il fortran viene utilizzato molto (se non moltissimo). Ho cercato di sondare i motivi e a quanto pare i principali son questi (ma di alcuni non so quanto siano attendibili):

  • rispetto al C è leggermente più semplice per la programmazione scientifica
  • è più performante rispetto al C per le operazioni matematiche (mi han spiegato anche perché, dovrebbe riguardare la gestione della memoria e la vettorizzazione)
  • ma soprattutto per questioni ereditarie: molti dei vecchi programmi sono in fortran e quindi, invece di partire da zero, si utilizzano programmi (anche in fortran77) già fatti. Considera che molti programmi che girano sui super computer sono scritti in Fortran.

Che io sappia il fortran viene utilizzato in ambito strutturale, aerodinamico e astrodinamico. Matlab (e simulink) viene molto utilizzato nell’ambito della controllistica.
Ultimamente si sta cercando di costruire librerie anche con altri linguaggi di programmazione (C, phyton e java), ma il fortran è ancora possente :smiley:

Sarebbe fantastico! Magari ci risentiamo la prossima settimana per definire…

Non ci posso credere!! Allora qualcun altro usa il fortran!
Pensavo fossero matti i “miei” ingegneri …
Io ere geologiche fa usavo qualcosa che si chiamava Kedit(?) però su Unix.
Se volete sento al piano di sotto che usano

“Brutte” notizie ovvero usano il Visual Fortran di Intel che costicchia un pò… :star_struck:
Se comunque lo volete provate:

http://software.intel.com/en-us/intel-visual-fortran-studio-xe-evaluation

Stessa interfaccia di Visual Studio con ovviamente sotto il compilatore Fortran :nerd: :nerd:

Provato su Linux perche’ li’ la versione accademica e’ gratuita.