- Oggetto:
- Oggetto:
Tecniche di calcolo per la fisica
- Oggetto:
Applications of Computational techniques to Physics
- Oggetto:
Anno accademico 2023/2024
- Codice dell'attività didattica
- MFN0575
- Docente
- Fabrizio Umberto Bianchi (Titolare del corso)
- Corso di studi
- 008703 Laurea in Fisica
- Anno
- 3° anno
- Periodo didattico
- Primo semestre
- Tipologia
- C=Affine o integrativo
- Crediti/Valenza
- 6
- SSD dell'attività didattica
- FIS/01 - fisica sperimentale
- Modalità di erogazione
- Tradizionale
- Lingua di insegnamento
- Italiano
- Modalità di frequenza
- Facoltativa
- Tipologia d'esame
- Prova pratica
- Prerequisiti
-
Conoscenza della parte procedurale del linguaggio c++
Knowledge of the procedural part of c++ programming language - Propedeutico a
-
- Oggetto:
Sommario insegnamento
- Oggetto:
Obiettivi formativi
Il corso ha l'obiettivo formativo principale di permettere agli studenti di Fisica di essere in grado di implementare in linguaggi orientati agli oggetti un algoritmo per la risoluzione di un problema fisico. Questa formazione potrà essere sfruttata dall'allievo sia per i successivi corsi di esperimenti e lo svolgimento della tesi, che spesso richiede lo sviluppo di software o l'integrazione con software esistente, sia in campo professionale dato che spesso i laureandi di Fisica trovano un facile sbocco lavorativo nello sviluppo di software complesso.
Il linguaggio scelto e' il c++, ma le tecniche presentate possono essere implementate anche in altri linguaggi.
The course has the main educational goal to enable the students of Physics to implement, using computer languages Object Oriented, an algorithm to solve a physical problem. This education can be used by the student both concerning the following experimental courses and the writing of the thesis, which often requires the development of software or integration with an already existing software, and concerning the working area since the graduands students of Physics often get easy job opportunities in the development of complex softwares.
The used langualge is c++.
- Oggetto:
Risultati dell'apprendimento attesi
Conoscenza e capacita' di comprensione:
Conoscenza e comprensione della sintassi del linguaggio c++ e dei principi della programmazione Object Oriented. Conescenza elementare del linguaggio UML.
Capacita' di applicare conoscenza e comprensione:
Capacita' di utilizzare la conoscenza della sintassi del c++ nella scrittura di programmi in tale linguaggio.
Capacita' di risolvere problemi di matematica e fisica con un approccio Object Oriented.
Capacita' di comunicare ed illustrare il modello usato per risolvere un problema, motivando le scelte fatte, usando i metodi del linguaggio UML.
Knowledge and understanding:
Knowledge and understanding of the sintax of the c++ programming languange and of the principles of the Object Oriented Programming. Elementary knowledge of the UML languange.
Skills to apply knowledge and understanding:
Applying the knowledge of c++ sintax to writing programs in that language.
Solving problems in mathematics and physics with an object oriented approach.
Communicating and describing the model that was used to solve a problem, defending the used approach with the techniques of the UML language
- Oggetto:
Modalità di insegnamento
Il corso verra' erogato in presenza
The lectures will be given in person.
- Oggetto:
Modalità di verifica dell'apprendimento
Prova pratica a distanza
Practical Examination in remote
- Oggetto:
Attività di supporto
- Oggetto:
Programma
C++ Introduzione alla programmazione orientata agli oggetti - Nozioni di base ed avanzate del linguaggio C++. Classi, ereditarieta' e polimorfismo. Standard Template Library. Unified modelling language. Patterns: singleton, factory, adapter, composite, strategy, visitor.
C++ Introduction to Object Oriented Programming. Introduction to the C++ language. Basic and advanced topics. Classes, Inheritance, Polymophism. Standard Template Library. Unified modelling language. Patterns: singleton, factory, adapter, composite, strategy, visitor.
Testi consigliati e bibliografia
- Oggetto:
- C++
H Deitel and P Deitel C++ How to Program 4th Edition - Prentice Hall
William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery NumericalRecipesin in C++ The Art of Scientific Computing 2nd Edition Cambridge University Press, 2002
- UML
M.Fowler UML Distilled AddisonWesley2001
- Pattern
Gamma, Helm, Johnson, Vlissides Design Patterns, Pearson Addison Wesley, ISBN: 978-88-7192-150-1
- C++
H Deitel and P Deitel C++ How to Program 4th Edition - Prentice Hall
William H. Press, Saul A. Teukolsky, William T. Vetterling, Brian P. Flannery NumericalRecipesin in C++ The Art of Scientific Computing 2nd Edition Cambridge University Press, 2002
- UML
M.Fowler UML Distilled AddisonWesley2001
- Pattern
Gamma, Helm, Johnson, Vlissides Design Patterns, Pearson Addison Wesley, ISBN: 978-88-7192-150-1
- Oggetto:
Note
- Oggetto: