修正emitters coefficients with UNITS settings
This commit is contained in:
@@ -26,6 +26,24 @@ import api_ex.Pdataclean
|
||||
############################################################
|
||||
# burst analysis 01
|
||||
############################################################
|
||||
def convert_to_local_unit(proj:str,emitters:float)->float:
|
||||
open_project(proj)
|
||||
proj_opt=get_option(proj)
|
||||
str_unit=proj_opt.get('UNITS')
|
||||
|
||||
if str_unit == 'CMH':
|
||||
return emitters * 3.6
|
||||
elif str_unit == 'LPS':
|
||||
return emitters
|
||||
elif str_unit == 'CMS':
|
||||
return emitters / 1000.0
|
||||
elif str_unit == 'MGD':
|
||||
return emitters * 0.0438126
|
||||
|
||||
# Unknown unit: log and return original value
|
||||
print(str_unit)
|
||||
return emitters
|
||||
|
||||
|
||||
def burst_analysis(name: str, modify_pattern_start_time: str, burst_ID: list | str = None, burst_size: list | float | int = None,
|
||||
modify_total_duration: int=900, modify_fixed_pump_pattern: dict[str, list] = None,
|
||||
@@ -94,7 +112,8 @@ def burst_analysis(name: str, modify_pattern_start_time: str, burst_ID: list | s
|
||||
burst_size_ = 3.14 * d_pipe * d_pipe / 4 / 8
|
||||
else:
|
||||
burst_size_ = burst_size_ / 10000
|
||||
emitter_coeff = 0.65 * burst_size_ * sqrt(19.6) * 1000#1/8开口面积作为coeff
|
||||
emitter_coeff = 0.65 * burst_size_ * sqrt(19.6) * 1000#1/8开口面积作为coeff,单位 L/S
|
||||
emitter_coeff =convert_to_local_unit(new_name, emitter_coeff)
|
||||
emitter_node = ''
|
||||
if is_junction(new_name, str_end_node):
|
||||
emitter_node = str_end_node
|
||||
@@ -112,7 +131,7 @@ def burst_analysis(name: str, modify_pattern_start_time: str, burst_ID: list | s
|
||||
# 涉及关阀计算,可能导致关阀后仍有流量,改为压力驱动PDA
|
||||
options = get_option(new_name)
|
||||
options['DEMAND MODEL'] = OPTION_DEMAND_MODEL_PDA
|
||||
options['REQUIRED PRESSURE'] = '20.0000'
|
||||
options['REQUIRED PRESSURE'] = '10.0000'
|
||||
cs_options = ChangeSet()
|
||||
cs_options.append(options)
|
||||
set_option(new_name, cs_options)
|
||||
@@ -1182,8 +1201,8 @@ if __name__ == '__main__':
|
||||
# burst_analysis(name='bb', modify_pattern_start_time='2025-04-17T00:00:00+08:00',
|
||||
# burst_ID='GSD230112144241FA18292A84CB', burst_size=400, modify_total_duration=1800, scheme_Name='GSD230112144241FA18292A84CB_400')
|
||||
|
||||
# # 示例:create_user
|
||||
# create_user(name=project_info.name, username='admin', password='123456')
|
||||
# 示例:create_user
|
||||
# create_user(name=project_info.name, username='tjwater dev', password='123456')
|
||||
|
||||
# # 示例:delete_user
|
||||
# delete_user(name=project_info.name, username='admin_test')
|
||||
@@ -1206,4 +1225,7 @@ if __name__ == '__main__':
|
||||
# pressure_sensor_placement_sensitivity(name=project_info.name, scheme_name='20250517', sensor_number=10, min_diameter=300, username='admin')
|
||||
|
||||
# 示例:pressure_sensor_placement_kmeans
|
||||
pressure_sensor_placement_kmeans(name=project_info.name, scheme_name='sensor_1103', sensor_number=35, min_diameter=300, username='admin')
|
||||
# pressure_sensor_placement_kmeans(name=project_info.name, scheme_name='sensor_1103', sensor_number=35, min_diameter=300, username='admin')
|
||||
|
||||
# 测试:convert emitters coefficients
|
||||
convert_to_local_unit("szh",100)
|
||||
Reference in New Issue
Block a user