Computational Physics -- Υπολογιστική Φυσική Y0338
This website provides a cloud-based interactive computing environment, for my undergraduate course (3rd semester, obligatory) of Computational Physics Υπολογιστική Φυσική Υ0338, in National and Kapodistrian University of Athens (2019-2020).
By using this custom made interactive environment, the students are be able to study and practice real implementations of the course's material without having the burden to install manually on their own any software in a private computer. The usage of the present computational environment is optional and is only meant to serve those that find it useful. The students are strongly encouraged to create their own favorite environment (C/C++, FORTRAN, Matlab, Java, R, Mathematica, Python, Julia ... you name it) in their personal computer, once they feel ready to do so.
Launch Interactive Computational Environment (no registration needed)
Click on the launch binder button
to launch an interactive Python3 environment and play with templates and examples of computational algorithms taught in the course. Warning the launching of the interactive environment takes approximately *~0.5-5 minutes, depending on the load, so be patient!
Or if you have a Google account (free registration)
- main repository in github: theofil/CompPhysics
- code examples: CompPhysics/examples
- problems: CompPhysics/problems
The code in CompPhysics/examples is provided for demonstration purposes and is written having in mind three principles:
- reflect the math forms taught symbolically as-they-appear in the lecture
- code length should be minimal and take least effort to comprehend
- assume little, or zero programming skills
That is to say, the code is not always optimized having in mind efficiency of execution. Fine tuning of the execution flow, while important for speed and precision, often obscures transparency at first site. Instead, it is purposefully attempted to just demonstrate the core ideas of the underline algorithms, leaving higher order optimization (which could be problem-specific) to be discussed in class or in homework assigments.
Python packages used in scientific computing and data science are taught through examples. The dependencies are kept to a good minimum:
- Python 3.7
- jupyter notebooks
- google colab
About the Author
Konstantinos Theofilatos is an Associate Professor of Physics in National and Kapodistrian University of Athens. This website was created on July 2019 and is updated at best effort basis.