Informatique Cours 13 10/12/2001 Calcul scientifique Fonctionnement des ordinateurs
Calcul scientifique Ordinateurs analogiques Ordinateurs digitaux Calcul symbolique Calcul numérique
Calcul scientifique Ordinateurs analogiques Exemple: solution de l’équation du mouvement
Calcul scientifique Ordinateurs analogiques On dispose de circuits électroniques (amplificateurs) qui, lorsqu’on y « injecte » un signal, donnent en sortie, ce signal Multiplié par une paramètre ajustable Dérivé par rapport au temps Intégré sur le temps Etc.
Calcul scientifique Ordinateurs analogiques On peut connecter entre eux de tels circuits dans une boucle où la sortie d’un circuit est proportionnelle à k*x (où x est un courant) , sortie qui est elle même l’entrée d’un circuit qui donne un courant proportionnel à la dérivée seconde de x. Si le circuit se stabilise, on a « la solution » c’est-à-dire x en fonction du temps, x qu’il « suffit » de mesurer
Calcul scientifique Ordinateurs digitaux Calcul symbolique Logiciels commerciaux Maple Mathematica Calcul numérique
Calcul scientifique Ordinateurs digitaux Calcul symbolique Maple - ! (factorielle) - iprime (facteurs premiers) - evalf (évaluation) - sum - graphiques - manipulations algébriques (expand, factor) - fonctions - expressions - procédures - équations - systèmes d’équations - développements en série - dérivées - intégrales - calcul matriciel Calcul numérique
Calcul scientifique Calcul numérique Evaluation de fonctions Exemple: e-x
Calcul scientifique Calcul numérique Evaluation de fonctions Récurrences
Calcul scientifique fonction expof (x: réel; n: entier): réel; {n est le nombre de termes évalués} constante précision = 1.0-6 variables s, t: réels; corps s 1 t -x n 2 tant que abs(t) > précision * s faire s s + t t -t * x / n n n + 1 ftant expof s fin fonction réel ? étendu ? 1_ expo ƒ
Calcul scientifique Calcul numérique Equations différentielles Exemple: équations du mouvement Masse attachée à un ressort:
Calcul scientifique Calcul numérique Masse attachée à un ressort:
Calcul scientifique Calcul numérique Masse attachée à un ressort:
Calcul scientifique Masse attachée à un ressort: v 0.0 x 1.0 t 0.0 écrire (t , v, x); v v - k * x * dt / 2 x x + v * dt t t + dt pour i de 2 à 628 faire v v - k * x * dt x x + v * dt t t + dt; fpour 2_ oscillateur ƒ
Calcul scientifique Calcul numérique autres exemples: 3_ oscillateur ƒ
Calcul scientifique autres exemples: Proies - prédateurs Répéter Aold A Bold B A A + (-alpha * A + beta * B * A) * dt B B + (gamma * B - beta * Aold * B) * dt t t + dt; écrire(i, t, A, B ) i i + 1; jusque i = 3000 dA/dt = -alpha * A + beta * B * A dB/dt = gamma * B - beta * A * B 4_ proies-prédateurs ƒ
Calcul scientifique Calcul numérique Intégration 3_ oscillateur ƒ
Calcul scientifique Calcul numérique Intégration
Calcul scientifique Calcul numérique Intégration
Calcul scientifique Intégration
Calcul scientifique Intégration
Calcul scientifique Intégration
Calcul scientifique Intégration s 0 pour k de 1 à N-1 faire s s + fi + fi+1 fpour s s * x * 1/2
Calcul scientifique Intégration
Calcul scientifique Intégration s 0 pour k de 1 à N par pas de 2 faire s s + (fi + 4 fi+1 + fi+2) fpour s s * x * 1/3 5_ erreurs ƒ
Fonctionnement des ordinateurs Inverseur AND OR (et ou) Flip flop Demi-additionneur Addition de nombres codés sur 4 bits Accès au bus
Inverseur
Circuit ET (AND)
Circuit NON ET (NAND)
Circuit bistable
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Circuit bistable Niveaux logiques:
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur Niveaux logiques: addition de 2 bits
Demi-additionneur: schéma
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Additionneur: 2 nombres de 4 bits
Accès au bus (de données/ d’adresses)
Fortran Structure générale Tri par insertion linéaire (10 données) GNU Oscillateurs LS Fortran