wikipaom2017:060.010.000
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
wikipaom2017:060.010.000 [2017/05/13 15:34] – 227253 | wikipaom2017:060.010.000 [2017/05/13 17:22] (versione attuale) – 227253 | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
+ | ====== Quadratura Gaussiana ====== | ||
+ | Il problema dell' | ||
+ | La questione è quella di svolgere nella maniera più semplice possibile un’integrazione del tipo: | ||
+ | |||
+ | $$\int_{-1}^{1}f(\zeta )d\zeta$$ | ||
+ | |||
+ | Si impone che la variabile sia $ζ$, così da rimanere più generici possibile: infatti questa variabile potrà essere o $ξ$ o $η$, a seconda delle necessità. | ||
+ | Si supponga di voler minimizzare il numero di campionamenti e contestualmente ottenere una soluzione qualitativamente accettabile (massimo rapporto qualità risultato/ | ||
+ | |||
+ | - // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | esisterà un valore di $ζ$ pari a $ζ_{1}$ tale per cui l’integrale esatto di $f(ζ)$ ha la sua migliore approssimazione in: | ||
+ | $$\int_{-1}^{1}f(\zeta )d\zeta\simeq w_{1}*f(\zeta _{1})$$ | ||
+ | |||
+ | Allora il problema è spostato sulla ricerca del peso w1 e del valore della coordinata $ζ=ζ_{1}$, | ||
+ | In alternativa, | ||
+ | |||
+ | - // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | In virtù del campionamento a due punti, si ottiene che la migliore approssimazione dell’integrale esatto da calcolare è pari a: | ||
+ | $$\int_{-1}^{1}f(\zeta )d\zeta\simeq w_{1}*f(\zeta _{1})+w_{2}*f(\zeta _{2})$$ | ||
+ | |||
+ | Allora ci si chiede quali sono i pesi ($w_{1}$, | ||
+ | In questo modo però il problema è “mal definito”: | ||
+ | L’obiettivo di trovare i valori ottimali per l’integrazione numerica di un polinomio, supposto un campionamento a due punti, può essere conseguito mediante l’utilizzo del manipolatore algebrico Maxima. | ||
+ | Le incognite sono semplicemente i due pesi ($w_{1}$, | ||
+ | Per trovare i valori ottimali, viene preso in considerazione un polinomio di ordine adeguato e si cercano i valori delle incognite in grado di integrare in forma esatta con solo due campionamenti il polinomio di ordine più alto possibile: avendo quattro incognite, è considerato, | ||
+ | La funzione da integrare è p($ζ$) ed è definito come un polinomio del terzo ordine, con coefficienti (a,b,c,d) ed il cui integrale esatto è noto: | ||
+ | Poiché l’intervallo è simmetrico rispetto all’origine, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | A questo punto, è possibile svolgere l’integrale approssimato, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | L’equazione ottenuta è nelle incognite del problema e di quarto ordine: non è di facile risoluzione e deve valere per ogni polinomio, ovvero per ogni a, | ||
+ | Per questo motivo, viene definito un residuo, pari alla differenza fra l’esatto e l’approssimato e che dovrebbe essere nullo per ogni coefficiente a,b,c,d: dal momento dire che quest’ultima imposizione potrebbe essere di difficile implementazione, | ||
+ | Avendo quattro coefficienti, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | Il sistema di equazioni ottenuto (ciascuna delle quali chiede che il residuo sia costante in a, b, c, d) è non lineare nelle incognite, ma la sua risoluzione da dei valori che rendono costante, al più nullo, il residuo. Attraverso il comando “solve” (non “linsolve” in quanto le equazioni non sono lineari) il manipolatore risolve il sistema, nelle incognite inizialmente definite dal vettore “unks” | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | La soluzione del sistema è costituita da due set di valori, che possono essere inseriti all’interno di un vettore “sols”, in modo tale da poter selezionare un set alla volta. Allora, chiamando la prima componente di “sols”, si può notare come i due pesi debbano essere pari ad 1 (ed è un risultato attendibile dal momento che l’intervallo d’integrazione, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | La differenza fra il secondo set ed il primo, visibile chiamando la seconda componente di “sols”, risiede nel fatto che ciò che in sols[1] era $ζ_1$, in sols[2] è $ζ_2% e viceversa. | ||
+ | Questi set di valori in termini di pesi e punti di campionamento, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Si può osservare come il residuo assuma valore costante ed in particolare nullo valutato ai valori selezionati: | ||
+ | Allora la regola di integrazione numerica trovata, con campionamento in soli due punti, | ||
+ | |||
+ | I punti ottimali per il campionamento, | ||
+ | |||
+ | - // | ||
+ | Con la regola a un campionamento ad un punto di Gauss si riesce ad integrare in forma esatta un polinomio di primo ordine. | ||
+ | In via generale, se n è il numero di punti di campionamento con cui si intende calcolare un’integrale, | ||
+ | |||
+ | - // | ||
+ | Con questa regola si riesce ad integrare esattamente un polinomio di ordine 2*2 – 1=3 | ||
+ | (come ricavato grazie alle operazioni svolte su Maxima) | ||
+ | |||
+ | ===== Estensione a più punti di campionamento ===== | ||
+ | |||
+ | La procedura esposta è applicabile utilizzando più punti di campionamento o meno punti, ponendo però attenzione al fatto che se si dovessero utilizzare più punti di campionamento (ad es. 3, 4 o 5), per semplificare le equazioni, occorre imporre che questi punti siano simmetrici rispetto alla coordinata $ζ$= 0, in modo tale da non dover inserire troppe incognite. | ||
+ | Ad esempio, volendo sfruttare un campionamento a 3 punti per asse, uno di questi dovrà necessariamente trovarsi nell’origine del piano ($ζ$, f($ζ$)): gli altri due andranno a posizionarsi simmetricamente rispetto all’origine. In questo modo, le incognite sono $\bar{\zeta}$, | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Passando ad un campionamento a 4 punti, si avranno 4 incognite, pari alle coordinate $\bar{\zeta_1}$ e $\bar{\zeta_2}$, | ||
+ | |||
+ | |||
+ | |||
+ | //Codice Completo per il calcolo dei pesi e dei valori ottimali di campionamento a due punti// | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | [[https:// |