# -*- coding: utf-8 -*-
"""
Created on Tue Nov 8 21:35:17 2022
@author: 19544
"""
# -*- coding: utf-8 -*-
"""
Created on Tue Nov 8 17:04:40 2022
Models for Solving Leveling Problem
@author: 19544
"""
import math
print("这是数据输入区:")
BMAheight = 36.444
BMBheight = 85.997
print("水准点A的高程:",BMAheight)
print("水准点B的高程:",BMBheight)
print("请输入水准点B的高程:")
number_of_station = 4
print("高程待定的水准点数为",number_of_station)
# BMAheight = float(input("请输入附合水准路线起点BM.A的高程:"))
# BMBheight = float(input("请输入附合水准路线终点BM.B的高程"))
distance_label = ['A1','12','23','34','4B']
distance=([round(1.8,1),2.0,1.4,2.6,1.2])
print("从A点到B点各个水准点之间的距离(单位:km):", distance)
d_dict = dict(zip(distance_label, distance))
print(d_dict)
level_d =([round(+16.310,3), +13.133, +9.871, -3.112, +13.387])
print("从A点到B点各个水准点之间的高差(单位:m):", level_d)
ld_dict = dict(zip(distance_label, distance))
print("这是结果区:")
print("*"*50)
d_sum = round(sum(distance),2)
print("距离的总和为:∑d =%dkm"%d_sum)
ld_sum = sum(level_d)
print("高差的总和为:∑△h =%.3fm"%ld_sum)
fh = round(ld_sum - (BMBheight - BMAheight),3)
print("高差的闭合差为:fh =%.3fm"% fh)
fh_permitted = 0.04*float(math.sqrt(d_sum))
print("高差的允许的闭合差上限为:fh允=%.3fm"%fh_permitted)
correction_v = [-0.007,-0.008,-0.006,-0.010,-0.005]
print("高差的改正值为:")
print(correction_v)
result = [i + j for i, j in zip(level_d, correction_v)]
result[0] = round(result[0],3)
print("改正后高差为:")
print(result)
print("各个水准点高程为(单位:米):")
BM1 = BMAheight + result[0]
BM2 = BM1 + result[1]
BM3 = BM2 + result[2]
BM4 = BM3 + result[3]
print("BMA:", BMAheight)
print("BM1:",BM1)
print("BM2:",BM2)
print("BM3:",BM3)
print("BM4",BM4)
print("BMB:", BMBheight)
02-26