Scipy Nquad

Scipy Nquad

Dans cet article, nous parlerons de l'intégration dans Python en utilisant Scipy et nous discuterons également d'une fonction «Nquad» dans la bibliothèque «Scipy» du langage «Python». L'intégration peut être utilisée pour trouver des volumes, des zones, des points centraux et de nombreuses autres choses utiles comme le calcul du centre de masse et du centre de gravité, etc. Maintenant, une question se pose ici sur la façon de calculer l'intégration. Pour trouver une intégrale, nous devons trouver le dérivé et l'inverser. Fonction «nquad» se trouve dans le «scipy.Intégrer la bibliothèque.

Lorsqu'un programmeur ou un codeur n'est pas en mesure de prendre une fonction de fonction analytiquement, il devient difficile de le faire. Il faut ensuite prendre l'aide des méthodes d'intégration numérique. La bibliothèque Scipy a plusieurs méthodes pour effectuer des intégrations numériques. La plupart d'entre eux se trouvent dans la bibliothèque de Scipy discuté ci-dessus. Par exemple, quad, nquad, dblquad, tplquad, etc. La fonction quad est la principale méthode de travail des fonctions d'intégration dans Scipy. La fonction quad tire son nom de la quadrature du mot.

La quadrature des mots est parfois utilisée pour décrire les intégrations numériques. C'est pourquoi cette fonction est appelée une fonction quad. Pour calculer plusieurs intégrales, Scipy nous fournit quelques autres fonctions pour les intégrations doubles et triples. Fonction nquad est également créé pour faire plusieurs intégrations. Maintenant, en supposant que nous avons expliqué le concept de la fonction quad et intégrée, passons à notre fonction principale qui est nquad. Nquad est une fonction utilisée pour les intégrations de Nold à usage général. Il enveloppe la fonction quad pour activer plusieurs intégrations variables.

Pour effectuer des calculs, la fonction Nquad utilise une technique de la bibliothèque Fortran nommée quadpack. La bibliothèque Quadpack fournit plusieurs itérations en utilisant différentes techniques et méthodologies.

Syntaxe

La syntaxe de la fonction Nquad est la suivante:

cavalier.intégrer.nquad (func, gammes, args = aucun, opts = non, full_output = false)

Discutons maintenant des paramètres transmis à cette fonction et au but de ces paramètres.

Le premier paramètre transmis à Nquad est «Func». C'est une fonction qui doit être intégrée. Il faut des arguments de x0… xn. Ces arguments doivent être de type de données flottant. La valeur «x0» dans l'expression est l'intégrale la plus intérieure tandis que la valeur «xn» est l'intégrale la plus externe.

Le deuxième paramètre pour la fonction NQUAD est les «gammes». Ce paramètre est un objet itérable. Chaque élément de ce paramètre doit être une séquence de deux nombres. Sinon, ce doit être un appelable qui peut renvoyer la même séquence. La plage [0] agit comme un tableau et effectue l'intégration sur x0, la plage [1] effectue de telles opérations sur x1 et ainsi de suite. Si une valeur ou un élément dans le paramètre de plage est un objet appelable, alors tous les paramètres d'intégration disponibles seront utilisés pour l'appeler.

Maintenant, passant à "Args". C'est aussi un objet Iterator mais c'est un paramètre facultatif, ce qui signifie qu'il appartient au codeur s'il passe ce paramètre ou non en fonction de l'exigence du code. Ce sont des arguments supplémentaires comme son nom explique. Ces arguments sont parfois requis par d'autres paramètres tels que Func, Range, etc.

Le quatrième paramètre de cette méthode est «Opts». Il s'agit également d'un paramètre facultatif et d'un objet itérateur. Ce sont les options transmises à la fonction quad et à l'aide de ces options, notre fonction évalue le niveau d'intégration à effectuer. Si ce paramètre est vide, la même opération utilisée dans la fonction «Quad» est également utilisée ici dans cette fonction. Les options disponibles avec des valeurs par défaut sont les suivantes:

  • epsabs = 1.49E-08
  • epsrel = 1.49E-08
  • limite = 50
  • points = aucun
  • poids = aucun
  • wvar = aucun
  • wopts = aucun

Le dernier paramètre est "full_output". Si nous définissons la valeur de ce paramètre pour être vraie, le nombre d'évaluations «Neval» peut être obtenu en conséquence.

Cette fonction renvoie le résultat de sortie dans le type de données Float avec «ABSRER» qui est une erreur absolue tout en effectuant des intégrations. Il renvoie également «out_dict» qui a toutes les informations supplémentaires sur l'intégration effectuée.

Exemple # 01:

Pour vous faire mieux comprendre la fonction ci-dessus, nous donnerons un exemple qui rendra vos concepts clairs. Pour ce faire, nous avons d'abord ajouté Scipy.intégrer et importer nquad à partir de celui-ci. Nous avons discuté plus tôt dans l'introduction que Nquad est fonction de Scipy.Intégrer la bibliothèque. C'est pourquoi nous l'avons importé de Scipy.intégrer. Après cela, nous avons défini une fonction avec le nom «Funct». Il faudra trois paramètres: «A», «B» et «C». Le remplissage de fonction les multiplie les uns avec les autres et renvoie la sortie. Après cela, nous avons déclaré une autre variable «RZLT». À l'étape suivante, nous appellerons notre fonction et le passerons les paramètres dont il faut. Le premier paramètre sera la valeur renvoyée par notre fonction supérieure.

Après cela, nous l'avons passé une matrice comme paramètre d'entrée. La fonction NQUAD prendra son intégration et la stockera dans notre variable «RZLT». Après cela, nous avons imprimé la valeur de notre variable. Maintenant, exécutons le code et vérifions le résultat.

de Scipy.Intégrer l'importation nquad
Def funct (A, B, C):
retourner un * b * c
Rzlt = nquad (funct, [[0, 1], [0, 5], [0, 5]])
imprimer ("Ce qui suit est la sortie")
Imprimer (RZLT)

Ceci est la sortie que nous obtiendrons après que notre code sera exécuté avec succès. Pour vérifier si le résultat est correct ou non, vous pouvez prendre l'intégration de l'entrée passée par vous-même et la confirmer avec le résultat que nous avons obtenu de notre fonction. Nous l'avons vérifié de notre fin et la sortie est correcte. Dans la ligne de notre code, nous avons imprimé une déclaration. Nous pouvons voir que le système a d'abord imprimé cette déclaration, puis notre sortie. Nous pouvons donc dire que s'il y avait un problème avec le code, le compilateur n'aurait pas imprimé notre déclaration également.

Conclusion

Dans ce guide, nous avons discuté de la fonction «nquad» de Scipy.Intégrer la bibliothèque de Python. Nous avons expliqué le travail et le but de cette fonction en détail. Après cela, nous avons discuté de sa syntaxe et des paramètres qui y sont passés, et ce qu'il renvoie comme sortie. Nous avons également donné un exemple pour obtenir une meilleure compréhension en l'exécutant pratiquement et en calculant l'intégrale d'une valeur que nous avons transmise à la fonction.