更新 PV/pv_total.py
This commit is contained in:
parent
37bae4baa0
commit
04a4f39759
|
@ -3,8 +3,8 @@ import math
|
||||||
from scipy.optimize import fsolve
|
from scipy.optimize import fsolve
|
||||||
|
|
||||||
# 默认文件路径
|
# 默认文件路径
|
||||||
TILT_EXCEL_PATH = r"D:/A_software/research/Git/git_home/PV/peak_sunshine.xlsx" #各地区峰值小时数(注意城市名
|
TILT_EXCEL_PATH = r"./peak_sunshine.xlsx" #各地区峰值小时数和倾角(注意城市名
|
||||||
PV_EXCEL_PATH = r"D:/A_software/research/Git/git_home/PV/pv_product.xlsx" #部分光伏组件数值
|
PV_EXCEL_PATH = r"./pv_product.xlsx" #部分光伏组件数值
|
||||||
|
|
||||||
|
|
||||||
def calculate_pv_metrics(city, component_name, electricity_price, pv_number, q, longitude, latitude,
|
def calculate_pv_metrics(city, component_name, electricity_price, pv_number, q, longitude, latitude,
|
||||||
|
@ -54,18 +54,19 @@ def calculate_pv_metrics(city, component_name, electricity_price, pv_number, q,
|
||||||
df = pd.read_excel(excel_path)
|
df = pd.read_excel(excel_path)
|
||||||
if len(df.columns) < 5:
|
if len(df.columns) < 5:
|
||||||
raise ValueError("Excel文件需包含至少5列:城市、倾角、峰值日照小时数等")
|
raise ValueError("Excel文件需包含至少5列:城市、倾角、峰值日照小时数等")
|
||||||
row = df[df.iloc[:, 1] == city]
|
row = df[df.iloc[:, 2] == city]
|
||||||
if row.empty:
|
if row.empty:
|
||||||
raise ValueError(f"未找到城市:{city}")
|
raise ValueError(f"未找到城市:{city}")
|
||||||
return {"city": city, "tilt": row.iloc[0, 2], "peak_sunshine_hours": row.iloc[0, 14]}
|
return {"city": city, "tilt": row.iloc[0, 3], "peak_sunshine_hours": row.iloc[0, 4]}
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
raise FileNotFoundError(f"未找到Excel文件:{excel_path}")
|
raise FileNotFoundError(f"未找到Excel文件:{excel_path}")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
raise Exception(f"读取Excel出错:{e}")
|
raise Exception(f"读取Excel出错:{e}")
|
||||||
|
|
||||||
# 2. 计算倾角和方位角
|
# 2. 计算倾角和方位角
|
||||||
def get_tilt_and_azimuth(is_fixed, optimize, longitude, city, excel_path=TILT_EXCEL_PATH,
|
def get_tilt_and_azimuth(is_fixed=True, optimize=True, longitude=116, city=None, excel_path=TILT_EXCEL_PATH,
|
||||||
peak_load_hour=peak_load_hour):
|
peak_load_hour=16):
|
||||||
|
"""计算光伏系统的倾角和方位角"""
|
||||||
if optimize and not city:
|
if optimize and not city:
|
||||||
raise ValueError("优化模式下需提供城市名称")
|
raise ValueError("优化模式下需提供城市名称")
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue