New In

Vektorizált numerikus integráció

Kiemelt információk

  • Kényelmes megoldás az integrációs problémák vektorára

     

  • Additív kvadratúra modell

     

  • Robusztusság a szinguláris pontokkal szemben

A numerikus integrálást számos integrálszámításnál alkalmazzák, amikor az analitikus megoldások nem állnak rendelkezésre vagy nehezen kiszámíthatóak. A vektoros numerikus integrálás egy egyváltozós numerikus integrálások vektorát közelíti egyidejűleg.

A Mata új osztálya, a QuadratureVec() funkcionálisan megegyezik a Quadrature() funkcióval, azzal a különbséggel, hogy kényelmesebben kezeli az integrációs problémák vektorát. Pontosabban, a QuadratureVec() numerikusan közelíti az egyváltozós integrálok vektorát az adaptív Gauss-Kronrod módszerrel (az adaptív Simpson-módszert is megadjuk az összehasonlításhoz).

A QuadratureVec() ugyanúgy használható, mint a Quadrature(), mindössze négy lépésben, nevezetesen a QuadratureVec() osztály példányának létrehozásával, az értékadó függvények megadásával, a határértékek beállításával és a számítások elvégzésével.

Lássuk, hogyan működik

Az új Mata-osztály QuadratureVec() a vektorizált numerikus integrálás tárolására és számítására jött létre.

Íme egy példa a következő három integrál közelítésére:

 
 

Miután definiáltuk az értékelő függvényeket, követjük a négy lépést, amely minden alkalommal szükséges, amikor a QuadratureVec() osztályt használjuk. Először is létrehozzuk a QuadratureVec() osztály q példányát:

: q = QuadratureVec()

Másodszor, a setEvaluator() segítségével mutatunk az oszlopvektor-kiértékelőként definiált kiértékelő függvényekre:

: evaluator = (&f1() \ &f2() \ &f3())
: q.setEvaluator(evaluator)

Harmadszor, a setLimits() segítségével megadjuk az alsó és felső határokat, amelyeket határértékként definiálunk:

: limits = ((1, 2) \ (0,pi()) \ (0,1))
: q.setLimits(limits)

Negyedszer, az integrate() segítségével kiszámítjuk a közelítéseket: