Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> MATLAB

Maîtriser l'intégration MATLAB : des primitives aux sommes de Riemann

L'intégration traite de deux types de problèmes essentiellement différents.

Les intégrales définies sont utilisées pour trouver l'aire, le volume, le centre de gravité, le moment d'inertie, le travail effectué par une force, et dans de nombreuses autres applications.

Recherche d'intégrale indéfinie avec MATLAB

Par définition, si la dérivée d'une fonction f(x) est f'(x), alors nous disons qu'une intégrale indéfinie de f'(x) par rapport à x est f(x). Par exemple, puisque la dérivée (par rapport à x) de x2 est 2x, nous pouvons dire qu'une intégrale indéfinie de 2x est x2.

En symboles :

f'(x2) = 2x, donc,

∫ 2xdx = x2.

L'intégrale indéfinie n'est pas unique, car la dérivée de x2 + c, pour n'importe quelle valeur d'une constante c, sera aussi 2x.

Cela s'exprime en symboles comme :

∫ 2xdx = x2 + c.

Où, c est appelée une 'constante arbitraire'.

MATLAB fournit une commande int pour calculer l'intégrale d'une expression. Pour dériver une expression pour l'intégrale indéfinie d'une fonction, nous écrivons :

int(f);

Par exemple, de notre exemple précédent :

syms x int(2*x)

MATLAB exécute l'instruction ci-dessus et retourne le résultat suivant :

ans = x^2

Exemple 1

Dans cet exemple, trouvons l'intégrale de quelques expressions couramment utilisées. Créez un fichier script et saisissez le code suivant :

syms x n int(sym(x^n)) f = 'sin(n*t)' int(sym(f)) syms a t int(a*cos(pi*t)) int(a^x)

Lorsque vous exécutez le fichier, il affiche le résultat suivant :

ans = piecewise([n == -1, log(x)], [n ~= -1, x^(n + 1)/(n + 1)]) f = sin(n*t) ans = -cos(n*t)/n ans = (a*sin(pi*t))/pi ans = a^x/log(a)

Exemple 2

Créez un fichier script et saisissez le code suivant :

syms x n int(cos(x)) int(exp(x)) int(log(x)) int(x^-1) int(x^5*cos(5*x)) pretty(int(x^5*cos(5*x))) int(x^-5) int(sec(x)^2) pretty(int(1 - 10*x + 9 * x^2)) int((3 + 5*x -6*x^2 - 7*x^3)/2*x^2) pretty(int((3 + 5*x -6*x^2 - 7*x^3)/2*x^2))

Notez que la fonction pretty retourne une expression dans un format plus lisible.

Lorsque vous exécutez le fichier, il affiche le résultat suivant :

ans = sin(x) ans = exp(x) ans = x*(log(x) - 1) ans = log(x) ans = (24*cos(5*x))/3125 + (24*x*sin(5*x))/625 - (12*x^2*cos(5*x))/125 + (x^4*cos(5*x))/5 - (4*x^3*sin(5*x))/25 + (x^5*sin(5*x))/5 2 4 24 cos(5 x) 24 x sin(5 x) 12 x cos(5 x) x cos(5 x) ----------- + ------------- - -------------- + ------------ 3125 625 125 5 3 5 4 x sin(5 x) x sin(5 x) ------------- + ----------- 25 5 ans = -1/(4*x^4) ans = tan(x) 2 x (3 x - 5 x + 1) ans = - (7*x^6)/12 - (3*x^5)/5 + (5*x^4)/8 + x^3/2 6 5 4 3 7 x 3 x 5 x x - ---- - ---- + ---- + -- 12 5 8 2

Recherche d'intégrale définie avec MATLAB

Par définition, l'intégrale définie est essentiellement la limite d'une somme. Nous utilisons les intégrales définies pour trouver des aires telles que l'aire entre une courbe et l'axe des x et l'aire entre deux courbes. Les intégrales définies peuvent également être utilisées dans d'autres situations, où la quantité requise peut être exprimée comme la limite d'une somme.

La fonction int peut être utilisée pour l'intégration définie en passant les limites sur lesquelles vous voulez calculer l'intégrale.

Pour calculer :

Maîtriser l intégration MATLAB : des primitives aux sommes de Riemann

nous écrivons :

int(x, a, b)

Par exemple, pour calculer la valeur de Maîtriser l intégration MATLAB : des primitives aux sommes de Riemann nous écrivons :

int(x, 4, 9)

MATLAB exécute l'instruction ci-dessus et retourne le résultat suivant :

ans = 65/2

Voici l'équivalent Octave du calcul ci-dessus :

pkg load symbolic symbols x = sym("x"); f = x; c = [1, 0]; integral = polyint(c); a = polyval(integral, 9) - polyval(integral, 4); display('Aire: '), disp(double(a));

Octave exécute le code et retourne le résultat suivant :

Aire: 32.500

Une solution alternative peut être donnée en utilisant la fonction quad() fournie par Octave comme suit :

pkg load symbolic symbols f = inline("x"); [a, ierror, nfneval] = quad(f, 4, 9); display('Aire: '), disp(double(a));

Octave exécute le code et retourne le résultat suivant :

Aire: 32.500

Exemple 1

Calculons l'aire comprise entre l'axe des x, la courbe y = x3−2x+5 et les ordonnées x = 1 et x = 2.

L'aire requise est donnée par :

Maîtriser l intégration MATLAB : des primitives aux sommes de Riemann

Créez un fichier script et saisissez le code suivant :

f = x^3 - 2*x +5; a = int(f, 1, 2) display('Aire: '), disp(double(a));

Lorsque vous exécutez le fichier, il affiche le résultat suivant :

a = 23/4 Aire: 5.7500

Voici l'équivalent Octave du calcul ci-dessus :

pkg load symbolic symbols x = sym("x"); f = x^3 - 2*x +5; c = [1, 0, -2, 5]; integral = polyint(c); a = polyval(integral, 2) - polyval(integral, 1); display('Aire: '), disp(double(a));

Octave exécute le code et retourne le résultat suivant :

Aire: 5.7500

Une solution alternative peut être donnée en utilisant la fonction quad() fournie par Octave comme suit :

pkg load symbolic symbols x = sym("x"); f = inline("x^3 - 2*x +5"); [a, ierror, nfneval] = quad(f, 1, 2); display('Aire: '), disp(double(a));

Octave exécute le code et retourne le résultat suivant :

Aire: 5.7500

Exemple 2

Trouvons l'aire sous la courbe : f(x) = x2 cos(x) pour −4 ≤ x ≤ 9.

Créez un fichier script et écrivez le code suivant :

f = x^2*cos(x); ezplot(f, [-4,9]) a = int(f, -4, 9) disp('Aire: '), disp(double(a));

Lorsque vous exécutez le fichier, MATLAB trace le graphique :

Maîtriser l intégration MATLAB : des primitives aux sommes de Riemann

La sortie est donnée ci-dessous :

a = 8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9) Aire: 0.3326

Voici l'équivalent Octave du calcul ci-dessus :

pkg load symbolic symbols x = sym("x"); f = inline("x^2*cos(x)"); ezplot(f, [-4,9]) print -deps graph.eps [a, ierror, nfneval] = quad(f, -4, 9); display('Aire: '), disp(double(a));

MATLAB

  1. MATLAB : Aperçu complet de l'environnement de calcul numérique de référence
  2. Maîtriser les bases de MATLAB : Syntaxe et commandes essentielles
  3. Comprendre les variables dans MATLAB : Bases et exemples
  4. Commandes MATLAB essentielles pour un calcul efficace
  5. Types de données MATLAB : Guide complet
  6. Maîtriser les opérateurs MATLAB : Arithmétiques, Logiques, Bitwise et Ensemblistes
  7. Maîtriser les vecteurs MATLAB : Bases des vecteurs ligne et colonne
  8. Maîtriser les matrices MATLAB : Création, indexation et manipulation
  9. MATLAB : Maîtriser les tableaux multidimensionnels et spéciaux