Laboratorio di Calcolo per Fisici

A.A. 2017-2018

Prof.Luciano M.Barone (curriculum vitae)


Orario di ricevimento il Martedi dalle 12 alle 13 e/o su appuntamento via e-mail



Ultimo aggiornamento 18 Settembre 2018
Questa pagina contiene informazioni generali sul corso e link a documenti utili. I documenti possono essere in formato PowerPoint (ppt), Word (doc) testo (txt), HTML o PDF (pdf). Per leggere il formato PDF occorre il programma Acrobat Reader che si puo' scaricare da questo link.


Avvisi

AVVISO IMPORTANTE
Esame del 19 Settembre - RISULTATI


Sono disponibili i risultati dell'esame del 19 Settembre 2018.
La verbalizzazione si terra' Venerdi 21 dalle 11 alle 12 nel mio ufficio.
Chi non potesse presentarsi in quella data deve mandarmi una mail proponendo una data diversa e specificando se accetta il voto proposto.
Chi non si presenta e non manda una mail perde il voto e deve rifare l'esame
Portare un documento di identita'.



AVVISO
Esame dell'11 Luglio - RISULTATI


Sono disponibili i risultati dell'esame del 11 Luglio 2018.



AVVISO
Esame del 28 Giugno - RISULTATI


Sono disponibili i risultati dell'esame del 26 Giugno 2018.



AVVISO
ESAME del 15 FEBBRAIO 2018 - RISULTATI


Sono disponibili i risultati dell'esame del 15 Febbraio.


AVVISO
ESAME del 25 GENNAIO 2018 - RISULTATI


Sono disponibili i risultati dell'esame del 25 Gennaio.


AVVISO
II ESERCITAZIONE VALUTATA


Sono disponibili i risultati COMPLETI della II esercitazione valutata.


AVVISO
I ESERCITAZIONE VALUTATA


Sono disponibili i risultati COMPLETI della I esercitazione valutata.











AVVISO
INIZIO DEL CORSO 2017-18


Il corso inizia Martedi 26 Settembre. L'orario e' il seguente:
  • Martedi 11-12 Aula 3
  • Mercoledi 11-13 Aula 3

Il corso prevede un laboratorio settimanale della durata di 3 ore. Orario e luogo del laboratorio saranno comunicati in seguito.







AVVISO IMPORTANTE

DATE ESAMI 2017-18

Gli esami dell'A.A. 2017-18 si svolgeranno nelle date
  • 25(-26) Gennaio 2018 mattina e/o pomeriggio
  • 15(-16) Febbraio 2018 mattina e/o pomeriggio
  • 26 Giugno 2018 mattina e/o pomeriggio
  • 11 Luglio 2018 mattina e/o pomeriggio
  • 19 Settembre 2018 mattina e/o pomeriggio
Ora e luogo dell'esame saranno specificati con avviso sul Web il giorno precedente la data dell'esame.


AVVISO IMPORTANTE
Il libro di testo e' L.M.Barone, E.Marinari, G.Organtini, F.Ricci-Tersenghi - Programmazione Scientifica, ed. Pearson.
Potete consultare il sito per i programmi in C discussi nel libro stesso.

AVVISO
Bonus da esercitazioni valutate

I voti riportati nelle due esercitazioni valutate danno diritto a un bonus sul voto finale solamente per chi sostiene l'esame negli appelli di febbraio/marzo. Il bonus si calcola secondo il seguente algoritmo:
  • se si e' avuta la sufficienza in ambedue le esercitazioni si calcola la media dei due voti
  • per media tra 18 e 24 si ha un bonus di 1 che si aggiunge al voto della prova pratica
  • per media tra 25 e 28 si ha un bonus di 2
  • per media tra 28.5 e 29 si ha un bonus di 3
  • per media tra 29.5 e 30 si ha un bonus di 4
  • per avere la lode occorre avere un totale di 34 nel voto finale
  • chi abbia partecipato ad una sola esercitazione o abbia avuto solo una sufficienza riceve il bonus relativo all'unico voto diviso per 2, arrotondato per difetto. Es. assente alla prima e 28 alla seconda, bonus di 1



AVVISO IMPORTANTE
Accesso ai programmi scritti in laboratorio

E' possibile accedere via Internet i programmi scritti in laboratorio. Questo link porta a una lista di directory di tutti i gruppi di tutti canali. Si ricorda che il nostro canale ha account del tipo lclbXX dove XX e' il numero del gruppo. Con un click sul nome del gruppo si accede alla lista di tutti i files presenti nella home directory.


AVVISO
Laboratorio Libero

E' possibile fare laboratorio libero nell'aula informatica del Dipartimento (NON a via Tiburtina) sita al secondo piano dell'Edificio Fermi.
Negli orari elencati vi e' un borsista a fare assistenza. I borsisti non sono tenuti a risolvere problemi di software, possono invece aiutare gli studenti ad avviare i PC e loggarsi.
Si consiglia comunque di consultare il sito del Dipartimento al link "Aule di Dipartimento - Piano di utilizzazione" per verificare la disponibilita' dell'aula. Occorre cercare la voce "Lab.Calcolo" nel menu "Aule".
Giorni e ore:
  • Seguira' avviso




AVVISO
Sono disponibili alcuni testi di esame degli anni scorsi.



AVVISO
Esami - Voti degli appelli precedenti

29/3/2007 , 12/4/2007 , 17/4/2007 , 12/7/2007 , 12/9/2007 , 20/9/2007 , 7/2/2008 , 25/2/2008 , 27/6/2008 , 22/9/2008 , 10/2/2009 , 11/6/2009 , 16/7/2009 , 23/9/2009 , 4/2/2010 , 25/2/2010 , 8/7/2010 , 23/9/2010 , 24/02/2011 , 10/03/2011 , 14/07/2011 , 15/09/2011 , 9/02/2012 , 1/03/2012 , 23/05/2012 (fuoricorso) , 5/07/2012 , 13/09/2012 , 7/02/2013 , 28/02/2013 , 4/07/2013 , 12/09/2013 , 6/02/2014 , 27/02/2014 , 3/07/2014, 29/01/2015, 19/02/2015, 17/09/2015, 28/01/2016, 18/02/2016, 02/02/2017, 23/02/2017, 28/06/2017, 21/09/2017





Lezioni

  1. 26-09 Introduzione (pdf)
  2. 27-09 Linguaggio macchina e linguaggi evoluti. Compilazione
  3. 27-09 Sistema binario. (pdf)
  4. 03-10 Rappresentazione di interi negativi. Complemento a 2. Operatori logici.
  5. 04-10 Introduzione a Linux. Editor e compilatore.(slides pdf) Piccola guida sull'editor EMACS .
  6. 04-10 Rappresentazione di caratteri. Codice ASCII. Rappresentazione di numeri razionali.
  7. 10-10 Variabili e loro rappresentazione (pdf). Dichiarazioni.Tipi, convenzioni per gli identificatori.Elementi sintattici del C.
  8. 11-10 Operatori matematici, relazionali e logici.Priorita' degli operatori. La funzione main. Uso di printf e scanf.
  9. 11-10 Preprocessore C. Direttiva include. Librerie di sistema e libreria matematica.
  10. 17-10 Costrutto if e else. Cicli: costrutti while e do{...}while.
  11. 18-10 Costrutto for. Il Fattoriale.
  12. 18-10 Ricerca di numeri primi.
  13. 25-10 Arrays: dichiarazioni, assegnazioni, utilizzo. Bubblesort.
  14. 25-10 Generazione di numeri Random. Uso di rand() lrand48(). Operatore di cast.
  15. 31-10 Array multidimensionali. Stringhe come Array di caratteri. Il terminatore '\0'. Uso di getchar e putchar.Correzione di esercizi.
  16. 8-11 Introduzione ai puntatori.Puntatori: definizione, uso (pdf).
  17. 8-11 Puntatori: applicazione agli array. Aritmetica dei puntatori.
  18. 14-11 Funzioni: dichiarazione, definizione, return, visibilita'
  19. 15-11 Funzioni: parametri di input, passaggio per valore, passaggio di array via puntatori
  20. 15-11 Funzioni: prototipi di funzioni con argomento puntatori. Scope e hiding
  21. 21-11 Files: accesso, lettura e scrittura formattata.
  22. 22-11 Files: accesso, lettura e scrittura binaria.Puntatori a puntatori.
  23. 22-11 Puntatori ad array multidimensionali.Passaggio di array multidimensionali a funzioni.
  24. 28-11 Puntatori a funzione. Funzioni di funzione. La derivata.Considerazioni numeriche sulla derivata (pdf).
  25. 29-11 Problemi di approssimazione.
  26. 29-11 Algoritmo di Kahan(pdf).
  27. 5-12 Metodo dei minimi quadrati. Cenni sull'interpolazione
  28. 6-12 Metodi di integrazione. Integrazione con il metodo MC(pdf).
  29. 6-12 Codice per integrazione MC. Calcolo di volumi complessi.




Esercitazioni di Laboratorio

I Esercitazione - 5 Ottobre 2017

La I esercitazione ha come scopo quello di imparare l'uso dell'editor EMACS e il modo di compilare ed eseguire un programma in C. Come esempio viene dato il seguente programma di conversione tra gradi Celsius e gradi Fahrenheit. (Listato 3.7 del libro) Note sulla compilazione e un altro esempio di programma sono contenuti in questo file. Note su Linux sono disponibili nelle slides (pdf).

II Esercitazione - 13 e 16 Ottobre 2017

La II esercitazione richiede di scrivere un programma sul moto di un proiettile (rivolta soprattutto a uso di scanf, printf e if).

III Esercitazione - 20 e 23 Ottobre 2017

La III esercitazione richiede di scrivere un programma che calcoli la radice quadrata secondo il metodo iterativo di Newton (esempio di soluzione ) e uno sulla decomposizione in quadrati (esempio di soluzione )

IV Esercitazione -27 e 30 Ottobre 2017

La IV esercitazione verte sull'uso degli array (game of life).

V Esercitazione - 3 e 6 Novembre 2017

La quinta esercitazione verte sull'uso degli array (frequenze) (Testo in pdf).

VI Esercitazione - 10 e 13 Novembre 2017

La VI esercitazione verte sull'uso di funzioni con array (scimmia) (testo del problema in formato PDF)

VII Esercitazione - 17 e 20 Novembre 2017

La VII esercitazione verte sull'uso di funzioni con array (il pendolo) (testo del problema)(in formato PDF)

VIII Esercitazione - 24 e 27 Novembre 2017

La VIII esercitazione verte sull'uso di funzioni con array bidimensionali (fragole) (testo del problema)(in formato PDF)

IX Esercitazione - 1 Dicembre 2017

La IX esercitazione e' valutata (testo del problema)(in formato PDF)

X Esercitazione - 15 e 18 Dicembre 2017

La X esercitazione verte sull'integrazione numerica con metodo MC (gaussiana) (testo del problema)(in formato PDF)




Lavoro a Casa
Chi volesse esercitarsi a casa sul proprio computer ha bisogno di un editor e di un compilatore C. Il software necessario dipende dal sistema operativo di cui di dispone.
Chi ha installato una versione di Linux (Debian, Ubuntu, Scientific Linux etc.) in generale dovrebbe avere a disposizione l'editor emacs oppure gedit (o altri equivalenti), e il compilatore gcc.
Chi ha disponibile un sistema Windows (da 7 in poi) deve fare riferimento a questa pagina.
ATTENZIONE ! E' ora possibile usare la macchina virtuale.
TUTTAVIA... molti, soprattutto forniti di Windows10 vedono un errore in esecuzione che si riferisce all'acceleratore VT-X. L'errore e' dovuto a un parametro mal definito nel BIOS.
Tra breve saranno disponibili istruzioni ulteriori per curare il problema.
.





Risorse

Il sistema Linux puo' essere acquistato insieme a riviste su Linux (es. Linux Journal) o scaricato dalla rete (sconsigliato se non si ha una connessione ADSL).


Siti di interesse: