TP 14 : Présentation générale de Scilab Remarque. Le logiciel S CILAB est un logiciel spécialisé dans le calcul numérique. Conformément au programme, la partie calcul numérique (correspondant au second semestre) peut être mise en œuvre aussi bien avec P YTHON qu’avec S CILAB. On donne ici une présentation rapide de S CILAB. Mise en place de l’environnement Scilab • Lancer S CILAB ; • Fermer le Navigateur de fichiers et l’Historique des commandes ; ne conserver que les fenêtres Console et Navigateur de variables. Premiers calculs avec la console Scilab --> --> --> --> --> --> --> --> --> --> --> 2+%pi↵ (1+%e)/2↵ %eps↵ 1+%eps↵ %i^2↵ (1-%i)^2↵ exp(3)↵ %e^3↵ cos(%pi)↵ sin(%pi)↵ 2/3↵ a=2 a=a+1 A=2*%pi a+A ans+a a=1.2e-3 a=rand() ⋄ Entrer les commandes ci-contre dans la console et observer les résultats obtenus. Remarques. • Le symbole --> est l’invite de la console. Il ne faut pas le taper et par la suite, on ne l’indiquera plus. • Le symbole ↵ désigne la touche Entrée, par la suite on ne l’indiquera plus non plus. • La variable ans contient le résultat du dernier calcul. B Noter que la division est la vraie division (exacte). B Le calcul de puissances se fait avec l’opérateur ^ (contrairement à ** en P YTHON). ⋄ Entrer les commandes ci-contre dans la console et observer les résultats obtenus. Remarques. • On peut supprimer la variable a en écrivant clear a. On supprime toutes les variables en écrivant clear sans plus de précision. B S CILAB fait la distinction entre majuscules et minuscules (tout comme P YTHON). http://alexandre.boisseau.free.fr/Prive/WWW/InfoPCSI/tp14.pdf x=[1 2 3 4] x=[1,2,3,4] y=[1;2;3;4] x' y' x(1) y(1) x(2)=3 y(2)=3 x(2:3) z=[1:2:9] t(1)=1 t(20)=1 t length(x) length(t) Construction de vecteurs / listes ⋄ On considère : x = [ 1 2 3 4 ] ∈ M1,4 (R); y= 2 3 4 0 t = ... ∈ M20,1(R) ∈ M4,1 (R); 0 1 Entrer les commandes ci-contre dans la console et observer les résultats obtenus. Remarques. • La virgule (ou un espace) sépare deux coefficients sur une même ligne, le point virgule permet de passer à la ligne suivante. • La transposée de x (notation mathématique x ⊤ ) est notée x'. • La construction a:k:b construit la ligne dont les coefficients sont a, a + k, a + 2k, etc. tant que les valeurs obtenues sont É b. B Contrairement à P YTHON, les numérotations commencent à 1. eye(4,4) ones(4,2) zeros(4,2) A=[1,2,3;4,5,6;7,8,9] A(2,3) A(2,:) A(:,3) A(2:3,2:3) A' zeros(A) ones(A) eye(A) B=rand(A) size(A) x=[1;1] A=[1,2;3,4] A*x A*A A.*A A^2 A.^2 eye(2,2)./A A+1 x+1 x.^2 inv(A) A^(-1) ·1 ¸ z = [ 1 3 5 7 9 ] ∈ M1,5 (R) 1 Construction de matrices / tableaux ⋄ On considère A= h1 2 3i 456 789 ∈ M3 (R) Entrer les commandes ci-contre dans la console et observer les résultats obtenus. Remarques. • Le coefficient (i , j ) de A est noté A(i,j). • La notation A(i,:) désigne la i -ème ligne de A et A(:,j) est la j -ème colonne. B Contrairement à P YTHON, les numérotations commencent à 1. Calculs matriciels ⋄ Entrer les commandes ci-contre dans la console et observer les résultats obtenus. Remarques. B L’opération .* est le produit terme à terme, l’opération * désigne le vrai produit matriciel. B De même, A.^2 représente A.*A et A^2 correspond à A*A. B La notation ./ est la division terme à terme. B Pour une matrice A, la notation A +1 n’a pas de sens mathématique (elle n’est pas homogène) mais pour S CILAB elle représente la matrice obtenue en ajoutant 1 à chaque coefficient de A. Application aux systèmes linéaires Exercice 1 : On considère le système : x−y +z−t =1 x + y − z − t = −1 x+y +z−t =0 x−y −z+t =2 (S ) A ∈ M4 (R) et B ∈ M4,1(R) telles que le système (S ) s’écrive (a) Définir dans S CILAB les·matrices x¸ AX = B en posant X = yz . t (b) Définir dans S CILAB la matrice U = A −1 . (c) Calculer avec S CILAB les produits AU et U A. (d) Résoudre le système (S ). Calculs avec des nombres complexes ⋄ Entrer les commandes ci-dessous dans la console et observer les résultats obtenus. z1^2 real(z1) imag(z1) abs(z1) conj(z1) z1=2+%i z2=1+2*%i z1+z2 z1*z2 z1/z2 exp(%pi) exp(%i*%pi/2) %e^(%i*%pi/2) Utilisation de SciNotes • Aller dans le menu Applications et choisir SciNotes. • Dans la fenêtre S CI N OTES, entrer le programme ci-contre ; • Dans le menu Fichiers, choisir Enregistrer le fichier dans... et enregistrer le fichier dans le répertoire TPinfo, par exemple sous le nom dessin_suite.sce ; • Dans le menu Exécuter, choisir Enregistrer le fichier et exécuter (enregister le fichier dans le répertoire TPinfo, par exemple sous le nom dessin_suite.sce) ; • On doit alors obtenir une représentation graphique du type : function y=u(n) y=1 for k=1:n y=(y+1)^0.5 end endfunction clf() plot(0:10,feval(0:10,u),'bo') title("Suite u") xlabel("n") ylabel("u") Suite u 1.7 1.65 1.6 1.55 1.5 1.45 u 1.4 1.35 1.3 1.25 1.2 1.15 1.1 1.05 1 0 1 2 3 4 5 n 6 7 8 9 10
© Copyright 2025 ExpyDoc