README.md 2.95 KB
Newer Older
paugier's avatar
paugier committed
1
# Introduction to Scientific Computing (Master 2 EFM)
paugier's avatar
paugier committed
2

paugier's avatar
paugier committed
3
4
5
6
7
## Slides on the web

The slides of this course are hosted
[here](https://meige-legi.gricad-pages.univ-grenoble-alpes.fr/scientific-computing-m2-efm/).

paugier's avatar
paugier committed
8
9
## Content

paugier's avatar
paugier committed
10
11
During the first sessions, we will present an introduction on scientific
computing and programming:
paugier's avatar
paugier committed
12
13
14
15
16
17
18
19
20
21
22

- Computers to compute (CPU, memories, GPU, clusters)
- Numbers in computers
- Programming languages
- Difference open-source / close-source
- Operating systems and importance of Linux for scientific computing
- Install a good environment, example of Conda
- Versioning and Gitlab (https://gricad-gitlab.univ-grenoble-alpes.fr)

We will study some basics on Linux and Python for scientific computing.

paugier's avatar
paugier committed
23
Some sessions will be dedicated to practical exercises on
paugier's avatar
paugier committed
24

paugier's avatar
paugier committed
25
26
27
28
29
30
- Computation of integrals,
- Finite Difference methods,
- Gradient descent and
- Machine learning.

You will also have to work for this course on a "personal project" on an open
paugier's avatar
paugier committed
31
32
33
subject (see
[mini-projects.md](https://gricad-gitlab.univ-grenoble-alpes.fr/meige-legi/scientific-computing-m2-efm/-/blob/master/mini-projects.md)).
One session will be dedicated to work on this project.
paugier's avatar
paugier committed
34

35
36
37
38
39
40
41
42
43
## The teachers

- Pierre Augier: researcher at [LEGI](www.legi.grenoble-inp.fr) studying
geophysical turbulence with experiments and numerical simulations. Maintainer
of the [FluidDyn project](https://fluiddyn.readthedocs.io).

- Enzo Le Bouedec: PhD at LEGI on "Pollution in the Grenoble valley: a
weather-type approach".

paugier's avatar
paugier committed
44
45
## Setup the environment for this course

paugier's avatar
paugier committed
46
47
48
49
50
51
One of the first step is to setup a good computing environment. However, it may
be better to first read [this introduction on Linux and
Bash](https://meige-legi.gricad-pages.univ-grenoble-alpes.fr/scientific-computing-m2-efm/001_intro_bash.slides.html)
to understand what we are going to do.

The installation instructions are in this file:
paugier's avatar
paugier committed
52
[install.md](https://gricad-gitlab.univ-grenoble-alpes.fr/meige-legi/scientific-computing-m2-efm/-/blob/master/install.md).
paugier's avatar
paugier committed
53
Note that you can copy/paste commands!
paugier's avatar
paugier committed
54
55
56
57

## Clone this repository

Clone the repository with Mercurial (and the extension hg-git, as explained
paugier's avatar
paugier committed
58
[here](https://fluiddyn.readthedocs.io/en/latest/mercurial_heptapod.html)):
paugier's avatar
paugier committed
59
60
61
62
63

```
hg clone https://gricad-gitlab.univ-grenoble-alpes.fr/meige-legi/scientific-computing-m2-efm.git
```

paugier's avatar
paugier committed
64
65
or with ssh (so you need to create a ssh key and copy the public key on
https://gricad-gitlab.univ-grenoble-alpes.fr):
paugier's avatar
paugier committed
66
67
68
69

```
hg clone git@gricad-gitlab.univ-grenoble-alpes.fr:meige-legi/scientific-computing-m2-efm.git
```
paugier's avatar
paugier committed
70
71
72
73
74
75
76
77
78
79

## Play with (or display) the notebooks

To modify the notebooks:

```
cd ipynb
jupyter-lab
```

80
To see the presentations made from the notebooks:
paugier's avatar
paugier committed
81
82
83
84

```
make presentations
make serve
paugier's avatar
paugier committed
85
```
paugier's avatar
paugier committed
86

paugier's avatar
paugier committed
87
## Go further
paugier's avatar
paugier committed
88
89
90
91
92

If you feel that you need more advanced content, you can work on this [Python
HPC
training](https://gricad-gitlab.univ-grenoble-alpes.fr/python-uga/training-hpc)
(the associated slices are
paugier's avatar
paugier committed
93
[here](https://python-uga.gricad-pages.univ-grenoble-alpes.fr/training-hpc/)).