На малюнку нижче показана схема RLC. Схема RLC - електрична схема, що складається з резистора (R), індуктора (L) і конденсатора (C), з'єднаних послідовно або паралельно. (1)
Для спрощення обчислень прийнято працювати в частотній (Laplace) області замість часової.
Ваше завдання:
Візьміть значення R
, L
і в C
якості вхідних даних, і повертати напруги VR
, VL
іVC
Перетворення в домен Лапласа відбувається наступним чином:
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
(Частота - 50 Гц).
Комбінований опір, коли компоненти послідовно є 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 = ...
), якщо результати будуть у тому ж порядку, як наведено нижче. Точність повинна бути не менше 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
a" j
(поширене в електротехніці, i
яке використовується для струму).
Щоб перевірити результат для інших значень R, L і С, наступне має бути істинним для всіх результатів: VR + VL + VC = 1
.
Виграє найкоротший код у байтах!
До речі: Так, це напруга над компонентом, і струм через компонент. Напруга ніколи нічого не проходило. =)