3. domača naloga
- 3. domača naloga
Navodila
Tokratna domača naloga je sestavljena iz dveh delov. V prvem delu morate implementirati program za računanje vrednosti dane funkcije $f(x)$. V drugem delu pa izračunati eno samo številko. Obe nalogi rešite na 10 decimalk (z relativno natančnostjo $\mathbf{10^{-10}}$) Uporabite lahko le osnovne operacije, vgrajene osnovne matematične funkcije exp
, sin
, cos
, ..., osnovne operacije z matrikami in razcepe matrik. Vse ostale algoritme morate implementirati sami.
Namen te naloge ni, da na internetu poiščete optimalen algoritem in ga implementirate, ampak da uporabite znanje, ki smo ga pridobilili pri tem predmetu, čeprav na koncu rešitev morda ne bo optimalna. Uporabite lahko interpolacijo ali aproksimacijo s polinomi, integracijske formule, Taylorjevo vrsto, zamenjave spremenljivk, itd. Kljub temu pazite na časovno in prostorsko zahtevnost, saj bo od tega odvisna tudi ocena.
Izberite eno izmed nalog. Domačo nalogo lahko delate skupaj s kolegi, vendar morate v tem primeru rešiti toliko različnih nalog, kot je študentov v skupini.
Če uporabljate drug programski jezik, ravno tako kodi dodajte osnovno dokumentacijo, teste in demo.
Naloge s funkcijami
Porazdelitvena funkcija normalne slučajne spremenljivke
Napišite učinkovito funkcijo, ki izračuna vrednosti porazdelitvene funkcije za standardno normalno porazdeljeno slučajno spremenljivko $X\sim N(0,1)$.
Fresnelov integral
Napišite učinkovito funkcijo, ki izračuna vrednosti Fresnelovega kosinusa
Namig: Uporabite pomožni funkciji
Funkcija kvantilov za $N(0,1)$
Napišite učinkovito funkcijo, ki izračuna funkcijo kvantilov za normalno porazdeljeno slučajno spremenljivko. Funkcija kvantilov je inverzna funkcija porazdelitvene funkcije.
Integralski sinus
Napišite učinkovito funkcijo, ki izračuna integralski sinus
Uporabite pomožne funkcije, kot je opisano v priročniku Abramowitz in Stegun.
Besselova funkcija
Napišite učinkovito funkcijo, ki izračuna Besselovo funkcijo $J_0$:
Naloge s števili
Sila težnosti
Izračunajte velikost sile težnosti med dvema vzporedno postavljenima enotskima homogenima kockama na razdalji 1. Predpostavite, da so vse fizikalne konstante, ki nastopajo v problemu, enake 1. Sila med dvema telesoma $T_1,T_2\subset \mathbb{R}^3$ je enaka
Ploščina hipotrohoide
Izračunajte ploščino območja, ki ga omejuje hypotrochoida podana parametrično z enačbama:
za parametra $a=1$ in $b=-\frac{11}{7}$.
Povprečna razdalja
Izračunajte povprečno razdaljo med dvema točkama znotraj telesa $T$, ki je enako razliki dveh kock:
Povprečno razdaljo na produktu razlik množic $(A-B)\times(A-B)$ lahko določimo z integralom:
Ploščina Bézierove krivulje
Izračunajte ploščino zanke, ki jo omejuje Bézierova krivulja dana s kontrolnim poligonom:
Lažje naloge (ocena največ 9)
Naloge so namenjen tistim, ki jih je strah eksperimentiranja ali pa za to preprosto nimajo interesa ali časa. Rešiti morate eno od obeh nalog:
Ineterpolacija z baricentrično formulo
Napišite program, ki za dano funkcijo $f$ na danem intervalu $[a,b]$ izračuna polinomski interpolant, v Čebiševih točkah. Vrednosti naj računa z baricentrično Lagrangevo interpolacijo, po formuli
kjer so vrednosti uteži $\lambda_{j}$ izbrane, tako da je $\prod_{i\not=j}(x_{j}-x_{i})=1$. Čebiševe točke so podane na intrvalu $[-1,1]$ s formulo
vrednosti uteži $\lambda_{i}$ pa so enake
Za interpolacijo na splošnem intervalu $[a,b]$ si pomagaj z linearno preslikavo na interval $[-1,1]$. Program uporabi za tri različne funkcije $e^{-x^{2}}$ na $[-1,1]$, $\frac{\sin x}{x}$ na $[0,10]$ in $|x^{2}-2x|$ na $[1,3]$. Za vsako funkcijo določi stopnjo polinoma, da napaka ne bo presegla $10^{-6}$.
Gauss-Legendrove kvadrature
Izpelji Gauss-Legendreovo integracijsko pravilo na dveh točkah
vključno s formulo za napako $R_{f}$. Izpelji sestavljeno pravilo za $\int_{a}^{b}f(x)dx$ in napiši program, ki to pravilo uporabi za približno računanje integrala. Oceni, koliko izračunov funkcijske vrednosti je potrebnih, za izračun približka za
na 10 decimalk natančno.