{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Table of contents.ipynb\n", "* [ma1 Jupyter](ma1%20Jupyter.ipynb)\n", " - Using Jupyter\n", " - Cell manipulation\n", " - Configuration\n", " - IPython\n", " - Completion and help\n", " - Shell under IPython\n", " - Magic commands\n", "* [ma1 np01 Numpy Introduction](ma1%20np01%20Numpy%20Introduction.ipynb)\n", " - NumPy - N-dimensional Array manipulations library\n", " - Creating an array\n", " - By redefining its shape\n", " - Mixing values\n", " - Basic Operations\n", " - Browse an array\n", " - Think vector\n", "* [ma1 np02 Filtres](ma1%20np02%20Filtres.ipynb)\n", " - Filter by indices\n", " - Logical filters\n", " - A filter = a logical condition\n", " - `where` to handle non-filter values\n", " - Update a table with a filter\n", "* [ma1 np03 Manipulations](ma1%20np03%20Manipulations.ipynb)\n", " - The axes\n", " - Arranging a table\n", " - Reorder axes\n", " - Changing the order of array elements\n", " - Aggregation\n", " - Concatenation\n", " - Stacking\n", " - Splitting\n", " - From Python to Numpy\n", " - Pandas too\n", "* [ma1 np05 Notation Einstein](ma1%20np05%20Notation%20Einstein.ipynb)\n", " - Introduction to Einstein Notation\n", " - Practical Application\n", "* [ma1 np06 Linalg pour le calcul matriciel](ma1%20np06%20Linalg%20pour%20le%20calcul%20matriciel.ipynb)\n", " - Linalg (linear algebra)\n", " - Basic operations\n", " - Extraction\n", " - Matrix operations\n", "* [ma1 np90 petits exercices](ma1%20np90%20petits%20exercices.ipynb)\n", " - Numpy - Exercises\n", " - Square Matrix\n", " - Vector Norm\n", " - Sub-Matrix\n", " - Random Vector\n", " - Trace\n", " - Matrix of Multiples of 3\n", " - Count of 9s\n", " - Column with the Smallest Average\n", " - ChessSum\n", " - 2 Minimums\n", " - Rows in Order\n", " - Unique Values\n", " - Magic Tensor\n", " - Tensor Slices\n", "* [ma20 Rappels sur les matrices](ma20%20Rappels%20sur%20les%20matrices.ipynb)\n", " - Vector\n", " - Matrices and linear maps\n", " - Determinant of a matrix\n", " - Standards\n", " - Norm of a vector\n", " - Norm of a matrix\n", " - Properties\n", "* [ma21 Transformations isometriques](ma21%20Transformations%20isometriques.ipynb)\n", " - Isometric transformations\n", " - Rotation matrix centered at (0,0)\n", " - Properties\n", " - Axial Symmetry\n", " - Translation\n", " - Exercise 1.1\n", "* [ma22 Changement de repere](ma22%20Changement%20de%20repere.ipynb)\n", " - Matrice de passage\n", " - Vecteurs dans le nouveau repère\n", " - Matrice de passage vue comme une transformation\n", " - Points dans le nouveau repère\n", " - Notre souris dans le nouveau repère\n", " - Exercice -- Et l'inverse ?\n", " - Une application linéaire transposée dans le nouveau repère\n", "* [ma24 Vectors propres](ma24%20Vectors%20propres.ipynb)\n", " - $A^n \\textbf{x}$\n", " - Vecteurs propres et valeurs propres\n", " - Le cas des matrices de rotation\n", " - Symétrie axiale horizontale\n", " - Diagonalisation d'une matrice\n", "* [ma25 Drones -- Exercice](ma25%20Drones%20--%20Exercice.ipynb)\n", " - Drone show\n", " - Figure 1\n", " - Figure 2\n", " - Figure 3\n", "* [ma26 Vecteurs propres -- Exercices](ma26%20Vecteurs%20propres%20--%20Exercices.ipynb)\n", " - Cas d'utilisation des valeurs et vecteurs propres\n", " - Fibonnacci\n", " - Google page rank\n", " - Approche itérative\n", " - Un autre approche\n", "* [ma30 ACP](ma30%20ACP.ipynb)\n", " - Principal component analysis (PCA)\n", " - A cloud of dots\n", " - Covariance matrix\n", "* [ma31 Système d'équations](ma31%20Système%20d'équations.ipynb)\n", " - Systèmes matriciels\n", " - Résolution d'un système matriciel\n", " - Méthode du pivot de Gauss\n", " - Complexité du pivot de Gauss\n", " - Décomposition LU (Lower, Upper)\n", " - Gauss Jordan\n", " - Comparaison de la vitesse de méthodes\n", " - Erreurs d'arrondi\n", " - Solution au problème d'arrondi dans le cas du pivot de Gauss\n", "* [ma32 Conditionnement d'une matrice](ma32%20Conditionnement%20d'une%20matrice.ipynb)\n", " - Conditionnement d'une matrice\n", " - Pourquoi ?\n", " - Perturbons la matrice\n", " - Propriétés\n", " - Préconditionnement\n", "* [ma34 ACP -- Exercice](ma34%20ACP%20--%20Exercice.ipynb)\n", " - Exercise: 3D point cloud\n", " - Experience Data\n", " - Calculations to find the characteristics of our cloud\n", "* [ma35 Système matriciel -- Exercices](ma35%20Système%20matriciel%20--%20Exercices.ipynb)\n", " - Vector Programming\n", " - Partial Gaussian pivot method\n", " - Choleski factorization\n", " - Improve Jacobi\n", "* [ma40 Méthodes itératives](ma40%20Méthodes%20itératives.ipynb)\n", " - Numerical simulation\n", " - Iterative Methods\n", " - Jacobi method\n", " - Why does the 2nd case work?\n", " - Calculation time\n", "* [ma41 Convergence de Jacobi avec inertie](ma41%20Convergence%20de%20Jacobi%20avec%20inertie.ipynb)\n", " - Add inertia to Jacobi\n", " - Let's program inertia for Jacobi\n", " - Let's study convergence\n", " - Let's test other matrices with this algorithm\n", " - Exercise 20.1\n", " - Normalize\n", "* [ma42 Surrelaxation pour Gauss-Seidel -- Exercice](ma42%20Surrelaxation%20pour%20Gauss-Seidel%20--%20Exercice.ipynb)\n", " - Exercise ma21\n", " - Gauss-Seidel\n", " - Gauss-Seidel overrelaxation\n", " - Let's program overrelaxed Gauss-Seidel\n", " - The good case\n", " - Study by $w$\n", "* [ma50 Optimisation - Méthode du gradient](ma50%20Optimisation%20-%20Méthode%20du%20gradient.ipynb)\n", " - Optimization problem\n", " - Optimization problem with constraint\n", " - The gradient method\n", " - Study of the convergence of the gradient\n", "* [ma51 x.T A x sur un maillage en Numpy ](ma51%20x.T%20A%20x%20sur%20un%20maillage%20en%20Numpy%20.ipynb)\n", " - Let's calculate ${\\bf x}^T \\, A \\, {\\bf x} $ with Numpy\n", " - Test case with A = 2 Id\n", " - A real case\n", " - Let's optimize\n", " - Using a J function and a loop\n", " - Using `np.tensordot`\n", " - Conclusion\n", "* [ma52 Méthode du gradiant pour système matriciel](ma52%20Méthode%20du%20gradiant%20pour%20système%20matriciel.ipynb)\n", " - Gradient et dérivée\n", "- A x = b seen as an optimization problem\n", " - Calculation of derivative\n", " - Definition\n", " - Calculate the derivative of J along a direction\n", " - A symmetrical\n", " - Gradient and derivative\n", "* [ma53 Notations du produit scalaire](ma53%20Notations%20du%20produit%20scalaire.ipynb)\n", " - Writings of the scalar product\n", " - ${\\bf v} \\,.\\, {\\bf w}$\n", " - ${\\bf v}^T \\, {\\bf w}$\n", " - $<{\\bf v}, {\\bf w}>$\n", "* [ma54 Gradient pour résoudre Ax = b -- Exercice](ma54%20Gradient%20pour%20résoudre%20Ax%20=%20b%20--%20Exercice.ipynb)\n", " - The gradient method to solve A x = b\n", " - Introduce inertia\n", " - Optimal value of µ\n", "* [ma60 Méthode du gradient conjugué](ma60%20Méthode%20du%20gradient%20conjugué.ipynb)\n", " - Conjugate gradient method\n", " - Generate a base of $ℝ^n$\n", " - The $A {\\bf x} = {\\bf b}$ case\n", " - Calculation of $μ^k$\n", " - Property\n", " - 2nd attempt\n", " - Let's work in the base of $\\nabla J({\\bf x}^i)$\n", " - New calculation of μ\n", "* [ma61 Système matriciel non linéaire](ma61%20Système%20matriciel%20non%20linéaire.ipynb)\n", " - Système matriciel non linéaire\n", " - La méthode du point fixe\n", " - La méthode du point fixe pour résoudre $A({\\bf x}) \\, {\\bf x} = {\\bf b}$\n", " - Test\n", " - Appliquons l'inertie\n", " - La méthode de Newton-Raphson\n", "* [ma62 Gradient conjugué -- Exercice](ma62%20Gradient%20conjugué%20--%20Exercice.ipynb)\n", " - Programmer le gradient conjugué\n", " - Comparons avec le gradient simple\n", " - Perfs\n", " - Nombre d'iteration dans les 2 cas\n", " - Un cas réel\n", " - Comparaison gradient simple et conjugué\n", " - Comparaison avec `lin.solve` de Scipy\n", " - Le gradient conjugué de Scipy (avec Lapack)\n", "" ]}], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.7" } }, "nbformat": 4, "nbformat_minor": 1 }