Code |
14961
|
Year |
3
|
Semester |
S2
|
ECTS Credits |
6
|
Workload |
TP(60H)
|
Scientific area |
Physics
|
Entry requirements |
None
|
Learning outcomes |
Familiarize students with the resources and practices currently used in the computational approach to scientific problems. At the end of this CU, the student should be able to: - identify problems that can be computed and choose numerical formulations appropriate to that resolution; - implement computational approaches to scientific problems in modern environments, including multi processor systems, computer aggregates and distributed systems (cloud computing), using compiled languages like C++ or interpreted languages as python and octave. - use distributed version management systems in individual and collaborative projects.
|
Syllabus |
1. Programming languages and modern interactive computing environments. 2. Types of multi-processor systems and tools for their use in scientific calculation. 3. Use of distributed version management systems. 4. Ordinary differential equations and evolution of point particle systems. Runge-Kutta methods: movement of projectiles with atmospheric resistance, gravitational systems of many bodies, systems of coupled oscillators. 5. Partial derivative equations and classical field dynamics. Gaussian methods, finite volume and finite difference method, spectral methods: Poisson equation, diffusion equation, wave equation, Schrodinger equation, elasticity and fluid dynamics. 6. Monte-Carlo methods. Ising model, light propagation in turbid environments.
|
Main Bibliography |
G. Wilson, et al (2014). Best Practices for Scientific Computing, PLoS Biol 12(1) S Sirca, M Horvat (2012). Computational Methods for Physicists, Springer-Verlag W Gropp, E Lusk, A Skjellum (2015). Using MPI: Portable Parallel Programming with the Message-Passing Interface, MIT Press B Chapman, G Jost, R Pas (2007). Using OpenMP: Portable Shared Memory Parallel Programming, MIT Press J Pitt-Francis, J Whiteley (2012). Guide to Scientific Computing in C++, Springer-Verlag J Eaton et al (2019). GNU Octave 5th Edition (https://octave.org/octave.pdf) Python Software Foundation (2019). The Python Tutorial (https://docs.python.org/3/tutorial/index.html) R. Landau (2007). Computational Physics, Whiley-VCH H. Gould, J. Tobochnick (2006). Introduction to Computer Simulation Methods in Physics, Addison Wesley. T. Pang (2006). An Introduction to Computational Physics, Cambridge: Cambridge University Press.
|
Language |
Portuguese. Tutorial support is available in English.
|