całka
Kol: | 3x2+x−1 | |
Oblicz ∫ |
| dx |
| (x+1)(x2+25x+2)2 | |
6 paź 07:27
Mariusz:
Wyróżnik jest dodatni
Δ=625 − 4*2 = 617 > 0
więc funkcja podcałkowa powinna dać się rozłożyć na sumę ułamków prostych
bez konieczności użycia wzoru redukcyjnego czy też wydzielenia części wymiernej całki
Co prawda możesz zarówno wydzielić część wymierną całki jak i wyprowadzić wzór redukcyjny
ale już nie będziesz miał aż takiego zysku w obliczeniach
jak w przypadku gdyby wyróżnik był ujemny
Tylko kto wam takie przykłady dobierał
Te pierwiastki mogą sprawić że liczenie może okazać się dość uciążliwe
6 paź 08:30
Mariusz:
Na całkowanie funkcji wymiernych masz taki schemacik
1. Czy stopień licznika jest większy bądź równy stopniowi mianownika
Jeśli tak to wykonujesz pisemne dzielenie wielomianów
| L(x) | | R(x) | |
∫ |
| dx=∫W(x)dx+∫ |
| dx |
| M(x) | | M(x) | |
2. Czy mianownik posiada pierwiastki wielokrotne (rzeczywiste bądź zespolone)
(Gdy masz podany mianownik w postaci iloczynowej to jest od razu to widać ale
jeśli masz mianownik podany w postaci ogólnej to możesz to sprawdzić licząc NWD(M(x),M'(x)))
Jeśli tak to wydzielasz część wymierną całki
| L(x) | | L1(x) | | L2(x) | |
∫ |
| dx= |
| +∫ |
| dx |
| M(x) | | M1(x) | | M2(x) | |
M
1(x)=NWD(M(x),M'(x))
M(x)=M
1(x)M
2(x)
Gdy mianownik M(x) mamy podany w postaci iloczynowej
to mianowniki M
1(x) oraz M
2(x) wygodniej jest otrzymać w ten sposób
M
2(x) posiada te same pierwiastki co M(x) tyle że jednokrotne
M(x)=M
1(x)M
2(x)
(czyli czynniki mianownika M
1(x) dobieramy tak aby razem z czynnikami M
2(x)
otrzymać mianownik M(x))
| M2(x)M1'(x) | |
Obliczamy pomocniczy wielomian H(x)= |
| |
| M1(x) | |
Za współczynniki liczników bierzemy współczynniki literowe
przyjmując że stopnie liczników są mniejsze niż stopnie odpowiadających im mianowników
Liczniki otrzymujemy z układu równań liniowych
powstałego po porównaniu następujących wielomianów
L(x)=L
1'(x)M
2(x)−L
1(x)H(x)+L
2(x)M
1(x)
3. Jeżeli powyższe dwa przypadki nie zajdą to stosujesz rozkład na sumę ułamków prostych
Przypuśćmy że mianownik M(x) można rozłożyć na następujące czynniki
M(x)=(x−a
1)(x−a
2)*...*(x−a
k)(x
2+p
1x+q
1)(x
2+p
2x+q
2)*..
.*(x
2+p
mx+q
m)
L(x) | | A1 | | A2 | | Ak | |
| = |
| + |
| +...+ |
| |
M(x) | | x−a1 | | x−a2 | | x−ak | |
| B1x+C1 | | B2x+C2 | |
+ |
| + |
| +... |
| x2+p1x+q1 | | x2+p2x+q2 | |
6 paź 10:26
chichi:
@
Mariusz myślę, że nawet dr Wolfram łapie się za głowę widząc takie przykłady...
6 paź 20:46
chichi:
użyj dowolnego programu do rozkładu na ułamki proste i zobacz co tam wychodzi...
6 paź 20:47
Mariusz:
Python z zainstalowaną paczką sympy daje radę z tą całką
chichi
| P(x) | | P1(x) | | P2(x) | |
Przypuśćmy że mamy całkę ∫ |
| dx= |
| + ∫ |
| dx |
| Q(x) | | Q1(x) | | Q2(x) | |
gdzie
deg P(x) < deg Q(x)
deg P
1(x) < deg Q
1(x)
deg P
2(x) < deg Q
2(x)
ponadto wiadomo że
Q
1(x)=GCD(Q(x),Q'(x))
Q(x)=Q
1(x)Q
2(x)
Zróżniczkujmy stronami poniższą równość
| P(x) | | P1(x) | | P2(x) | |
∫ |
| dx= |
| + ∫ |
| dx |
| Q(x) | | Q1(x) | | Q2(x) | |
P(x) | | P1(x) | | P2(x) | |
| =( |
| )' + |
| |
Q(x) | | Q1(x) | | Q2(x) | |
P(x) | | P1'(x)Q1(x)−P1(x)Q1'(x) | | P2(x) | |
| = |
| + |
| |
Q(x) | | Q12(x) | | Q2(x) | |
P1'(x)Q1(x)Q2(x)−P1(x)Q1'(x)Q2(x)+P2(x)Q12(x) | |
| |
Q12(x)Q2(x) | |
P1'(x)Q1(x)Q2(x)−P1(x)Q1'(x)Q2(x)+P2(x)Q12(x) | |
| |
Q(x)Q1(x) | |
| Q2(x)Q1'(x) | |
U{Q1(x)(P1'(x)Q2(x)−P1(x) |
| +P2(x) |
| Q1(x) | |
Q
1(x))}{Q(x)Q
1(x)}
| Q2(x)Q1'(x) | | P1'(x)Q2(x)−P1(x) |
| +P2(x)Q1(x) | | Q1(x) | |
| |
| |
Q(x) | |
| Q2(x)Q1'(x) | |
Niech H(x) = |
| |
| Q1(x) | |
mamy wówczas
P1'(x)Q2(x)−P1(x)H(x)+P2(x)Q1(x) | |
| |
Q(x) | |
P(x) = P
1'(x)Q
2(x)−P
1(x)H(x)+P
2(x)Q
1(x)
Moja hipoteza jest taka że H(x) jest wielomianem
Jak wykazałbyś poprawność tej hipotezy
7 paź 00:07
Mariusz:
Tutaj może źle się wyraziłem
oczywiście chodziło mi o pokazanie czy hipoteza jest prawdziwa czy fałszywa
7 paź 00:17
Mariusz:
U Fichtenholza jest to rozpisane − nawet od niego wziąłem tą literkę dla tego ilorazu
który ma być wielomianem
7 paź 00:50
chichi:
przeczytałem wszystkie 3 tomy
7 paź 00:55
chichi:
jutro pomyślę nad tym, bo jest już późno i odezwę się w tym wątku
7 paź 01:03
chichi:
już mam pomysł, jutro napisze
7 paź 02:28
chichi:
wstałem jednak, napisać bo jutro mógłbym nie pamiętać, a więc tak:
Q(x) = Q
1(x)Q
2(x), zatem różniczkując stronami mamy, że:
Q'(x) = Q'
1(x)Q
2(x) + Q
1(x)Q'
2(x), dzieląc stronami przez Q
1(x) mamy:
Q'(x) | | Q'1(x)Q2(x) | | Q'1(x)Q2(x) | |
| = |
| + Q'2(x), |
| = H(x), zatem: |
Q1(x) | | Q1(x) | | Q1(x) | |
Q'(x) | | Q'(x) | |
| = H(x) + Q'2(x), stąd mamy, że: H(x) = |
| − Q'2(x) |
Q1(x) | | Q1(x) | |
teraz skoro Q
1(x) = gcd( Q(x), Q'(x) ), a to oznacza, że Q
1(x) | Q'(x), zatem:
Q'(x) = Q
1(x)P(x), dla pewnego wielomianu P, wówczas:
| Q'(x) | | Q1(x)P(x) | |
H(x) = |
| − Q'2(x) = |
| − Q'2(x) = P(x) − Q'2(x), stąd |
| Q1(x) | | Q1(x) | |
mamy:
H(x) − jest zawsze wielomianem jako różnica dwóch wielomianów □
Pisane późną nocą, ale mam nadzieję, że jakichś luk nie zostawiłem. Jutro jak wstanę to jeszcze
raz to przeczytam i ewentualnie poprawię co trzeba
7 paź 02:51
chichi:
doszło mi do kolizji oznaczeń z twoim wielomianem P, rzecz jasna nie o niego mi chodzi, nie
spojrzałem u góry Twojego wpisu, że zostało to już zarezerwowane, zatem zamiast P, niech tam
sobie będzie R, albo inna dowolna wolna litera w moim wpisie
7 paź 03:18
Mariusz:
chichi ładnie i mamy też inny sposób na policzenie tego wielomianu
Fichtenholz uzasadniał to nieco inaczej tj bazując na
rozkładzie wielomianów Q1(x) , Q1'(x) , Q2(x) na czynniki
Teraz jeszcze jedno , wielomian w postaci ogólnej różniczkuje się dość szybko
a co z wielomianem w postaci iloczynowej
czy istnieje wtedy jakiś szybki sposób policzenia pochodnej
7 paź 07:50
chichi:
może np. tak, weźmy wielomian W = α
1α
2...α
n, w postaci iloczynowej, wówczas:
ln(W) = ln(α
1α
2...α
n) = ln(α
1) + ln(α
2) + ... + ln(α
n), teraz różniczkując stronami mamy:
1 | | 1 | | 1 | | 1 | |
| W' = |
| α1' + |
| α2' + ... + |
| αn' |
W | | α1 | | α2 | | αn | |
| W' | | α1' | | α2' | | αn' | |
stąd dalej: |
| = |
| + |
| + ... + |
| , mnożąc przez W i |
| W | | α1 | | α2 | | αn | |
podstwiając:
| α1' | | α2' | | αn' | |
W' = α1α2...αn( |
| + |
| + ... + |
| ) |
| α1 | | α2 | | αn | |
Teraz gdyby tak to sobie mnożyć w pamięci widać, że W' można zapisać postaci:
W' = ∑
i[α
i'(∏
j≠iα
j)], bardziej elegancki zapis, ale do praktyki oczywiście ten wyżej.
Czy masz inny pomysł?
7 paź 09:10
Mariusz:
Twój pomysł jest dobry
Kiedyś pewien Łukasz z forum matematyka.pl pisał że stosując metodę Ostrogradskiego
wydzielenia części wymiernej całki nie zawsze oszczędzamy czas
a ja chciałem pokazać że jest ona równie szybka co rozkład na sumę ułamków prostych
a w pewnych przypadkach może nawet szybsza
7 paź 09:48
Mariusz:
W rozkładzie wyrażenia wymiernego na sumę ułamków prostych najtrudniejszy jest
rozkład mianownika na czynniki liniowe lub kwadratowe nierozkładalne
Jeżeli chodzi o numeryczne metody poszukiwania pierwiastków wielomianów to
można je sprowadzić do
*poszukiwania wartości własnych pewnej macierzy
*układu równań nieliniowych powstałego
po przyrównaniu reszty z dzielenia wielomianu przez trójmian kwadratowy
Nie tak dawno temu Maciess podrzucił książkę do metod numerycznych
Widziałeś ją
https://www.impan.pl/~szczep/AMM1/Kincaid.pdf
7 paź 10:25
Mariusz:
Wydzielenie części wymiernej całki dla tej całki wyglądałoby tak
| 3x2+x−1 | |
∫ |
| dx |
| (x+1)(x2+25x+2)2 | |
P(x)=3x
2+x−1
Q(x)=(x+1)(x
2+25x+2)
2
Q
1(x)=(x
2+25x+2)
Q
2(x)=(x+1)(x
2+25x+2)
Q
1'(x)=2x+25
| (x+1)(x2+25x+2)(2x+25) | |
H(x)= |
| |
| (x2+25x+2) | |
H(x)=(x+1)(2x+25)
O wielomianie P
1(x) wiemy tylko tyle że jest co najwyżej pierwszego stopnia
a o wielomianie P
2(x) wiemy tylko tyle że jest co najwyżej drugiego stopnia
Za współczynniki tych wielomianów przyjmujemy więc współczynniki literowe
P(x)=P
1'(x)Q
2(x)−P
1(x)H(x)+P
2(x)Q
1(x)
3x
2+x−1=a
1(x+1)(x
2+25x+2)−(a
1x+a
0)(x+1)(2x+25)+(b
2x
2+b
1x+b
0)(x
2+25x+2)
3x
2+x−1=a
1(x
3+26x
2+27x+2)−(a
1x+a
0)(2x
2+27x+25)+
(b
2x
2+b
1x+b
0)(x
2+25x+2)
3x
2+x−1=a
1(x
3+26x
2+27x+2)−a
1(2x
3+27x
2+25x)−a
0(2x
2+27x+25)
+b
2(x
4+25x
3+2x
2)+b
1(x
3+25x
2+2x)+b
0(x
2+25x+2)
3x
2+x−1=b
2x
4+(25b
2+b
1−a
1)x
3+(2b
2+25b
1+b
0−a
1−2a
0)x
2
+(2b
1+25b
0+2a
1−27a
0)x+2b
0+2a
1−25a
0
b
2=0
25b
2+b
1−a
1=0
2b
2+25b
1+b
0−a
1−2a
0=3
2b
1+25b
0+2a
1−27a
0=1
2b
0+2a
1−25a
0=−1
b
2=0
b
1−a
1=0
25b
1+b
0−a
1−2a
0=3
2b
1+25b
0+2a
1−27a
0=1
2b
0+2a
1−25a
0=−1
b
2=0
b
1=a
1
b
0+24a
1−2a
0=3
25b
0+4a
1−27a
0=1
2b
0+2a
1−25a
0=−1
b
2=0
b
1=a
1
b
0+24a
1−2a
0=3
21(−596a
1+23a
0=−74)
−23(46a
1 + 21a
0=7)
−12516a
1+483a
0=−1554
−1058a
1−483a
0=−161
−13574a
1=−1715
b
2=0
b
1=a
1
b
0+24a
1−2a
0=3
−12516a
1+483a
0=−1554
−1058a
1−483a
0=−161
b
2=0
b
1=a
1
b
0+24a
1−2a
0=3
13574a
1=1715
2304
b
2=0
b
1=a
1
b
0+24a
1−2a
0=3
b
2=0
b
1=a
1
b
0=3−24a
1+2a
0
| 3*13574−24*1715+2*768 | |
b0= |
| |
| 13574 | |
| 40722−6*6860+1536 | |
b0= |
| |
| 13574 | |
| 3x2+x−1 | |
∫ |
| dx= |
| (x+1)(x2+25x+2)2 | |
1 | 1715x+768 | | 1 | | 1715x+1098 | |
|
| + |
| ∫ |
| dx |
13574 | x2+25x+2 | | 13574 | | (x+1)(x2+25x+2) | |
Teraz już rozkład na sumę ułamków prostych będzie miał tylko trzy współczynniki
1715x+1098 | | A | | B | | C | |
| dx= |
| + |
| + |
| |
(x+1)(x2+25x+2) | | x+1 | | x−λ1 | | x−λ2 | |
1715x+1098=A(x−λ
1)(x−λ
2)+B(x+1)(x−λ
2)+C(x+1)(x−λ
1)
1715x+1098=A(x
2+25x+2)+B(x
2+(1−λ
2)x−λ
2)+C(x
2+(1−λ
1)x−λ
1)
A+B+C=0
25A+(1−λ
2)B+(1−λ
1)C=1715
2A−λ
2B−λ
1C=1098
Po rozwiązaniu tego układu równań dostaniemy rozwiązanie uzależnione od λ
1 oraz λ
2
a następnie przyjmując że λ
1 oraz λ
2 są pierwiastkami wielomianu x
2+25x+2
dostaniemy współczynniki rozkładu na sumę ułamków prostych
7 paź 13:23
chichi:
Nie widziałem, ale w poniedziałek będę miał pierwsze zajęcia z przedmiotu pt. elementy metod
numerycznych, zaczyna mi się w tym semestrze
7 paź 13:38
Mariusz:
Z polskich książek znalazłem Metody numeryczne Z .Fortuna , B. Macukow , J. Wąsowski
Do znalezienia w sieci
Możesz je sobie przejrzeć i jeśli ci się spodobają przeczytać
7 paź 15:24
chichi: 1. Cheney W., Kincaid D., ,,Analiza numeryczna", WN−T, Warszawa 2006
2.
Dryja M., Jankowscy J. i M., ,,Przegląd metod i algorytmów numerycznych”, WN−T, Warszawa, 1982
(część
1), 1988 (część 2)
3. Dahlquist G., Bjorck A., „Metody numeryczne'', PWN Warszawa 1983
4.
Campbell S., Chancelier J.−P., Nikoukhan R.: ,,Modeling and simulation in Scilab/Scicos'',
Springer, New
York 2006
5. T. Heister, L. Rebholz: ,,Scientific computing: for scientists and engineers", De Gruyter
2015, Berlin/Boston
6. Muller J.−M. at al.: ,,Handbook of floating−point arithmetic", BirkhäuserBoston/Basel/Berlin
2010
7. Süli E., Mayers D.F.: ,,An introduction to numerical analysis", Cambridge University Press,
2003
7 paź 15:35
chichi:
to polecają u mnie
7 paź 15:36
Mariusz:
Z tych polskich to tylko jedną pozycję polecają
Z tych co znalazłem to oprócz tych co wcześniej wymieniłem jest jeszcze
Numerical recipes in C Saul Teukolsky i inni
W sieci dostępna jest wersja sprzed 30 lat ale za to masz tam gotowe kody w C
7 paź 16:30
Mariusz:
Zechciałbyś pisać ze mną o metodach numerycznych
Jeśli tak to możemy rozpocząć inny wątek
7 paź 17:21
chichi:
Najwidoczniej Polach mają mały wkład w tej dziedzinie
7 paź 17:21