feat: add case demo module and streamline Model assets
This commit is contained in:
@@ -200,6 +200,37 @@ def create_root_locus_tab():
|
||||
""")
|
||||
return ui_dict
|
||||
|
||||
def create_case_demo_tab():
|
||||
"""创建算例演示选项卡的UI组件"""
|
||||
ui_dict = {}
|
||||
with gr.Row():
|
||||
with gr.Column(scale=1):
|
||||
with gr.Group():
|
||||
gr.HTML("<div class='card-title'>🧪 算例参数设置</div>")
|
||||
ui_dict["profile"] = gr.Dropdown(
|
||||
choices=["起飞-巡航-降落", "高机动阶跃", "经济巡航"],
|
||||
value="起飞-巡航-降落",
|
||||
label="工况模板"
|
||||
)
|
||||
ui_dict["sim_time"] = gr.Slider(minimum=20, maximum=180, value=60, step=5, label="仿真时长 (s)")
|
||||
ui_dict["dt"] = gr.Dropdown(choices=[0.02, 0.05, 0.1], value=0.02, label="仿真步长 (s)")
|
||||
ui_dict["initial_soc"] = gr.Slider(minimum=20, maximum=90, value=60, step=1, label="初始SOC (%)")
|
||||
ui_dict["initial_engine_power"] = gr.Slider(minimum=20, maximum=250, value=50, step=5, label="初始发动机功率 (kW)")
|
||||
ui_dict["rpm_scale"] = gr.Slider(minimum=0.6, maximum=1.4, value=1.0, step=0.05, label="目标转速缩放系数")
|
||||
ui_dict["load_scale"] = gr.Slider(minimum=0.6, maximum=1.4, value=1.0, step=0.05, label="负载转矩缩放系数")
|
||||
ui_dict["run_button"] = gr.Button("🚀 运行混动算例", variant="primary", elem_classes="primary-btn")
|
||||
with gr.Group():
|
||||
gr.HTML("<div class='card-title'>📝 结果解读</div>")
|
||||
ui_dict["summary"] = gr.Markdown()
|
||||
with gr.Column(scale=2):
|
||||
ui_dict["plot"] = gr.Plot(label="混动系统响应图")
|
||||
ui_dict["table"] = gr.Dataframe(
|
||||
headers=["时间(s)", "目标转速", "实际转速", "发动机功率(kW)", "电池功率(kW)", "SOC(%)"],
|
||||
label="关键时刻数据",
|
||||
interactive=False
|
||||
)
|
||||
return ui_dict
|
||||
|
||||
def create_chatbot_tab():
|
||||
"""创建AI问答选项卡的UI组件"""
|
||||
ui_dict = {}
|
||||
|
||||
Reference in New Issue
Block a user