Python. Ñïèñîê çàäà÷ 4. SciPy. Äâèæåíèå ÷àñòèöû âî âíåøíåì ýëåêòðîìàãíèòíîì ïîëå. 1 SciPy Ïàêåò SciPy (http://www.scipy.org/ ñîäåðæèò ðàçëè÷íûå èíñòðóìåíòû, ÷àñòî èñïîëüçóåìûå ïðè íàó÷íîì ïðîãðàììèðîâàíèè. Ìîäóëè â ïàêåòå ñîîòâåòñòâóþò ðàçëè÷íûì çàäà÷àì, òàêèì êàê èíòåðïîëÿöèÿ, èíòåãðèðîâàíèå, îïòèìèçàöèÿ, îáðàáîòêà èçîáðàæåíèé, ñïåöôóíêöèè è äðóãîå. Âî ìíîãîì SciPy äóáëèðóåò ñõîæèå èíñòðóìåíòû èç MATLAB èëè áèáëèîòåê Ñ++. SciPy îñíîâàí íà NumPy, è ðàáîòàåò ñ ìàññèâàìè è ìàòðèöàìè NumPy. èç Ïåðåä òåì, êàê ïûòàòüñÿ ñàìîñòîÿòåëüíî ðåàëèçîâàòü êàêóþ-òî çàäà÷ó (íàïðèìåð, ÷èñëåííîå èíòåãðèðîâàíèå êàêèì-ëèáî ìåòîäîì), èìååò ñìûñë ïðîâåðèòü, íå ðåàëèçîâàíà ëè ýòà çàäà÷à â ïàêåòå SciPy, òàê êàê âðÿä ëè ïîëó÷èòñÿ ðåàëèçîâàòü å¼ áîëåå ýôôåêòèâíî, åñëè âû íå ÿâëÿåòåñü ïðîôåññèîíàëîì â ýòîé îáëàñòè. SciPy õîðîøî îòòåñòèðîâàí è îïòèìèçèðîâàí, è ñòîèò ïîëüçîâàòüñÿ èì, êîãäà ýòî âîçìîæíî. Çàäàíèå 1. Îçíàêîìüòåñü ñ âîçìîæíîñòÿìè SciPy. Âñå ìîäóëè ïåðå÷èñëåíû â äîêóìåíòàöèè http://docs.scipy.org/doc/scipy/reference/. Òàì æå ìîæíî íàéòè äîêóìåíòàöèþ ïî âñåì ôóíêöèÿì SciPy. Âîçìîæíîñòè SciPy î÷åíü áîëüøèå, ïîýòîìó âî ââåäåíèè ïðåäëàãàåòñÿ ïîçíàêîìèòüñÿ ëèøü ñ íåêîòîðûìè èç íèõ, à èìåííî ñ ëèíåéíîé àëãåáðîé, ïîèñêîì ìèíèìóìîâ (îïòèìèçàöèÿ), íàõîæäåíèåì êîðíåé óðàâíåíèé, ôèòèðîâàíèåì è èíòåãðèðîâàíèåì. Èçó÷èòå âîçìîæíîñòè ìîäóëåé, à òàê æå ðàçáåðèòå è ïðîäåëàéòå ïðåäëîæåííûå íèæå ïðèìåðû (è ïîñòðîéòå ãðàôèêè èç ïðèìåðîâ). scipy.linalg. Îçíàêîìüòåñü ñ âîçìîæíîñòÿìè ìîäóëÿ scipy.linalg: http://docs. scipy.org/doc/scipy/reference/linalg.html#scipy.linalg. Ïðîäåëàéòå ïðèìåðû: http://scipy-lectures.github.io/intro/ scipy.html#linear-algebra-operations-scipy-linalg 2. Ëèíåéíàÿ àëãåáðà, ìîäóëü 1 3. Îïòèìèçàöèÿ è ïîèñê êîðíåé óðàâíåíèé, ôèòèðîâàíèå, ìîäóëü scipy.optimize. Âîçìîæíîñòè ìîäóëÿ: http://docs.scipy.org/doc/scipy/reference/ optimize.html#scipy.optimize. Ïðîäåëàéòå ïðèìåðû: http://scipy-lectures.github.io/intro/ scipy.html#optimization-and-fit-scipy-optimize scipy.interpolate. Âîçìîæíîñòè ìîäóëÿ: http://docs.scipy.org/doc/scipy/reference/ interpolate.html#scipy.interpolate. Ïðèìåðû: http://scipy-lectures.github.io/intro/scipy.html# interpolation-scipy-interpolate. 4. Èíòåðïîëÿöèÿ, scipy.integrate. Äîêóìåíòàöèÿ: http://docs.scipy.org/doc/scipy/reference/integrate. html#scipy.integrate. Ïðèìåðû: http://scipy-lectures.github.io/intro/scipy.html# numerical-integration-scipy-integrate. 5. Èíòåãðèðîâàíèå (â ò.÷. ñèñòåì ÎÄÓ), 2 Äâèæåíèå ÷àñòèöû âî âíåøíåì ýëåêòðîìàãíèòíîì ïîëå Íàïèøèòå ïðîãðàììó, êîòîðàÿ ðèñóåò òðàåêòîðèè äâèæåíèÿ ðåëÿòèâèñòñêîé çàðÿæåííîé ÷àñòèöû â ïðîèçâîëüíîì âíåøíåì ýëåêòðîìàãíèòíîì ïîëå. 1. Óðàâíåíèÿ äâèæåíèÿ ÷àñòèöû âî âíåøíåì ïîëå ìîæíî çàïèñàòü êàê dp 1 = e E + [v × H] dt dx = dt c  ðåëÿòèâèñòñêîì ñëó÷àå ìîæíî âûðàçèòü p 1/ 1 − (v/c)2 = p0 = mcu0 = mcγ p è (1) v 1 + (p/mc)2 (ïîñëåäíåå (p0 )2 = m2 c2 + p2 ). p = mγ v, ãäå γ = ñëåäóåò èç òîãî, ÷òî Òàêèì îáðàçîì, äëÿ ðåøåíèÿ çàäà÷è íåîáõîäèìî ïðîèíòåãðèðîâàòü ñèñòåìó ÎÄÓ. Äëÿ ýòîãî ìîæíî èñïîëüçîâàòü ìîäóëü scipy.integrate scipy, íàïðèìåð, ôóíêöèþ odeint (http://docs.scipy. org/doc/scipy/reference/generated/scipy.integrate.odeint.html# scipy.integrate.odeint) èç ïàêåòà 2. Îáåçðàçìåðüòå ñèñòåìó óðàâíåíèé (1). Íàïðèìåð, äëÿ ýòîãî ìîæíî èñïîëüçîâàòü êîìïòîíîâñêèå åäèíèöû: lC = h̄/mc, tC = c/lC , pC = mc, Ec = m2 c3 /eh̄ (ïîñëåäíÿÿ âåëè÷èíà â êâàíòîâîé ýëåêòðîäèíàìèêå íàçûâàåòñÿ êðèòè÷åñêèì ïîëåì, ýòî ïîëå ÿâëÿåòñÿ õàðàêòåðíûì äëÿ ïðîöåññîâ ÊÝÄ âî âíåøíåì ïîëå, ïîñòîÿííîå ýëåêòðè÷åñêîå 2 ïîëå âåëè÷èíû íà ðàññòîÿíèè Ec ñîâåðøàåò ðàáîòó íàä ýëåêòðîíîì ïîðÿäêà mc2 lC ). Ìîæíî îáåçðàçìåðèòü è êàêèì-ëèáî äðóãèì ñïîñîáîì. 3. Íàïèøèòå ïðîãðàììó, êîòîðàÿ ðåøàåò ñèñòåìó óðàâíåíèé (1) â ïîñòîÿííîì ñêðåùåííîì ïîëå E = (E, 0, 0), H = (0, E, 0) äëÿ ýëåêòðîíà p(t = 0) = p0 , x(t = ñ ïðîèçîâîëüíûìè íà÷àëüíûìè óñëîâèÿìè 0) = x0 . 4. Ïîñòðîéòå òðàåêòîðèè äâèæåíèÿ ÷àñòèö ñ ïîìîùüþ matplotlib.pyplot.  ÷àñòíîñòè, ïîñòðîéòå ïðîåêöèè íà ïëîñêîñòè (x, y), (y, z) è (x, z). Òàêæå ïîïðîáóéòå ïîñòðîèòü òðåõìåðíûé ãðàôèê. 5. Äëÿ ïîñòîÿííîãî ñêðåùåííîãî ïîëÿ èçâåñòíî òî÷íîå ðåøåíèå (ñì. Ëàíäàó-Ëèôøèö, òîì 2, çàäà÷à 2 ê ïàðàãðàôó 22). Ñðàâíèòå ÷èñëåííîå ðåøåíèå ñ òî÷íûì ðåøåíèåì. 6. Îáîáùèòå àëãîðèòì íà ñëó÷àé ïîëåé ïðîèçâîëüíîé êîíôèãóðàöèè, çàâèñÿùèõ îò âðåìåíè è ïðîñòðàíñòâåíûõ êîîðäèíàò. Ïîñòðîéòå òðàåêòîðèè äâèæåíèÿ ýëåêòðîíà â ïëîñêîé âîëíå, âî âðàùàþùåìñÿ îäíîðîäíîì ýëåêòðè÷åñêîì ïîëå. Ïîïðîáóéòå èññëåäîâàòü áîëåå ñëîæíûå êîíôèãóðàöèè. 3