Scipy Nquad

Scipy Nquad

In questo articolo, parleremo dell'integrazione in Python usando Scipy e discuteremo anche di una funzione "nquad" nella lingua "Scipy" del linguaggio "Python". L'integrazione può essere utilizzata per scoprire volumi, aree, punti centrali e molte altre cose utili come il calcolo del centro di massa e il centro di gravità, ecc. Ora si pone una domanda qui su come calcolare l'integrazione. Per trovare un integrale, dobbiamo trovare il derivato e invertirlo. La funzione "nquad" si trova in "Scipy.Biblioteca integra ".

Quando un programmatore o un programmatore non è in grado di intraprendere l'integrazione una funzione analiticamente, diventa difficile farlo. Si dovrebbe quindi prendere aiuto dai metodi di integrazione numerica. Library Scipy ha diversi metodi per eseguire integrazioni numeriche. La maggior parte di loro si trova nella biblioteca di Scipy discussa sopra. Ad esempio, Quad, Nquad, Dblquad, TPlquad, ecc. La funzione Quad è il principale metodo di lavoro delle funzioni di integrazione in Scipy. La funzione Quad ottiene il suo nome dalla parola quadratura.

La quadratura delle parole viene talvolta usata per descrivere le integrazioni numeriche. Ecco perché questa funzione è chiamata funzione quad. Per calcolare più integrali, Scipy ci fornisce alcune altre funzioni per integrazioni doppie e triple. Funzione nquad è anche creata per fare più integrazioni. Ora, supponendo che abbiamo chiarito il concetto della funzione Quad e della libreria integrata, passiamo alla nostra funzione principale che è Nquad. Nquad è una funzione che viene utilizzata per integrazioni per il filo per uso generale. Avvolge la funzione Quad per abilitare più integrazioni variabili.

Per eseguire i calcoli, la funzione Nquad utilizza una tecnica della libreria Fortran chiamata Quadpack. La libreria Quadpack fornisce più iterazioni utilizzando tecniche e metodologie diverse.

Sintassi

La sintassi della funzione Nquad è la seguente:

Scipy.integrare.nquad (func, gamme, args = nessuno, opts = nessuno, full_output = false)

Ora discutiamo i parametri passati a questa funzione e lo scopo di tali parametri.

Il primo parametro passato a Nquad è "Func". È una funzione che deve essere integrata. Ci vogliono argomenti da x0 ... xn. Questi argomenti devono essere del tipo di dati fluttuanti. Il valore "x0" nell'espressione è l'integrale più interno mentre il valore "xn" è l'integrale più esterno.

Il secondo parametro per la funzione nquad è "gamme". Questo parametro è un oggetto iterabile. Ogni elemento di questo parametro deve essere una sequenza di due numeri. Altrimenti, deve essere una calma che può restituire la stessa sequenza. L'intervallo [0] funge da array ed esegue l'integrazione su X0, l'intervallo [1] esegue tali operazioni su X1 e così via. Se un valore o un elemento nel parametro di gamma è un oggetto richiamabile, tutti i parametri di integrazione disponibili verranno utilizzati per chiamarlo.

Ora, passando a "Args". È anche un oggetto iteratore ma è un parametro opzionale, il che significa che dipende dal codificatore se supera questo parametro o meno a seconda del requisito del codice. Questi sono argomenti aggiuntivi come spiega il nome. Questi argomenti sono talvolta richiesti da altri parametri come func, intervallo, ecc.

Il quarto parametro in questo metodo è "Opts". Questo è anche un parametro opzionale e un oggetto iteratore. Queste sono le opzioni passate alla funzione Quad e con l'aiuto di queste opzioni, la nostra funzione valuta quale livello di integrazione deve essere eseguito. Se questo parametro è vuoto, la stessa operazione utilizzata nella funzione "quad" viene utilizzata anche qui in questa funzione. Le opzioni disponibili con valori predefiniti sono le seguenti:

  • epSabs = 1.49E-08
  • epsrel = 1.49E-08
  • Limite = 50
  • punti = nessuno
  • peso = nessuno
  • wvar = nessuno
  • wopts = nessuno

L'ultimo parametro è "full_output". Se impostiamo il valore di questo parametro per essere vero, il numero di valutazioni "neval" può essere ottenuto di conseguenza.

Questa funzione restituisce il risultato dell'output in un tipo di dati float insieme a "ASSERR", che è un errore assoluto durante l'esecuzione di integrazioni. Restituisce anche "out_dict" che ha tutte le informazioni extra sull'integrazione eseguita.

Esempio # 01:

Per farti capire meglio la funzione sopra discussa, daremo un esempio che chiarirà i tuoi concetti. Per farlo, abbiamo aggiunto per la prima volta Scipy.integrare e importare nquad da esso. Abbiamo discusso in precedenza nell'introduzione che Nquad è una funzione di Scipy.integrare la libreria. Ecco perché l'abbiamo importato da Scipy.integrare. Successivamente, abbiamo definito una funzione con il nome "funct". Ci vorranno tre parametri: "A", "B" e "C". Il riempimento della funzione li moltiplica tra loro e restituisce l'output. Successivamente, abbiamo dichiarato un'altra variabile "RZLT". Nel passaggio successivo, chiameremo la nostra funzione e la passeremo i parametri che richiede. Il primo parametro sarà il valore restituito dalla nostra funzione sopra definita.

Successivamente, l'abbiamo superata una matrice come parametro di input. La funzione Nquad prenderà la sua integrazione e la memorizzerà nella nostra variabile "RZLT". Successivamente, abbiamo stampato il valore della nostra variabile. Ora, eseguiamo il codice e controlliamo il risultato.

da Scipy.integrare l'importazione nquad
def funct (a, b, c):
restituire un*b*c
Rzlt = nquad (funct, [[0, 1], [0, 5], [0, 5]])
stampa ("quanto segue è l'output")
Stampa (RZLT)

Questo è l'output che otterremo dopo che il nostro codice viene eseguito correttamente. Per verificare se il risultato è corretto o meno puoi prendere l'integrazione dell'input passato da solo e confermarlo con il risultato che abbiamo ottenuto dalla nostra funzione. L'abbiamo verificato dalla nostra fine e l'output è corretto. Nella riga del nostro codice, abbiamo stampato una dichiarazione. Possiamo vedere che il sistema ha stampato prima questa affermazione e quindi il nostro output. Quindi, possiamo dire che se ci fosse stato qualche problema con il codice, il compilatore non avrebbe stampato anche la nostra dichiarazione.

Conclusione

In questa guida, abbiamo discusso della funzione "nquad" di Scipy.integrare la biblioteca di Python. Abbiamo spiegato in dettaglio il lavoro e lo scopo di questa funzione. Dopodiché, abbiamo discusso della sua sintassi e quali parametri vengono passati ad essa e cosa restituisce come output. Abbiamo anche eseguito un esempio per ottenere una migliore comprensione eseguendolo praticamente e calcolando l'integrale di un valore che abbiamo passato alla funzione.