diff --git a/core.py b/core.py
index 23726c1..6c40479 100644
--- a/core.py
+++ b/core.py
@@ -26,6 +26,8 @@ class Parameter:
Ip_a: float # 概率密度曲线系数a
Ip_b: float # 概率密度曲线系数b
ac_or_dc: str # 交流或直流标识,"AC" 或 "DC",默认 "AC"
+ z_0: float # 雷电波阻抗,默认 300
+ z_c: float # 导线波阻抗,默认 251
def rg_line_function_factory(_rg, ground_angel): # 返回一个地面捕雷线的直线方程
@@ -185,7 +187,7 @@ def solve_circle_line_intersection(
return [_x, _y]
-def min_i(string_len, u_ph, altitude: float = 0):
+def min_i(string_len, u_ph, altitude: float = 0, z_0: float = 300, z_c: float = 251):
# 海拔修正
if altitude > 1000:
k_a = math.exp((altitude - 1000) / 8150) # 气隙海拔修正
@@ -196,8 +198,6 @@ def min_i(string_len, u_ph, altitude: float = 0):
# u_50 = 1 / k_a * (477 * string_len + 99) # 串放电路径 2000m海拔
# u_50 = 615 * string_len # 导线对塔身放电 1000m海拔
# u_50= 263.32647401+533.90081562*string_len
- z_0 = 300 # 雷电波阻抗
- z_c = 251 # 导线波阻抗
# 新版大手册公式 3-277
r = (u_50 + 2 * z_0 / (2 * z_0 + z_c) * u_ph) * (2 * z_0 + z_c) / (z_0 * z_c)
# r = 2 * (u_50 - u_ph) / z_c
diff --git a/main.py b/main.py
index 22f5bde..6f8bf75 100644
--- a/main.py
+++ b/main.py
@@ -170,7 +170,7 @@ def run_egm(para: Parameter, animation=None) -> dict:
insulator_c_len = para.insulator_c_len
# i_min = min_i(insulator_c_len, u_ph / 1.732)
# TODO 需要考虑交、直流
- i_min = min_i(insulator_c_len, u_ph, para.altitude)
+ i_min = min_i(insulator_c_len, u_ph, para.altitude, para.z_0, para.z_c)
_min_i = i_min # 尝试的最小电流
_max_i = para.max_i # 尝试的最大电流
# cad.draw(i_min, u_ph, rs_x, rs_y, rc_x, rc_y, rg_x, rg_y, rg_type, 2)
diff --git a/webui/src/components/ParameterForm.vue b/webui/src/components/ParameterForm.vue
index 843853f..ff58fee 100644
--- a/webui/src/components/ParameterForm.vue
+++ b/webui/src/components/ParameterForm.vue
@@ -109,6 +109,24 @@