Windpowerlib - это библиотека, которая предоставляет набор функций и классов для расчета выходной мощности ветряных турбин. Первоначально он был частью FeedInlib (Windpower и Photovoltaic), но был вывезен для создания сообщества, концентрируемого на моделях ветра.
Для быстрого начала см. Примеры и основной раздел использования.
Полную документацию можно найти в Readthedocs.
Используйте сайт проекта Readthedocs, чтобы выбрать версию документации. Перейдите на страницу загрузки, чтобы загрузить различные версии и форматы (PDF, HTML, EPUB) документации.
Если у вас есть рабочая среда Python 3, используйте PYPI, чтобы установить последнюю версию WindPowerLib:
PIP установить WindPowerlib
Windpowerlib предназначен для Python 3 и протестирован на Python> = 3.10. Мы настоятельно рекомендуем использовать виртуальные среды. Пожалуйста, смотрите страницу установки документации OEMOF для полных инструкций о том, как установить Python и виртуальную среду в вашей операционной системе.
Чтобы увидеть участки примера WindPowerLib в примерах и в разделе «Основное использование», вы должны установить пакет Matplotlib. Matplotlib может быть установлен с помощью PIP:
PIP установить matplotlib
Самый простой способ запустить пример ноутбуков без установки WindPowerlib - нажать здесь и открыть их с помощью связующего.
Основное использование WindPowerLib показано в примере ModelChain, который доступен в виде ноутбука Jupyter и сценария Python:
Чтобы запустить пример, вам нужна пример погоды, которая загружается автоматически и также может быть загружен здесь:
Чтобы запустить примеры локально, вы должны установить WindPowerlib. Чтобы запустить ноутбук, вам также необходимо установить ноутбук с помощью PIP3. Чтобы запустить ноутбук Jupyter Type Type jupyter notebook в терминале. Это откроет окно браузера. Перейдите к каталогу, содержащему ноутбук, чтобы открыть его. См. Руководство по ноутбуку jupyter Quick Start для получения дополнительной информации о том, как установить и как запустить ноутбуки Jupyter. Чтобы воспроизвести рисунки в ноутбуке, вам необходимо установить Matplotlib.
Дополнительные функции, такие как моделирование ветряных ферм и кластеров ветряных турбин, показаны в примере TurbineClusterModelChain. Как пример ModelChain, он доступен в виде ноутбука Jupyter и в качестве сценария Python. Погода, используемая в этом примере, такая же, как в примере модели.
Вы также можете посмотреть на примеры в разделе примеров.
Windpowerlib предоставляет данные многих ветряных турбин, но также возможно использовать ваши собственные данные турбины.
WindPowerLib предоставляет данные ветряных турбин (кривые мощности, высоты концентраторов и т. Д.) Для большого набора ветряных турбин. См. Инициализируйте ветряную турбину в разделе «Примеры» о том, как использовать эти данные в ваших симуляциях.
Набор данных размещен и поддерживается в базе данных OpenEnergy (OEDB). Чтобы обновить свои локальные файлы с помощью последней версии библиотеки турбин OEDB, вы можете выполнить следующее в своей консоли Python:
from windpowerlib . data import store_turbine_data_from_oedb
store_turbine_data_from_oedb ()Если вы найдете свою турбину в базе данных, она очень легко использовать в Windpowerlib
from windpowerlib import WindTurbine
enercon_e126 = {
"turbine_type" : "E-126/4200" , # turbine type as in register
"hub_height" : 135 , # in m
}
e126 = WindTurbine ( ** enercon_e126 )Мы хотели бы побудить кого -либо внести свой вклад в библиотеку турбины, добавляя данные турбины или ошибки отчетности в данные. Смотрите OEP для получения дополнительной информации о том, как внести свой вклад.
Можно использовать свою собственную кривую мощности. Тем не менее, наиболее устойчивый способ - отправить нам данные, которые будут включены в WindPowerLib, и быть доступными для всех пользователей. Это может быть невозможно во всех случаях.
Предполагая, что файлы данных выглядят так:
ветер, сила 0,0,0,0 3,0,39000.0 5,0 270000,0 10,0 2250000.0 15,0 4500000.0 25,0 4500000.0
Вы можете использовать панды, чтобы прочитать файл и передать его в словарь турбин. У вас есть базовые знания о пандах, легко использовать любой вид файла данных.
import pandas as pd
from windpowerlib import WindTurbine , create_power_curve
my_data = pd . read_csv ( "path/to/my/data/file.csv" )
my_turbine_data = {
"nominal_power" : 6e6 , # in W
"hub_height" : 115 , # in m
"power_curve" : create_power_curve (
wind_speed = my_data [ "wind" ], power = my_data [ "power" ]
),
}
my_turbine = WindTurbine ( ** my_turbine_data )См. ModelChain_Example для получения дополнительной информации.
Мы тепло приветствуем всех, кто хочет внести свой вклад в Windpowerlib. Если вы заинтересованы в моделях ветра и хотите помочь улучшить существующую модель, не стесняйтесь связаться с нами через GitHub или по электронной почте ([email protected]).
Клон: https://github.com/wind-python/windpowerlib и установите клонированный репозиторий с помощью PIP:
pip install -e /path/to/the/repositoryПоскольку Windpowerlib начинал с участников группы разработчиков OEMOF, мы используем те же правила разработчика.
Как создать запрос на тягу:
Обычно при изменении, добавление или удаление кода требуются следующие шаги:
pytestМы используем проект Zenodo, чтобы получить DOI для каждой версии. Поиск Zenodo для правильной цитаты версии Windpowerlib.
Copyright (C) 2019 OEMOF Developer Group
Настоящим дается разрешение, бесплатно, любому лицу, получающему копию этого программного обеспечения и связанные с ними файлы документации («Программное обеспечение»), чтобы иметь дело в программном обеспечении без ограничений, включая, без ограничения, права на использование, копирование, изменение, объединение, публикацию, распределение, сублиценность и/или продавать копии программного обеспечения и разрешения лиц, на которые программное обеспечение подходит для того, чтобы поступить так, чтобы поступить на следующие условия: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: к следующим условиям: на следующие условия: к следующим условиям: на следующие условия: на следующие условия.
Вышеуказанное уведомление об авторском праве и это уведомление о разрешении должно быть включено во все копии или существенные части программного обеспечения.
Программное обеспечение предоставляется «как есть», без гарантии любого рода, явного или подразумеваемого, включая, помимо прочего, гарантии товарной пригодности, пригодности для определенной цели и несоответствия. Ни в коем случае авторы или владельцы авторских прав не будут нести ответственность за любые претензии, убытки или другую ответственность, будь то в действии контракта, деликт или иным образом, возникающие из или в связи с программным обеспечением или использованием или другими сделками в программном обеспечении.