Riešenie obvodov metódou slučkových prúdov: Rozdiel medzi revíziami
d |
|||
(3 medziľahlé úpravy od jedného ďalšieho používateľa nie sú zobrazené) | |||
Riadok 1: | Riadok 1: | ||
+ | {{sablona_python_priklady|Elektronika}} | ||
__NOTOC__ | __NOTOC__ | ||
[[Category:Python]] | [[Category:Python]] | ||
Riadok 12: | Riadok 13: | ||
:<math> | :<math> | ||
− | + | R_1 J_1 + R_4 (J_1-J_2)=V_1 \, | |
</math> | </math> | ||
Riadok 19: | Riadok 20: | ||
:<math> | :<math> | ||
− | + | R_2 J_2 + R_5 (J_2-J_3) + R_4(J_2-J_1) = 0 \, | |
</math> | </math> | ||
Riadok 26: | Riadok 27: | ||
:<math> | :<math> | ||
− | - | + | -R_5 J_2 + (R_3+R_5)J_3 = -V_3 \, |
</math> | </math> | ||
− | Prepisom do maticového tvaru dostaneme výsledný tvar sústavy rovníc. Jej riešením získame hodnoty slučkových prúdov J1,J2 a J3. | + | Prepisom do maticového tvaru dostaneme výsledný tvar sústavy rovníc. Jej riešením získame hodnoty slučkových prúdov J1, J2 a J3. |
:<math> | :<math> | ||
\left[ \begin{array}{ccc} | \left[ \begin{array}{ccc} | ||
− | { | + | {R_1+R_4} & -R_4 & 0 \\ |
− | - | + | -R_4 & {R_2+R_4+R_5} & -R_5 \\ |
− | 0 | + | 0 & -R_5 & {R_3+R_5} \end{array} \right] |
\left[ \begin{array}{c} | \left[ \begin{array}{c} | ||
− | + | J_1 \\ | |
− | + | J_2 \\ | |
− | + | J_3 \end{array} \right] | |
= | = | ||
\left[ \begin{array}{c} | \left[ \begin{array}{c} | ||
− | + | V_1 \\ | |
− | 0 \\ | + | 0 \\ |
− | - | + | -V_3 \end{array} \right] |
</math> | </math> | ||
Riadok 71: | Riadok 72: | ||
<source lang="python"> | <source lang="python"> | ||
>>> J=solve(R,V) | >>> J=solve(R,V) | ||
+ | </source> | ||
+ | |||
+ | Hodnoty prúdov vetvami obvodu získame triviálnym výpočtom | ||
+ | <source lang="python"> | ||
+ | >>> I1=J[1] | ||
+ | >>> I2=J[2] | ||
+ | >>> I3=J[3] | ||
+ | >>> I4=J[1]-J[2] | ||
+ | >>> I5=J[2]-J[3] | ||
</source> | </source> | ||
=== Literatúra a odkazy === | === Literatúra a odkazy === | ||
<references/> | <references/> |
Aktuálna revízia z 11:36, 18. marec 2013
Maticové metódy rozširujúceho balíka Pythonu pylab[1] je možné použiť pre analýzu jednoduchej elektrickej siete metódou slučkových prúdov.
Analýza obvodu
Analyzovaný obvod pozostáva z rezistorov a napäťových zdrojov. V obvode sú vyznačené slučkové prúdy J1, J2 a J3.
Pre slučku J1 môžeme na základe druhého Kirchhofovho zákona písať
- [math] R_1 J_1 + R_4 (J_1-J_2)=V_1 \, [/math]
pre slučku J2
- [math] R_2 J_2 + R_5 (J_2-J_3) + R_4(J_2-J_1) = 0 \, [/math]
a pre slučku J3
- [math] -R_5 J_2 + (R_3+R_5)J_3 = -V_3 \, [/math]
Prepisom do maticového tvaru dostaneme výsledný tvar sústavy rovníc. Jej riešením získame hodnoty slučkových prúdov J1, J2 a J3.
- [math] \left[ \begin{array}{ccc} {R_1+R_4} & -R_4 & 0 \\ -R_4 & {R_2+R_4+R_5} & -R_5 \\ 0 & -R_5 & {R_3+R_5} \end{array} \right] \left[ \begin{array}{c} J_1 \\ J_2 \\ J_3 \end{array} \right] = \left[ \begin{array}{c} V_1 \\ 0 \\ -V_3 \end{array} \right] [/math]
Výpočet obvodu
V interaktívnom móde Pythonu (konzola, iPython[2]) importujeme balík pylab pre vedecké výpočty a inicializujeme vstupné premenné hodnotami komponentov obvodu
>>> from pylab import *
>>> R1=4.0; R2=6.0; R3=8.0; R4=10.0; R5=10.0
>>> V1=12; V3=6
Vytvoríme maticu rezistancií obvodu a vektor zdrojov
>>> R=mat([[R1+R4, -R4, 0],[-R1, R2+R4+R5, -R5],[0, -R5, R3+R5]])
>>> V=mat([V1, 0, -V3])
Pre riešenie sústavy rovníc potrebujeme transponovať riadkový vektor napätí na stľpcový vektor.
>>> V=transpose(V)
Riešenie sústavy rovníc získame príkazom
>>> J=solve(R,V)
Hodnoty prúdov vetvami obvodu získame triviálnym výpočtom
>>> I1=J[1]
>>> I2=J[2]
>>> I3=J[3]
>>> I4=J[1]-J[2]
>>> I5=J[2]-J[3]