아래 그림은 RLC 회로를 보여줍니다. RLC 회로는 직렬로 또는 병렬로 연결된 저항 (R), 인덕터 (L) 및 커패시터 (C)로 구성된 전기 회로입니다. (1)
계산을 단순화하기 위해 시간 도메인 대신 주파수 (Laplace) 도메인에서 작업하는 것이 일반적입니다.
당신의 임무는 :
값을 가지고 R
, L
그리고 C
입력으로하고, 전압을 반환 VR
, VL
및VC
Laplace 도메인으로의 변환은 다음과 같습니다.
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
여기서 j = sqrt(-1)
및 w = 2*pi*50
(주파수는 50Hz입니다).
구성 요소가 직렬 일 때 결합 임피던스는 Z = R + XL + XC
입니다. U = R*I
고등학교 물리 강의에서 기억할 것입니다. 거의 동일하지만 지금 은 조금 더 복잡VS = Z*I
합니다. 전류는 전압 VS
을 총 임피던스 로 나누어 계산합니다 Z
. 단일 구성 요소의 전압을 찾으려면 전류를 알고 임피던스에 곱해야합니다. 간단히하기 위해 전압은로 가정합니다 VS = 1+0*j
.
필요한 방정식은 다음과 같습니다.
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)
입력은 STDIN 또는 함수 인수입니다. 출력 / 결과는 목록, 문자열 또는 사용자 언어에서 가장 실용적인 것의 세 가지 복소수 여야합니다. VR = ...
결과가 아래 순서와 동일한 경우 이름 (ex ) 을 포함 할 필요는 없습니다 . 실수 부와 허수 부의 정밀도는 소수점 3 자리 이상이어야합니다. 입력 및 출력 / 결과는 기본 언어 인 경우 과학적 표기법으로 표시 될 수 있습니다.
R
하고 L
있다 >= 0
, 그리고 C > 0
. R, L, C <= inf
(또는 귀하의 언어로 가능한 가장 높은 숫자).
간단한 테스트 사례 :
R = 1, L = 1, C = 0.00001
VR = 0.0549 + 0.2277i
VL = -71.5372 +17.2353i
VC = 72.4824 -17.4630i
위의 결과에서 이것은 하나의 유효한 출력 형식 중 하나 일 수 있습니다.
(0.0549 + 0.2277i, -71.5372 +17.2353i, 72.4824 -17.4630i)
하나의 전압 값에 대한 일부 유효한 출력 형식은 다음과 같습니다.
1.234+i1.234, 1.23456+1.23456i, 1.2345+i*1.2345, 1.234e001+j*1.234e001.
이 목록은 배타적이지 않으므로 허수 부가 i
또는로 표시되는 한 다른 변형을 사용할 수 있습니다 j
( i
전류에 사용되는 전기 공학에서 일반적 임 ).
R, L 및 C의 다른 값에 대한 결과를 확인하려면 모든 결과에 대해 다음이 참이어야합니다 VR + VL + VC = 1
..
바이트 단위로 가장 짧은 코드가 승리합니다!
그런데 : 네, 전압의 이상 구성 요소 및 전류 를 통해 구성 요소. 전압은 아무것도 통과하지 못했습니다. =)