L'image ci-dessous montre un circuit RLC. Un circuit RLC est un circuit électrique composé d'une résistance (R), d'une inductance (L) et d'un condensateur (C), connectés en série ou en parallèle. (1)
Afin de simplifier les calculs, il est courant de travailler dans le domaine fréquentiel (Laplace) au lieu du domaine temporel.
Votre tâche est:
Prenez les valeurs R
, L
et C
comme entrée, et renvoyez les tensions VR
, VL
etVC
La conversion vers le domaine Laplace est la suivante:
R = R
XL = j*w*L // OK, XL = w*L, and ZL = j*XL, but don't mind this here.
XC = 1/(j*w*C) // I haven't ruined physics, it's only a minor terminology tweak
où j = sqrt(-1)
et w = 2*pi*50
(La fréquence est de 50 Hz).
L'impédance combinée, lorsque les composants sont en série, est Z = R + XL + XC
. Vous vous souvenez peut-être U = R*I
des cours de physique au lycée. Il est presque le même, mais un peu plus complexe maintenant: VS = Z*I
. Le courant est calculé en divisant la tension VS
par l'impédance totale Z
. Pour trouver la tension sur un seul composant, vous devez connaître le courant, puis le multiplier par l'impédance. Pour simplifier, la tension est supposée être VS = 1+0*j
.
Les équations dont vous pourriez avoir besoin sont:
XL = j*w*L
XC = 1/(j*w*C)
Z = R + XL + XC // The combined impedance of the circuit
I = VS / Z // The current I (Voltage divided by impedance)
VR = I * R // Voltage over resistance (Current times resistance)
VL = I * XL // Voltage over inductor (Current times impedance)
VC = I * XC // Voltage over capacitor (Current times impedance)
L'entrée provient de STDIN ou d'arguments de fonction. La sortie / le résultat doit être composé de trois nombres complexes, dans une liste, une chaîne ou tout ce qui est le plus pratique dans votre langue. Il n'est pas nécessaire d'inclure des noms (ex VR = ...
), tant que les résultats sont dans le même ordre que ci-dessous. La précision doit être d'au moins 3 décimales pour la partie réelle et imaginaire. L'entrée et la sortie / les résultats peuvent être en notation scientifique si c'est par défaut dans votre langue.
R
et L
sont >= 0
, et C > 0
. R, L, C <= inf
(ou le plus grand nombre possible dans votre langue).
Un cas de test simple:
R = 1, L = 1, C = 0.00001
VR = 0.0549 + 0.2277i
VL = -71.5372 +17.2353i
VC = 72.4824 -17.4630i
Pour les résultats ci-dessus, cela pourrait être un (parmi plusieurs) formats de sortie valides:
(0.0549 + 0.2277i, -71.5372 +17.2353i, 72.4824 -17.4630i)
Certains formats de sortie valides pour une valeur de tension sont les suivants:
1.234+i1.234, 1.23456+1.23456i, 1.2345+i*1.2345, 1.234e001+j*1.234e001.
Cette liste n'est pas exclusive, donc d'autres variantes peuvent être utilisées, tant que la partie imaginaire est indiquée par un i
ou un j
(commun en électrotechnique comme i
pour le courant).
Pour vérifier le résultat d'autres valeurs de R, L et C, ce qui suit doit être vrai pour tous les résultats: VR + VL + VC = 1
.
Le code le plus court en octets gagne!
Soit dit en passant: oui, c'est la tension sur un composant et le courant à travers un composant. Une tension n'a jamais traversé quoi que ce soit. =)