3-Calcul Symbolique - 2022
November 17, 2023 | Author: Anonymous | Category: N/A
Short Description
Download 3-Calcul Symbolique - 2022...
Description
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR
Calcul symbolique sous MATLAB
MKHANNAT Mohamed
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
1
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR INTRODUCTION La boîte à outils Symbolic Math Toolbox incorpore le calcul symbolique dans l’environnement numérique de MATLAB.
La boîte à outils Symbolic Math Toolbox fournit les facilités numériques et graphiques de MATLAB avec plusieurs autres types de calcul mathématiques. Vous pouvez faire des calculs mathématiques sans donner de valeur à vos variables.
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
2
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR
Objets symboliques
La boîte à outils de calcul symbolique définit un nouveau type de variable MATLAB appelé objet symbolique. La boîte à outils utilise des objets symboliques pour représenter
des variables symboliques, des expressions symboliques et des matrices symboliques. Les calculs symboliques sont effectués par Maple.
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
3
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Supposons que l’on veuille créer la fonction suivante f = ax^3 + bx^2 + c. On peut utiliser la méthode suivante syms a b c x puis écrire f = a*x^3 + b*x^2 + c
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
4
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Dérivation Création de l’expression symbolique : syms a x f = sin(a*x) Calcul de sa dérivée diff(f) calcule la dérivée de f par rapport à x : ans = cos(a*x)*a Pour calculer la dérivée par rapport à a : diff(f,a) qui donne ans = cos(a*x)*x Pour calculer la dérivée seconde par rapport à x et a : diff(f,2)ou bien diff(f,x,2)donnent >> diff(f,x,2) ans = -sin(a*x)*aˆ2 >> diff(f,a,2)qui donne la dérivée de f d’ordre n par rapport à x est ans = diff(f,n)ou bien diff(f,x,n) -sin(a*x)*xˆ2
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
5
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Calcul de limites La boîte à outils de Calcul symbolique permet de calculer les limites d’une fonction. Les commandes pour calculer limite d’une fonction au point x=a suit la syntaxe limit(f,a). >> limit(sqrt(x^2-x)-x,inf)
% limite lorsque x tend vers l’infini
ans = -1/2 >>f = (x – 2)/abs(x–2); >> limit(f,x,2,'left') ans = -1
% limite à gauche de x=2
>> limit(f,x,2,'right')
% limite à gauche de x=2
ans = 1
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
6
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Intégration Si f est une expression symbolique,alors int(f) donne l’intégrale indéfinie de f si elle existe.
Exemples syms x n a t b >>int(xˆn) >>int(xˆn,x)
% permettent de calculent 𝑥𝑑 𝑛 𝑥 ou % permettent de calculent 𝑥𝑑 𝑛 𝑥 𝜋/2
>>int(sin(2*x),0,pi/2 )
% permettent de calculer 0
>> int(sin(2*x),x,0,pi/2)
% permettent de calculer 0
sin 2 ∗ 𝑥 𝑑𝑥
𝜋/2
sin 2 ∗ 𝑥 𝑑𝑥
>> syms x n >> int(x^n) ans = piecewise([n = -1, log(x)], [n -1, x^(n + 1)/(n + 1)])
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
7
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR
Résolution d’equations linéaires >> syms x f; f=3*x^2+1; solve(f) ans = -(3^(1/2)*i)/3 (3^(1/2)*i)/3 >> solve('2*x^2+x-4=0') ans = - 33^(1/2)/4 - 1/4 33^(1/2)/4 - 1/4 >> double(ans) ans = -1.6861 1.1861 MKHANNAT Mohamed
% ou subs(ans) ou eval(ans)
Leçon #03 Calcul symbolique
8
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Résolution de système d’equations linéaires Pour résoudre le système d’équation suivant
Sous Matlab on procède comme suit : >> syms x y z w; >> eq1='x+2*y+3*z+w=15'; >> eq2='3*x+y-2*z+2*w=9'; >> eq3='2*x-4*y+5*z+w=2'; >> eq4='-8*z+w=6'; >> [x y z w]=solve(eq1,eq2,eq3,eq4) x= 114/107 y= 203/107 z= -6/107 w= -66/107 >> double([x y z w]) ans = 1.0654 1.8972 -0.056075 -0.61682 MKHANNAT Mohamed
Leçon #03 Calcul symbolique
x+2∗y+3∗z+w=15 3∗x+y−2∗z+2∗w=9 2∗x−4∗y+5∗z+w=2 −8∗z+w=6
9
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Résolution des système d’equations differentielles linéaires
On utilise la syntaxe suivante :dsolve(‘eqn’,‘cond1’, ‘cond2’,…) Lorsqu’on utilise dsolve, les dérives sont indiquées par D . Exemple la derivée premiere d’une fonction f est indiqué par Df et la dérivée n iéme est indiquée par Dnf. exemple y′′+2y′=5 sin( 3x) 𝑑𝑓 = −4𝑓 + sin(𝑡) 𝑑𝑡
>> dsolve('D2y + 2*Dy = 5*sin(3*x)') ans = C4 - (5*sin(3*x))/4 + (5*t*sin(3*x))/2 + C5/exp(2*t)
>> dsolve('Df=-4*f+sin(t)') ans = (4*sin(t))/17 - cos(t)/17 + C2/exp(4*t) Equation differentielle avec conditions initiales 𝑑2 𝑦 𝑑𝑡 2
− 4𝑦 = 0
, 𝑦 0 = 1 , 𝑦 ′ (0) =1
>> dsolve('D2y-4*y=0','y(0)=-4','Dy(0)=1') ans = - 9/(4*exp(2*t)) - (7*exp(2*t))/4 MKHANNAT Mohamed
Leçon #03 Calcul symbolique
10
IFT-1903 INFORMATIQUE POUR L’INGÉNIEUR Résolution des système s d’equations différentielles linéaires
2x′′ + x′+ 2x = 0 ቐ 𝑑𝑦 = − y− 4x
Avec les conditions initiales:
x(0) = 1, y(0) =2 , x′(0 ) = -1
𝑑𝑡
>> s = dsolve('2*D2x+Dx+2*x = 0','Dy = –y– 4*x','x(0)=1','Dx(0)=0',‘y(0)=2') >> [x y]=dsolve('2*D2x+Dx+2*x = 0','Dy = -y-4*x','x(0)=1','Dx(0)=0','y(0)=2') x= cos((15^(1/2)*t)/4)/exp(t)^(1/4) + (15^(1/2)*sin((15^(1/2)*t)/4))/(15*exp(t)^(1/4)) y= 10/(3*exp(t)) - (4*cos((15^(1/2)*t)/4)*exp(t)^(3/4))/(3*exp(t)) (4*15^(1/2)*sin((15^(1/2)*t)/4)*exp(t)^(3/4))/(5*exp(t))
MKHANNAT Mohamed
Leçon #03 Calcul symbolique
11
View more...
Comments