"""Линейная катушка: вычислить потокосцепление и запасённую энергию.

Вход: постоянная L [Гн] и ток I [А]. Выход: Ψ [Вб·виток], W [Дж].
Встроенный MicroPython FEMM 5; это аналитическая модель без постоянных
магнитов, насыщения и полевого расчёта. Имя linkage_wb обозначает Ψ.
"""

# 1. Исходные данные заданы в СИ; единицы отражены в именах переменных.
inductance_h = 0.12
current_a = 2.0

# 2. Для постоянной L применяем Ψ = LI и W = LI²/2.
linkage_wb = inductance_h * current_a
energy_j = inductance_h * current_a ** 2 / 2

# 3. Сравниваем результаты с независимыми числами учебного примера.
assert abs(linkage_wb - 0.24) < 1e-12
assert abs(energy_j - 0.24) < 1e-12

# 4. Выводим обе величины с подписями единиц.
print('Потокосцепление, Вб:', linkage_wb, sep=' ')
print('Энергия, Дж:', energy_j, sep=' ')
