Vai al contenuto principale
Oggetto:
Oggetto:

Introduction to Scientific Programming (in Python)

Oggetto:

Advanced Theory and Simulation

Oggetto:

Academic year 2020/2021

Teacher
Prof. Alessandro Erba (Titolare del corso)
Teaching period
To be defined
Type
Basic
Credits/Recognition
5
Course disciplinary sector (SSD)
CHIM/02 - chimica fisica
Delivery
E-learning
Language
English
Attendance
Obligatory
Type of examination
Practice test
Oggetto:

Sommario del corso

Oggetto:

Course objectives

Computer programming skills have nowadays become part of basic education. This course, which assumes no prior knowledge about programming, aims at providing an introduction to the main aspects of scientific programming. In particular, the high-level Python programming language will be used, which i) is one of the most popular languages worldwide (with applications ranging from software, web and internet development, to scientific and numeric computing, data anlaysis and plotting, game development, etc.), ii) is characterized by a simple and clear syntax, and iii) is thus particularly well suited for learning scientific programming as a starting point.

Oggetto:

Results of learning outcomes

By the end of the Course, the students will:

- Have a basic understanding on how a computer program works;

- Have a basic knowledge about the main ingredients of most programming languages;

- Be able to read and understand basic programs written in Python;

- Be able to search the internet for Python scripts to integrate their own;

- Be able to write from scratch simple programs in Python;

- Be able to plot data and produce high-quality plots with MatPlotLib

Oggetto:

Course delivery

This year, the Course will be held remotely (i.e. the students will be connected from their own laptops or PCs from home/office/pub).

Lessons will be "live" and attendance of at least 70% is mandatory. This means that, out of a total of 10 lessons, each student is allowed to miss a maximum of 3 lessons.

Lessons will also be rocorded and links inserted on this web-site. 

Students who are interested in attending the Course must register on-line so that the teacher will be able to contact them via e-mail with all necessary information: links to lessons, scripts, slides, etc.

Before the beginning of the Course, all registered students will get an e-mail with detailed instructions on how to download and install the required software on their computers.

NOTE: this is a programming class, so students must be connected with their PCs or laptops (not with their phones) in order to be able to use the software and thus to be actively involved.

 

TIME TABLE of LESSONS

 

First Week

1) Thursday November 5 2020, h: 11-13

Second Week

2) Wednesday November 11 2020, h: 11-13

3) Friday November 13 2020, h: 11-13

Third Week

4) Thursday November 19 2020, h: 11-13

Fourth Week

5) Wednesday November 25 2020, h: 11-13

6) Friday November 27 2020, h: 11-13

Fifth Week

7) Thursday December 3 2020, h: 11-13

Sixth Week

8) Wednesday December 9 2020, h: 11-13

9) Friday December 11 2020, h: 11-13

Seventh Week

10) Thursday December 17 2020, h: 11-13

 

 

Oggetto:

Program

 The course will cover the following topics:

Introduction to Programming:

-    Relevant components of a computer (CPU, RAM)

-    Source code, programming language, compiling/interpreting the code


Introduction to Python:

-    Storing data in memory (name, type and value of a variables)

-    Variable types (numerical, strings, Boolean, lists)

-    Elements of binary representation (precision of real floating point numbers)

-    Definition and use of mathematical functions

-    Properties of Strings

-    Properties of Lists

-    Type of operators

-    Flow control structures: iterations and decision-making (loops, if-statements)

-    Handling input/output files

Introduction to NumPy:

-    Introducing arrays

-    Numerical operations on arrays

Introduction to MatPlotLib:

-    Simple Line Plots

-    Plot editing

-    Sub-plots

-    2D maps and 3D surfaces

-    Histograms

-    Plotting data from a file

Introduction to SciPy:

-    Optimization and Minimization Algorithms (Least-square fitting, etc.)

-    Interpolation (1D, Multivariate data, Spline, etc.)

Suggested readings and bibliography



Oggetto:

Class schedule

Content-type: text/html; charset=UTF-8 This module is not available - PhD in Chemical and Materials Sciences - Università degli Studi di Torino Vai al contenuto principale

This module is not available

The Application 'lezioni' is not available.
For more information contact portale-supporto@unito.it
Oggetto:
Last update: 20/01/2021 09:24
Location: https://dott-scm.campusnet.unito.it/robots.html
Non cliccare qui!