• Nie Znaleziono Wyników

Różniczkowanie i całkowanie

N/A
N/A
Protected

Academic year: 2021

Share "Różniczkowanie i całkowanie"

Copied!
5
0
0

Pełen tekst

(1)

Różniczkowanie i całkowanie

Marcin Orchel

1 Zadania

1.1 Zadania na 3.0

Napisać skrypt w R. W skrypcie:

• wyznaczyć numerycznie gradient wybranych funkcji

• wyznaczyć numerycznie macierz Hessego

• wyznaczyć numerycznie jakobian

• wyznaczyć wartość dla wybranych funkcji gęstości prawdopodobieństwa na wybra- nym przedziale

• sprawdzić czy pole pod wykresem funkcji gęstości jest 1

• Znaleźć wartość oczekiwaną rozkładów (dla predefiniowanych rozkładów w R w tym jeden rozkład asymetryczny) na podstawie ich funkcji gęstości prawdopo- dobieństwa za pomocą wybranych metod całkowania numerycznego tych funkcji (jedna z metod z pakietu pracma). Rozwiązać to samo zadanie za pomocą całkowa- nia funkcji kwantylowej (a także dystrybuanty). Dokonać całkowania po podziale domeny na przedziały. Wykonać estymację całki podwójnej.

• porównać jakość całkowania

• mając daną gęstość znaleźć dystrybuantę oraz funkcję kwantylową

• wyświetlić wykresy funkcji

• zastanowić się czy jakość aproksymacji ma wpływ na jakość całkowania

• wykonać zadanie dla funkcji gęstości wyznaczonej z danych empirycznych

• Dodać komentarz do skryptu opisujący krótko na czym polegają użyte metody oraz wnioski z badań.

Wskazówki

• może być konieczna najpierw aproksymacja lub interpolacja funkcji, a dopiero póź-

niej całkowanie

(2)

• we wzorze na pochodną możemy przyjąć h ≈e

M

x Wskazówki do R

• różniczkowanie symboliczne w R, D, deriv, https://stat.ethz.ch/R-manual/R- devel/library/stats/html/deriv.html

• kontrolowanie dokładności za pomocą subdivisions, rel.tol i abs.tol

• https://stat.ethz.ch/R-manual/R-devel/library/stats/html/Normal.html

• http://www.stat.umn.edu/geyer/old/5101/rlook.html

• https://stat.ethz.ch/R-manual/R-devel/library/stats/html/integrate.html

• https://www.rdocumentation.org/packages/cubature/topics/adaptIntegrate

• https://www.rdocumentation.org/packages/distrEx/topics/distrExIntegrate

• https://www.rdocumentation.org/packages/pracma/topics/integral

• https://www.rdocumentation.org/packages/pracma/topics/trapz

• https://www.rdocumentation.org/packages/pracma/topics/integral2

• https://www.rdocumentation.org/packages/pracma/topics/quadgk

• https://www.rdocumentation.org/packages/pracma/topics/quadgr

• https://www.rdocumentation.org/packages/pracma/topics/simpadpt

• https://www.rdocumentation.org/packages/pracma/topics/romberg

• https://www.rdocumentation.org/packages/pracma/topics/quadv

• https://www.rdocumentation.org/packages/pracma/topics/quadinf

• https://www.rdocumentation.org/packages/pracma/topics/gaussLegendre

• https://www.rdocumentation.org/packages/MASS/topics/area

• http://stackoverflow.com/questions/6552844/integration-sampled-data- in-r

• http://homepages.math.uic.edu/~jyang06/stat401/handouts/handout8.pdf

• skew normal distribution https://www.rdocumentation.org/packages/fgarch/

topics/dsnorm

• https://www.rdocumentation.org/packages/distrEx/topics/E

(3)

• https://www.rdocumentation.org/packages/numDeriv/topics/jacobian, https:

//www.rdocumentation.org/packages/pracma/topics/jacobian

• http://stackoverflow.com/questions/3655717/given-a-random-variable-with- probability-density-function-fx-how-to-compute-t

Przykłady w R

• różniczkowanie symboliczne D(expression(x^5), "x")

D(expression(cos(x) + 3*x^2 + x/sin(x)), "x")

• różniczkowanie numeryczne library("numDeriv") f <- function(x) x^5 x <- 10

print(5*x^4, digits=22) print(grad(f, x), digits=22) h <- x*sqrt(.Machine$double.eps) print((f(x + h) - f(x))/h, digits=22)

• całkowanie numeryczne

integrate(function(x) exp(-x^2/2)/sqrt(2*pi), -Inf, 0) integrate(dbeta, 0, 1, 100, 0.2)

w <- integrate(dbeta, 0, 1, 1, 10) str(w)

print(w$value, digits=22)

• całkowanie numeryczne

integrate(Vectorize(function(x) 1), -1, 0)

• całkowanie numeryczne

f <- function(x) as.numeric(x >= 0 & x <= 1) integrate(f, -1, 2)

integrate(f, -20, 10) Wskazówki do Matlaba

• przykład z pomiarami prędkości dla metody trapz http://www.mathworks.com/

help/matlab/math/integration-of-numeric-data.html

(4)

• do całkowania numerycznego można użyć metody trapz, http://www.mathworks.

com/help/matlab/ref/trapz.html lub metody integral, http://www.mathworks.

com/help/matlab/ref/integral.html lub metody quadgk, http://www.mathworks.

com/help/matlab/ref/quadgk.html lub quad http://www.mathworks.com/help/

matlab/ref/quad.html lub quadl http://www.mathworks.com/help/matlab/ref/

quadl.html

• można uzyskać model funkcji z obiektu cfit za pomocą formula, http://www.

mathworks.com/help/curvefit/formula.html, a wartości współczynników mo- delu z obiektu cfit za pomocą coeffvalues, http://www.mathworks.com/help/curvefit/

coeffvalues.html, nazwy współczynników modelu z obiektu cfit za pomocą co- effnames, http://www.mathworks.com/help/curvefit/coeffnames.html, liczbę współczynników modelu z obiektu cfit za pomocą numcoeffs, http://www.mathworks.

com/help/curvefit/numcoeffs.html

• konwersja cfit do funkcji, http://stackoverflow.com/questions/16478077/get- function-handle-of-fit-function-in-matlab-and-assign-fit-parameters

• można spróbować użyć interpolacji scatteredInterpolant lub zwykłej interpolacji w zdefiniowanej funkcji podobnie jak w przykładach http://stackoverflow.com/

questions/23688669/how-to-integrate-over-a-discrete-2d-surface-in-matlab lub aproksymacji

• w Matlabie możliwe jest również całkowanie symboliczne za pomocą metody int, http://www.mathworks.com/help/symbolic/int.html

1.2 Zadania na 4.0

• zadanie to samo co na 3.0 z tą różnicą, że wybieramy dwie funkcje aproksymujące dwóch zmiennych, jedna z nich jest funkcją gęstości prawdopodobieństwa, a druga z nich jest funkcją aproksymującą wybrane dane rzeczywiste

• Dodać komentarz do skryptu opisujący krótko na czym polegają użyte metody oraz wnioski z badań.

Wskazówki:

• do całkowania funkcji dwuwymiarowych można użyć funkcji integral2, http://

www.mathworks.com/help/matlab/ref/integral2.html lub funkcji quad2d, http:

//www.mathworks.com/help/matlab/ref/quad2d.html

1.3 Zadania na 5.0

• zadanie to samo co na 3.0 z tą różnicą, że wybieramy dwie funkcje aproksymujące

trzech zmiennych, jedna z nich jest funkcją gęstości prawdopodobieństwa, a druga

(5)

• Dodać komentarz do skryptu opisujący krótko na czym polegają użyte metody oraz wnioski z badań.

Wskazówki:

• do całkowania funkcji trójwymiarowych można użyć funkcji integral3, http://

www.mathworks.com/help/matlab/ref/integral3.html

Cytaty

Powiązane dokumenty

Rozkład Poissona daje prawdopodobieństwo P(n i ) tego, że w danym odstępie czasu będzie miało miejsce n i zdarzeń (rozpadów promieniotwórczych), gdy średnia

Jeżeli kierunek zmiany sterowania jest zgodny ze zmianą wartości mierzonej (zwiększenie wartości sygnału ste- rującego powoduje zwiększenie wartości mierzonej) to należy

będą miarami skupionymi na zbiorze

Pokaż przykład ciągu zmiennych losowych, określonych na tej samej przestrzeni probabilistycznej Ω zbieżnego według rozkładu, który nie jest zbieżny według

[r]

O rodzicach niewiele wiemy. Lwowicz przed komisją śledczą Nowosilcowa zeznał, iż utrzym uje się jedynie z dochodów pozyskiwanych przez pijarów, nie posiada

Z kolei Agnieszka Łukasik-Turecka w artykule Nieodpłatne audycje wyborcze w publicznym radiu jako narzędzie komunikowania polskich partii politycznych w kampaniach

Koszt użytkowania urządzenia, które uległo awarii w chwili t, ma rozkład jednostajny U (1, 3−e