Offerta Didattica

 

FISICA

LABORATORIO INFORMATICO

Classe di corso: L-30 - Scienze e tecnologie fisiche
AA: 2017/2018
Sedi: MESSINA
SSDTAFtipologiafrequenzamoduli
INF/01BaseLiberaLiberaNo
CFUCFU LEZCFU LABCFU ESEOREORE LEZORE LABORE ESE
7070700700
Legenda
CFU: n. crediti dell’insegnamento
CFU LEZ: n. cfu di lezione in aula
CFU LAB: n. cfu di laboratorio
CFU ESE: n. cfu di esercitazione
FREQUENZA:Libera/Obbligatoria
MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli
ORE: n. ore programmate
ORE LEZ: n. ore programmate di lezione in aula
ORE LAB: n. ore programmate di laboratorio
ORE ESE: n. ore programmate di esercitazione
SSD:sigla del settore scientifico disciplinare dell’insegnamento
TAF:sigla della tipologia di attività formativa
TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio

Obiettivi Formativi

Fornire conoscenze su cognizioni e strumenti informatici di base utili nell’ambito dei laboratori di fisica: Introduzione ai sistemi operativi, linguaggi di programmazione e compilatori (c++, fortran), introduzione all'analisi dei dati (rappresentazioni di dati, istogrammi, fit etc), programmazione procedurale e orientata agli oggetti.

Learning Goals

Provide basic knowledge of informatic tools useful in the physics laboratories: Introduction to Operating Systems, program language and compilers (c++, fortran), introduction to data analysis (plot of data, histograms, fit etc), procedural and object oriented programmation.

Metodi didattici

Lezioni frontali sui metodi per tradurre in algoritmi funzionanti le strategie per risolvere problemi pratici, e sulla sintassi per scrivere in modo corretto i codici. Realizzazione al calcolatore di tutti gli esempi trattati durante le lezione.

Teaching Methods

Lessons on the methods to translate the strategies to solve practical problems in algoritm, and the sintax to correctely write the programs. All codes discussed during the lessons will be implemented in the Laboratory.

Prerequisiti

Conoscenze di base di logica e matematica.

Prerequisites

Basic knowledge of logic and mathematics.

Verifiche dell'apprendimento

Verrà richiesto di implementare una serie di programmi in c++, root e fortran capaci di risolvere problemi generali nel campo della fisica. Il codice sarà giudicato per la sua completezza e funzionalità.

Assessment

Students have to implement a c++, root, and fortran codes able to solve a physics problems. The codes will be evaluated taking into account the ability to solve the problem and if they really works.

Programma del Corso

1. Introduzione all'uso del sistema operativo tipo Unix. Istruzioni base per lavorare da terminale, uso delle istruzioni: ls, cd, cp, mkdir, rmdir, rm, gzip, ssh, scp, chmod, chown, cat, paste, awk, gcc, g++, g77, gfortran, make etc; uso degli script utili per l'automatizzazione delle procedure. 2. Fondamenti di Programmazione (linguaggio di riferimento C++): traduzione di una procedura per la risoluzione di un problema pratico in un algoritmo comprensibile ed eseguibile da parte di un calcolatore. Struttura di un programma in C++ (e parallelamente in fortran). Dichiarazione delle variabili numeriche, booleane e caratteri; vettori mono e multi-dimensionali (matrici); operazioni sulle variabili; operazioni di input-output su terminale e file; strutture di controllo; cicli. (sarà mostrata la scrittura equivalente in linguaggio fortran). Gestione dinamica della memoria e puntatori (solo C++). Implementazione di funzioni (routine e subroutine). Passaggio di informazioni alle funzioni \by value" o \by reference". 3. Implementazione di programmi: sommatoria, calcolo di media e deviazione standard, integrale di una funzione, metodi di ordinamento di una lista, ricerca di massimi e minimi relativi e assoluti in funzioni o in liste di numeri. (Tutti i programmi saranno implementati parallelamente in fortran, compilati ed testati). 4. Introduzione alla programmazione orientata agli oggetti: cosa sono le classi e gli oggetti, le loro proprieta' e come si utilizzano. 5. Introduzione all'analisi dati: creazione di un istogramma, operazioni sugli istogrammi, rappresentazioni di dati con i relativi errori (simmetrici o asimmetrici) attraverso punti, spezzata o curva spline su piano. Fit di istogrammi o distribuzione di dati. (Programmi implementati in C++ usando il framework ROOT (sviluppato al CERN). 6. Scrittura di documenti in ambiente LATEX.

Course Syllabus

1. Introduction on Unix-like operative systems. Instruction on how-to-use terminal, instructions like: ls, cd, cp, mkdir, rmdir, rm, gzip, ssh, scp, chmod, chown, cat, paste, awk, gcc, g++, g77, gfortran, make etc; use of script usefull to automating the procedures. 2. Programming fundamentals (reference language is C++): ability to translate the procedures to solve a problem into a working algoritm runnable on a pc. Structure of a C++ program ( in parallel it will be implemented the version in Fortran). Declaration of numericals, booleans and character variables; mono and multi-dimensional array; input-output operation on shell and on file, controll structures, loop. (It will be shown the equivalent in forran). Dynamical memory assignment. Implementation of functions, with values passed by value or by reference. 3) Implementation of algorithm: sum, estimation of average value, standard deviation, intagral of a function, sorting methods, maximum and minimum searches. (All code will be implemented in parallel in fortran, compiled and tested) 4) Introduction to Object Oriented programmation. Class, object, methods. 5. Introduction to data analysis: histograms, operation on histograms, plot, fit methods, data distributions. (Introduction to the use of ROOT (developped at CERN). 6. Use of Latex to write scientific documents.

Testi di riferimento: https://github.com/gmandaglio75/Laboratorio_Informatico_FisUnime Tutorials and suggested websites C++. Fondamenti di programmazione, H.M. Deitel, PJ Deitel, Apogeo

Elenco delle unità didattiche costituenti l'insegnamento

LABORATORIO INFORMATICO

Docente: GIUSEPPE MANDAGLIO

Orario di Ricevimento - GIUSEPPE MANDAGLIO

GiornoOra inizioOra fineLuogo
Martedì 11:00 13:00Edificio A, corpo C - Dipartimento MIFT
Note:
  • Segui Unime su:
  • istagram32x32.jpg
  • facebook
  • youtube
  • twitter
  • UnimeMobile
  • tutti