我正在寻找一种方法来获取风速在我的每一个涡轮机。虽然,就我而言,弗洛里斯只工作一个风速作为输入,你应该有一种方法能够看到在尾声涡轮机上的风速,因为你需要在最后计算它,以达到整个风电场的电力。因此,我查阅了文档,我发现在floris.simulation.farm上有一个吸气器,它应该能够返回风电场风速的列表。这可以通过以下方式实现:
wind_speed = floris.farm.wind_speed()然而,当我试着遵循指令时,我只得到一个整数,那就是设定的风速。那么,是否有可能得到每台涡轮机的风速值?
发布于 2020-02-06 06:05:23
使用v1.1.4 of FLORIS,代码:
wind_speed = floris.farm.wind_speed()返回风电场的风速,它与在输入文件或代码中设置的风速相同。这是因为这是farm类的一个属性,用于返回农场级风速(有关属性的定义,请参阅源代码 )。
直接从FLORIS对象获取涡轮速度
为了获得单个涡轮机的风速,您可以使用:
turbine_wind_speeds = [turb.average_velocity for turb in floris.farm.turbines]它将返回一个包含每个涡轮平均速度的列表。
直接从FLORIS对象获取涡轮坐标
按指定涡轮位置的顺序返回速度。要了解与速度相关的特定涡轮,可以从涡轮图中获取涡轮坐标:
turbine_coords = [(coord.x1, coord.x2) for coord in floris.farm.turbine_map.coords]在turbine_wind_speeds中返回的第一个速度是turbine_coords中第一组涡轮坐标处的速度,依此类推。
示例脚本显示方法
下面可以找到一个完整的脚本,显示这些方法的用法及其输出,使用包含在弗洛里斯示例文件夹中的示例输入文件,以及FlorisInterface类,该类有几个用于与FLORIS对象交互的其他助手方法。
示例Python脚本
# Import the tools module of FLORIS
import floris.tools as wfct
# Initialize the FLORIS interface 'fi'
fi = wfct.floris_utilities.FlorisInterface("example_input.json")
# Calculate wake
fi.calculate_wake()
# Retrieve and print the individual turbine velocities
turbine_wind_speeds = [turb.average_velocity for turb in fi.floris.farm.turbines]
print('turbine_wind_speeds: ', turbine_wind_speeds)
# Retrieve and print the turbine coordinates
turbine_coords = [(coord.x1, coord.x2) for coord in fi.floris.farm.turbine_map.coords]
print('turbine_coords: ', turbine_coords)示例输出
turbine_wind_speeds: [7.973632994592287, 5.572642539922095, 7.973632994592287, 5.572642539922095]
turbine_coords: [(0.0, 0.0), (800.0, 0.0), (0.0, 630.0), (800.0, 630.0)]https://stackoverflow.com/questions/60040978
复制相似问题