Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 12. 03. 2024 12:53

kastanek
Příspěvky: 180
Škola: G
Pozice: student
Reputace:   
 

Goniometrický vzorec

Zdravím, víme-li, že [mathjax]A\sin x + B \cos x = C \sin \left( x+D\right)[/mathjax], jak vyjádříme koeficienty C a D pomocí A a B? Nějaký tvar jsem si odvodil a je správně, ale mám pocit, že jsem někde viděl jednodušší tvar. Svoje řešení sem prozatím nechci dávat, abych vás neovlivňoval.

Offline

 

#2 12. 03. 2024 13:55 — Editoval Richard Tuček (12. 03. 2024 13:58)

Richard Tuček
Místo: Liberec
Příspěvky: 1150
Reputace:   19 
Web
 

Re: Goniometrický vzorec

↑ kastanek:
Použiji součtový vzorec sin(x+D) = sinx * cosD + cosx * sinD
ale nevím, zda to pomůže

Nebo také lze zkusit toto: sin(U+x) = sinU * cosx + cosU * sinx
přičemž cosU = A/odm(A^2 + B^2);  sinU = B/odm(A^2 + B^2)

Offline

 

#3 12. 03. 2024 14:36

kastanek
Příspěvky: 180
Škola: G
Pozice: student
Reputace:   
 

Re: Goniometrický vzorec

↑ Richard Tuček:Jasný, Céčko jsem takto odvodil, jiným způsobem pak Déčko. Ale použijí se při tom neekvivalentní operace, takže se to "dorovnává" dalšími výrazy a mám pocit, že ten vzorec je jednodušší...

Offline

 

#4 12. 03. 2024 14:51

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

No, [mathjax]C^2=A^2+B^2[/mathjax] a [mathjax]D=arg(A,B)[/mathjax]

Offline

 

#5 12. 03. 2024 17:39

kastanek
Příspěvky: 180
Škola: G
Pozice: student
Reputace:   
 

Re: Goniometrický vzorec

↑ MichalAld:
Hm, hezký... Ty jsi, myslím, fyzik a vy asi takový vzorec používáte dost často. Proto ho znáš? Nebo jsi ho odvodil?
Jen pro srovnání můj nepěkný vzorec:
[mathjax]A\sin x+B\cos x=-\mathrm{sgn}\,B\cdot\sqrt{A^2+B^2}\cdot\sin\left(x-\frac{\pi}{2}-\arctan\frac{A}{B} \right)[/mathjax]

Offline

 

#6 12. 03. 2024 18:59 — Editoval Honzc (12. 03. 2024 19:17)

Honzc
Příspěvky: 4591
Reputace:   243 
 

Re: Goniometrický vzorec

↑ kastanek:
jednodušší (ale stejný výsledek)
[mathjax]A\sin x+B\cos x=\mathrm{sgn}(B)\cdot\sqrt{A^2+B^2}\cdot\sin\left(x+\frac{\pi}{2}-\arctan\frac{A}{B} \right)[/mathjax]  [mathjax]A,B\neq 0[/mathjax]

Offline

 

#7 13. 03. 2024 14:55

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

↑ kastanek:
On je problém, že ten arctan funguje jen v rozsahu plus minus 90 stupňů. Zbytek se musí dodělat ručně. Proto se používá ta funkce arg, která to už má schované v sobě ty věci kolem znamének. Pak je ještě další problém když povolíme že to C může být záporné

Offline

 

#8 13. 03. 2024 22:59

mák
Místo: Vesmír, Galaxie MD
Příspěvky: 885
Reputace:   63 
 

Re: Goniometrický vzorec

Místo funkce arg, lze použít funkci atan2 (Excel, Calc):
[mathjax]A\,\sin x+B\,\cos x=\sqrt{B^2+A^2}\,\sin \left(x+{\rm atan2}\left(A , B\right)\right)[/mathjax]


LibreOffice Verze: 7.6.6.3, Maxima 5.47.0 (SBCL)

Online

 

#9 14. 03. 2024 08:53

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

kastanek napsal(a):

↑ MichalAld:
Hm, hezký... Ty jsi, myslím, fyzik a vy asi takový vzorec používáte dost často. Proto ho znáš? Nebo jsi ho odvodil?

Tak já jsem fyzik jen tady, ale pravda je, že ve fyzice či elektronice se s tím člověk setkává pořád. Už jsem si to za život odvozoval asi 10x, a stejně to vždycky zapomenu, protože ono to zas tak úplně triviální není. Většinou se teda řeší analogický problém s komplexními čísly, tedy převést složkový tvar na exponenciální:

[mathjax]a+ib = C e^{i \varphi}[/mathjax]

Ale je to ten samý problém. Pokud tedy vyjdeme z tvého tvaru (jen tam místo D budu psát to [mathjax]\varphi[/mathjax] ať to lépe vypadá:

[mathjax]A\sin x + B \cos x = C \sin \left( x+\varphi \right)[/mathjax]

Tak první krok je použít vzorec

[mathjax]\sin(\alpha +\beta) = \sin \alpha \cdot \cos \beta + \cos \alpha \cdot \sin \beta[/mathjax]


Tak tedy dostaneme, že

[mathjax]C \sin \left( x+\varphi \right)=C \sin x \cos \varphi + C \cos x \sin \varphi[/mathjax]

a má li se to rovnat výrazu

[mathjax]A \sin x  + B \cos x [/mathjax]

tak musí platit (pokud není jasné proč to musí platit, tak klidně vysvětlím, ale přijde mi to samozřejmé), že:

[mathjax]A = C \cos \varphi[/mathjax]

[mathjax]B = C \sin \varphi[/mathjax]

Offline

 

#10 14. 03. 2024 09:01

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

Máme tedy:

[mathjax]A = C \cos \varphi[/mathjax]

[mathjax]B = C \sin \varphi[/mathjax]


a potřebujeme najít C a [mathjax]\varphi[/mathjax]. Hned na začátku je dobré zmínit, že daná úloha není úplně jednoznačná, a že to lze udělat vícero způsoby, takže je dobré si rozsah proměnných trochu omezit (k tomu se dostaneme v průběhu).

Další krok je použití vztahu [mathjax]\cos^2x + \sin^2x= 1[/mathjax], což nás přivede na myšlenku, že

[mathjax]A^2 + B^2 = C^2\cos^2\varphi + C^2\sin^2\varphi = C^2(\cos^2\varphi + \sin^2\varphi)=C^2[/mathjax]

Tím pádem  [mathjax]C = \sqrt{A^2 + B^2}[/mathjax]

Zde se zpravidla použije konvence, že C je kladné číslo (nazývané jako amplituda). Má to svůj smysl a nedopustíme se tím žádné újmy na obecnostni, ale v principu lze zvolit C i záporné. Můžu nakonec ukázat, jak toho dosáhnout.

Offline

 

#11 14. 03. 2024 09:04 — Editoval MichalAld (14. 03. 2024 09:07)

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

No a když už máme C, tak zbývá určit ten úhel.

[mathjax]A = C \cos \varphi[/mathjax]

[mathjax]B = C \sin \varphi[/mathjax]

Můžeme použít přímo tyhle rovnice, no a nebo je dáme do poměru a dostaneme

[mathjax]\frac{B}{A} = \frac{\sin \varphi}{\cos \varphi}=\tan{\varphi}[/mathjax]

Takže v principu

[mathjax]\varphi = \arctan \frac{B}{A}[/mathjax]

Jenže problém je, že funkce tangens je periodická s periodou [mathjax]\pi[/mathjax], takže její inverze bude fungovat jen v rozsahu [mathjax]<- \frac{\pi}{2}; +\frac{\pi}{2}>[/mathjax], česky od -90° do +90°. Zbytek si musíme vybojovat ručně.

Offline

 

#12 14. 03. 2024 09:23 — Editoval MichalAld (14. 03. 2024 10:04)

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

[mathjax]A = C \cos \varphi[/mathjax]
[mathjax]B = C \sin \varphi[/mathjax]


Podle znamének čísel A,B dostáváme 4 možnosti:

A>0, B>0: úhel je 0° ... 90°
A>0, B<0: úhel je 0° ... -90°, což je to samé jako 270° ... 360°

Pro tyhle varianty můžeme použít přímo vztah [mathjax]\varphi = \arctan \frac{B}{A}[/mathjax]

No a pro


A<0, B>0: úhel je 90° ... 180°
A<0, B<0: úhel je -90° ... -180°, což je to samé jako 180° ... 270°

musíme použít vztah [mathjax]\varphi = \arctan \frac{B}{A} + \pi ==  \arctan \frac{B}{A} +180°[/mathjax]

K tomu jsou ještě ty dvě varianty kdy A=0, které odpovídají úhlům +90° a -90°, a pak varianta A=0 a B=0, která nemá jednoznačné řešení a úhel si můžeme zvolit libovolně, takže se většinou volí úhel 0°.

Offline

 

#13 14. 03. 2024 09:34 — Editoval MichalAld (14. 03. 2024 09:35)

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

Ten vztah [mathjax]\varphi = \arctan \frac{B}{A} + \pi [/mathjax] se docela blbě pamatuje i odvozuje (hlavně ta znaménka), já to vždycky dělám tak, aby mi vyšlo co má vyjít. Je teda možné i to, že je to blbě, a má tam být někde minus, moc se mi nad tím teď nechce bádat.

Navíc, tak jak jsem to popsal, dostaneme úhel v rozsahu -90° ... 270°, a pokud se nám to nelíbí, tak si ho ještě musíme upravit. Vzhledem k periodicitě funkci sin a cos můžeme k úhlu vždycky přičíst nebo odečíst 360° ([mathjax]2 \pi[/mathjax]) a dostaneme stejný výsledek. Takže když se nám nelíbí hodnoty v rozsahu 0 ... -90°, přičteme si 360°.

No a aby se těmihle dost komplikovanými podmínkami člověk nemusel při každém počítání zabývat, tak se používá funkce arg(x,y) nebo se také nazývá atan2(x,y), která už tohle všechno udělá za nás. Protože žádný "hezký vzorec" se na to vymyslet nedá. Obecně se to musí v každém kvadrantu počítat jinak (já jsem to trochu zjednodušil, že se dá použít vždy ve dvou kvadrantech stejný vzorec, ale pak ten úhel nevychází úplně tak, jak bychom chtěli).

Další věc je, že se taky blbě pamatuje, které z těch dvou písmenek A,B je které. Na to jsou lepší právě ta komplextní čísla, protože tam máme reálnou část (Re) a imaginární část (Im), takže v tom vzorci je vždycky [mathjax]\arctan \frac{Im}{Re}[/mathjax], což když si člověk jednou zapamatuje, tak už je navždy jasné, co je co.

Offline

 

#14 14. 03. 2024 09:40

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

Ještě jsem na začátku zmínil, že číslo C si můžeme v principu zvolit záporné. Pokud po tom toužíme, tak si ho nejdříve zvolíme kladné, spočítáme správný úhel, a jeho změnu za záporné pak "vykompenzujeme" tím, že k úhlu [mathjax]\varphi[/mathjax] přidáme dalších 180°, tedy [mathjax]\pi[/mathjax]

Důkaz:
[mathjax]\sin (\varphi + \pi) = \sin \varphi \cos \pi + \cos \varphi \sin \pi=\sin \varphi \cdot(-1) + \cos \varphi \cdot 0=- \sin \varphi[/mathjax]

Offline

 

#15 14. 03. 2024 09:52

MichalAld
Moderátor
Příspěvky: 5047
Reputace:   126 
 

Re: Goniometrický vzorec

Ale jinak si stačí zapamatovat to, co napsal Mák, tedy že:

mák napsal(a):

Místo funkce arg, lze použít funkci atan2 (Excel, Calc):
[mathjax]A\,\sin x+B\,\cos x=\sqrt{B^2+A^2}\,\sin \left(x+{\rm atan2}\left(A , B\right)\right)[/mathjax]

Jen je třeba vždycky dávat pozor v jakém pořadí píšeme ta písmenka do funkce atan2(x,y). Když si nejsme jistí, tak si to vyzkoušíme na nějakém jednoduchém případu, s jedničkami a nulami, třeba.

Offline

 

#16 14. 03. 2024 10:05

kastanek
Příspěvky: 180
Škola: G
Pozice: student
Reputace:   
 

Re: Goniometrický vzorec

↑ MichalAld:
Díky za vyčerpávající odvození!
Já to C odvodil stejně, D pak derivací.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson