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
Dobrý den,
pří řešení chemických rovnováh jsem narazil na, pro mě trochu těžko řešitelný problém, který lze popsat obecnou matematickou rovnicí:
[mathjax2]\displaystyle y=\text{A}\cdot{x}+\text{B}\cdot{x}+\text{C}\cdot{x}^{3}+\text{D}\cdot{x}[/mathjax2]
a z této rovnice potřebuji vyjádřit na levou stranu [mathjax]x[/mathjax] a na pravou stranu zbytek rovnice, přičemž [mathjax]\text{A};\text{B};\text{C};\text{D}[/mathjax] jsou různé konstanty. Je to řešitelné a popřípadě jak?
Děkuji za odpovědi!
Offline
Pokud je [mathjax]C=0[/mathjax], jde o lineární rovnici, což je snadné (nebudu rozebírat).
Pokud je [mathjax]C\ne 0[/mathjax], jde o kubickou rovnici [mathjax]Cx^3+(A+B+D)x-y=0[/mathjax], která v obecném tvaru vůbec nemá hezká vyjádření podmínek pro počet řešení, ani hezká vyjádření pro [mathjax]x[/mathjax].
Takže jde to, ale pro ruční zpracování to obecně nemá smysl (pro konkrétní hodnoty už by to šlo). Pokud bys to chtěl zadat jako nějaký obecný vzorec do počítače, můžeme to rozebrat dál.
Offline
Děkuji za odpověď.
Bohužel platí, že [mathjax]\text{C}\neq 0[/mathjax]. Jde mi o vyjádření [mathjax]x[/mathjax] jelikož v rámci chemických rovnováh se pod ní skrývá distribuční křivka kationtu a tu potřebuji vynést do grafu.
Offline
↑ Joe Hallenbeck:
Pokud jde jen o graf, vykreslil bych v nějakém softwaru (např. GeoGebra) původní funkci y(x) v závislosti na posuvnících A, B, C, D a k ní bych vytvořil graf inverzní funkce (přes osovou souměrnost dle y = x).
V případě, že se očekává právě jeden kladný kořen, přičemž existují další dva nekladné, by vyjádření bylo docela snesitelné:
[mathjax]x=\sqrt{\frac{4(A+B+D)}{-3C}}\cdot \cos \left( \frac{1}{3}\arccos \sqrt{\frac{-27CY^2}{4(A+B+D)^3}}\right)[/mathjax]
Jsou nějaká (chemická) omezení pro možné hodnoty A, B, C, D, y? Pak by se možná rozumně vyřešily všechny reálné situace.
Edit:
Pokud by bylo jen jedno reálné řešení, pak by vyjádření bylo:
[mathjax]x=\sqrt[3]{\frac{y}{2C}+\sqrt{\frac{y^2}{4C^2}+\frac{(A+B+D)^3}{27C^3}}}+\sqrt[3]{\frac{y}{2C}-\sqrt{\frac{y^2}{4C^2}+\frac{(A+B+D)^3}{27C^3}}}[/mathjax]
Offline
Omezení jsou dané. Proměnná [mathjax]x[/mathjax], ta vyjadřuje koncentraci a ta být záporná nemůže z fyzikální podstaty, může nabývat pouze nulové, nebo kladné hodnoty.
Co se týče konstant [mathjax]\text{A}[/mathjax],[mathjax]\text{B}[/mathjax],[mathjax]\text{C}[/mathjax],[mathjax]\text{D}[/mathjax], tak ty obsahují součin disociační konstanty a koncentrace [mathjax]\text{H}^{+}[/mathjax] iontů, nebo součin disociační konstanty a koncentrace dalších forem příslušného iontu, tzn. neměly by dosahovat záporných hodnot, vždy jen kladné hodnoty, nebo nulové v závislosti na hodnotě pH.
Offline
↑ Joe Hallenbeck:
V tom případě je to ten druhý předpis se třetími odmocninami, možná lépe takto:
[mathjax]x=\sqrt[3]{\frac{y}{2C}+\sqrt{\left(\frac{y}{2C}\right)^2+\left(\frac{A+B+D}{3C}\right)^3}}+\sqrt[3]{\frac{y}{2C}-\sqrt{\left(\frac{y}{2C}\right)^2+\left(\frac{A+B+D}{3C}\right)^3}}[/mathjax]
Mimochodem, co vyjadřuje to y?
Offline
Hodnota [mathjax]y[/mathjax] vyjadřuje celkovou koncentraci všech forem daného iontu. Výsledná rovnice s vyjádřením x-ové proměnné pak popisuje závislost výskytu konkrétní formy iontu na hodnotě pH. Jestli to bude lepší na pochopení, mohu danou rovnici vypsat tak jak jí mám odvozenou.
Offline
↑ Joe Hallenbeck:
To není potřeba, jen jsem se chtěl ujistit, že y je také nějaká konstanta, která vstupuje do výsledného vzorce.
Offline
Základní bilanční rovnice:
[mathjax2]c_{\text{Mg}^{2+}}=\left[\text{Mg}^{2+}\right]+\left[\text{NH}_{4}\text{Mg}\text{PO}_{4}\right]+\left[\text{Mg}\left(\text{OH}_{2}\right)\right]+\left[\text{Mg}_{3}\left(\text{PO}_{4}\right)_{2}\right]+\left[\text{Mg}\text{H}_{2}\left(\text{PO}_{4}\right)^{+}\right]+\left[\text{Mg}\text{H}\text{PO}_{4}\right]+\left[\text{Mg}\left(\text{PO}_{4}\right)^{-}\right]+[/mathjax2]
[mathjax2]
+\left[\text{Mg}\left(\text{OH}\right)^{+}\right]
[/mathjax2]
Některé formy vázaného [mathjax]\text{Mg}^{2+}[/mathjax] si mohu vyjádřit přes koncentraci volného kationtu [mathjax]\left[\text{Mg}^{2+}\right][/mathjax]:
[mathjax2]
c_{\text{Mg}^{2+}}=\left[\text{Mg}^{2+}\right]+\frac{\left[\text{NH}_{4}^{+}\right]\left[\text{Mg}^{2+}\right]\left[\text{PO}_{4}^{3-}\right]}{\text{K}_{\text{S}1}}+\frac{\left[\text{Mg}^{2+}\right]\left[\text{OH}^{-}\right]^{2}}{\text{K}_{\text{S}2}}+\frac{\left[\text{Mg}^{2+}\right]^{3}\left[\text{PO}_{4}\right]^{2}}{\text{K}_{\text{S}3}}+\beta_{0}\left[\text{Mg}^{2+}\right]\left[\text{HPO}_{4}^{2-}\right]+[/mathjax2]
[mathjax2]
+\beta_{1}\left[\text{Mg}^{2+}\right]\left[\text{H}_{2}\text{PO}_{4}^{-}\right]+\beta_{2}\left[\text{Mg}^{2+}\right]\left[\text{PO}_{4}^{3-}\right]+\beta_{3}\left[\text{Mg}^{2+}\right]\left[\text{OH}^{-}\right]
[/mathjax2]
a když vyjádřím [mathjax]\left[\text{Mg}^{2+}\right][/mathjax] na levou stranu a vše ostatní na pravou stranu, tak získám bilanci volných hořečnatých kationtů ve vodném roztoku a o to mi jde. :-)
Offline
↑ MichalAld:
V jednom grafu je celkem osm křivek a každá vyjadřuje závislost konkrétní sloučeniny ze základní bilanční rovnice (což je ta první) na pH, to má být výsledek mé snahy. Bordel mi v tom dělá právě ten čtvrtý člen, který obsahuje třetí mocninu volného hořečnatého kationtu:
[mathjax2]+\frac{\left[\text{Mg}^{2+}\right]^{3}\left[\text{PO}_{4}^{3-}\right]^{2}}{\text{K}_{\text{S}3}} +[/mathjax2]
Členové v hranatých závorkách představují koncentraci konkrétní sloučeniny/iontu, tzn. fyzikální význam je takový, že buď může tento člen být nulový, nebo kladný. Koncentrace nikdy nemůže být záporná.
Offline
↑ surovec:
Děkuji!
Mohu se zeptat, jak jste na to přišel? Rád bych pochopil jak to funguje. :-)
Offline
↑ Joe Hallenbeck:
Rovnici 3. řádu lze sice vyřešit analyticky, jsou to tzv. Cardanovy vzorce, ale běžně se to nedělá.
Rovnice 3. řádu má obecně 3 kořeny (3 řešení), takže obecně nic jako inverzní funkce neexistuje (nebyla by jednoznačná). Za jistých podmínek (když je zrovna daná funkce prostá) to samozřejmě jít může.
Další problém s Cardanovými vzorcemi je ten, že i když má rovnice jednoduché reálné kořeny, musíme se k nim dobrat skrze odmocniny z komplexních čísel, což je pro normální použití poněkud pracné.
Ve všech praktických případech co znám se kořeny takovýchto rovnic hledají numericky, například Newtonovou metodou, případně metodou půlení intervalu (tu bys určitě dokázal i naprogramovat).
Proč jsi to vlastně dal do středoškolské matematiky? Tohle (řešení kubické rovnice) určitě středoškolská úloha není.
Offline
↑ MichalAld:
Děkuji za odpověď :-)
No dal jsem to sem z neznalosti hloubky problematiky a za to se upřímně omlouvám.
Newtonovu metodu "znám", sice jsem nikdy nepátral do hloubky jak funguje, ale využíval jsem jí při hledání řešení nelineárních regresních modelů na naměřená experimentální data - viz řešitel v Excelu 2007, a nebo Matlab. Matlab má ve statistickém balíčku, pro hledání řešení (ne)lineárních regresních modelů metodou nejmenších čtverců, vícero metod (algoritmů), například i Marquardtovu, přesněji Levenberg-Marquardtovu metodu (algoritmus). Přiznám se ale, že úplně nevím, čím se konkrétně jednotlivé algoritmy liší, tak do hloubky jsem to nikdy nestudoval.
Jsem chemik a z matematiky řeším většinou diferenciální rovnice a tento problém mi sice ležel v hlavě už delší dobu, ale nikdy jsem se nepustil do jeho řešení. Až nyní, při řešení rovnováh, jsem na něj opět narazil. Pokud je to možné, budu rád, když se téma přesune do vysokoškolské matematiky kam zjevně patří.
Offline
↑ Joe Hallenbeck:
Ahoj,
pokud to správně chápu, znáš A, B, C, D a y v rovnici
[mathjax2]\displaystyle y=\text{A}\cdot{x}+\text{B}\cdot{x}+\text{C}\cdot{x}^{3}+\text{D}\cdot{x}[/mathjax2]
a potřebuješ znát x.
Obecné řešení je dost komplikované - viz ↑ surovec:, ↑ surovec:
Je lépe to řešit numericky, ale to se líp vysvětluje na konkrétném příkladě. Takže možná by bylo dobré sem dát konkrétní příklad (konkrétní hodnoty) A, B, C, D, y.
Offline
↑ Joe Hallenbeck:
Newtonova metoda je celkem hezky a jednoduše popsána tady, včetně celkem srozumitelné animace.
Pokud má křivka správný tvar, tak to konverguje velmi rychle, pro praktické použití stačí pár kroků. Podmínka je, že dokážeme spočítat derivaci té funkce, což je u polynomů brnkačka.
Na druhou stranu, za jistých podmínek to k výsledku nekonverguje. U polynomů to asi nehrozí, ale obecně se na to musí dávat pozor.
Existuje samozřejmě plejáda různých jiných metod, jak řešit rovnice typu f(x) = 0, každá má své výhody a nevýhody. Úplně nejjednodušší je asi metoda půlení intervalu.
Pokud najdeme dvě x taková, že f(x1) > 0 a f(x2) < 0, prostě "nalevo" a "napravo" od průsečíku s osou, tak nové x3 umístíme přesně mezi ty dvě původní x1 a x2, a podle toho, jestli je f(x3) větší či menší než 0 vybereme jeden z těch dvou intervalů, a celý proces opakujeme...
Není k tomu třeba nic víc než umět vypočítat tu funkci f(x), a 10 kroků nám stačí k tomu, abychom výsledek zpřesnili 1000-krát. Takže pro běžné použití úplně v poho.
Offline
↑ Eratosthenes:
Je to takové zažité tvrzení, že kubickou rovnici je lepší řešit numericky. Ale já s tím silně nesouhlasím, neboť Cardanův vzorec dává přesné řešení a při zpracování na počítači je i jednodušší na aplikaci (přičemž počítač stejně musí být použit u obou metod). Navíc, na rozdíl od numerických metod, ho snadno zvládne i kalkulačka.
V tomto případě navíc díky podmínkám nikdy nepůjde o casus irreducibilis, takže bude vždy platit jen vzorec ↑ surovec:, ve kterém se NEVYSKYTUJÍ odmocniny z imaginárních čísel (↑ MichalAld:). Také zde jde o tzv. redukovanou kubickou rovnici, což použití Cardanových vzorců dost zjednodušuje.
I v případě casus irreducibilis se však lze obejít bez odmocňování komplexních čísel a to dokonce více způsoby.
Offline
↑ surovec:
Těžko říct. Analytické řešení má svůj půvab, protože se dá udělat v písmenkách, což může být někdy docela důelžité.
Ale jinak - když už bych to musel řešit, sehnal bych si nějakou knihovnu, která kořeny polynomů dokáže hledat, a bylo by mi celkem jedno, jak to dělá.
Zajímavějším se to stává, když je to třeba řešit v reálném čase. Jenže i tam mohou numerické metody snadno vyhrát, protože výpočet té odmocniny je pro procesor docela problematický, a o třetí odmocnině ani nemluvě. Zatímco při numerickém řešení potřebuje člověk nanejvýš dělení (případně, při použití jednodušších metod, jen sčítání a násobení).
Já netvrdím, že numerické řešení je lepší, ale je spíš univerzálnější. Ony se rovnice 3. stupně vyskytují dost zřídka, většinou lze problém buď zjednodušit až na rovnici stupně 2 (základní věta techniky - vše lze zjednodušit až na kvadratickou rovnici, či lin. dif. rovnici 2. řádu), a nebo to popisuje rovnice složitější, kterou stejně jinak než numericky řešit nejde.
Že zrovna tady vychází kubická rovnice, a ještě s jedním reálným řešením je spíš taková rarita.
Taky by se mělo prověřit (než to člověk začne používat pro výpočet) jestli u takto komplikovaných vzorců nemůže docházet k nějakým zaokrouhlovacím chybám, to je takový dost nepříjemný problém.
Offline
↑ surovec:
OK, ona je to věc účelu a možností. Já jsem si řešení nelineárních rovnic kdysi naprogramoval a je úplně jedno, jestli tomu zadám nějakou transcendentní šílenost, anebo polynom, natož abych zjišťoval, jaký to má stupeň, anebo dokonce znamínka koeficientů. Takže to beru z tohoto pohledu. Ale jak říkám - proti gustu žádný dišputát.
Pro kolegu by stejně asi bylo nejjednodušší zadat to do Wolfamu a má po problému...
Offline
↑ Joe Hallenbeck:
Ahoj, takéto niečo by sa asi žiadalo popísať analyticky.
https://www.researchgate.net/figure/Dis … _327712938
(To sú krásne krivky.)
Offline
↑ pietro:
v podstatě přesně to počítám. Když vynechám v základní bilanční rovnici [mathjax]\text{Mg}_{3}\left(\text{PO}_{4}\right)_{2}[/mathjax] tak řešení je triviální a není problém takový graf vypočítat. To už mám. Problém je, že se bude, v určitých hodnotách pH, srážet i ten [mathjax]\text{Mg}_{3}\left(\text{PO}_{4}\right)_{2}[/mathjax], takže vynechat jej, není úplně správné.
Offline
surovec napsal(a):
↑ Joe Hallenbeck:
V tom případě je to ten druhý předpis se třetími odmocninami, možná lépe takto:
[mathjax]x=\sqrt[3]{\frac{y}{2C}+\sqrt{\left(\frac{y}{2C}\right)^2+\left(\frac{A+B+D}{3C}\right)^3}}+\sqrt[3]{\frac{y}{2C}-\sqrt{\left(\frac{y}{2C}\right)^2+\left(\frac{A+B+D}{3C}\right)^3}}[/mathjax]
Mimochodem, co vyjadřuje to y?
Takže chápu-li dobře, tak Cardanův vzorec funguje pro tuto rovnici:
[mathjax]
y=\text{A}\cdot{x}+\text{B}\cdot{x}+\text{C}\cdot{x}+\text{D}\cdot{x}^{3}+\text{E}\cdot{x}+\text{F}\cdot{x}+\text{G}\cdot{x}+\text{H}\cdot{x}
[/mathjax]
takto?:
[mathjax]x=\sqrt[3]{\frac{y}{2D}+\sqrt{\left(\frac{y}{2D}\right)^2+\left(\frac{A+B+C+E+F+G+H}{3D}\right)^3}}+\sqrt[3]{\frac{y}{2D}-\sqrt{\left(\frac{y}{2D}\right)^2+\left(\frac{A+B+C+E+F+G+H}{3D}\right)^3}}[/mathjax]
Offline
No, první krok jak si zjednodušit život je ten, že rovnici typu
[mathjax]y=Ax + Bx + Cx + Dx + Ex + ...[/mathjax]
si převedeš na rovnici
[mathjax]y=Px + ...[/mathjax]
kde to nové písmeno P je součet těch původních A+B+C+D+E...
A až najdeš řešení, tak si to tam můžeš zase zpátky napsat.
Offline