Windpowerlib는 풍력 터빈의 전력 출력을 계산하기위한 기능과 클래스 세트를 제공하는 라이브러리입니다. 원래 FeedInlib (풍력 및 태양 광 발전)의 일부 였지만 풍력 발전 모델에 집중하는 커뮤니티를 구축하기 위해 꺼졌습니다.
빠른 시작은 예제 및 기본 사용 섹션을 참조하십시오.
전체 문서는 ReadThedocs에서 찾을 수 있습니다.
ReadThedocs의 프로젝트 사이트를 사용하여 문서의 버전을 선택하십시오. 다운로드 페이지로 이동하여 문서의 다른 버전 및 형식 (PDF, HTML, EPUB)을 다운로드하십시오.
작동하는 Python 3 환경이있는 경우 PYPI를 사용하여 최신 WindPowerLib 버전을 설치하십시오.
PIP 설치 WindpowerLib
Windpowerlib는 Python 3 용으로 설계되었으며 Python> = 3.10에서 테스트됩니다. 가상 환경을 사용하는 것이 좋습니다. 운영 체제에 Python 및 가상 환경을 설치하는 방법에 대한 전체 지침은 OEMOF 문서의 설치 페이지를 참조하십시오.
예제 및 기본 사용 섹션에서 Windpowerlib 예제의 플롯을 보려면 Matplotlib 패키지를 설치해야합니다. matplotlib는 PIP를 사용하여 설치할 수 있습니다.
PIP 설치 MATPLOTLIB
WindpowerLib를 설치하지 않고 예제 노트를 실행하는 가장 간단한 방법은 여기를 클릭하여 바인더로 열 수 있습니다.
WindpowerLib의 기본 사용법은 Jupyter 노트북 및 Python 스크립트로 제공되는 Modelchain 예제에 표시됩니다.
예제를 실행하려면 자동으로 다운로드하고 여기에서 다운로드 할 수있는 예제 날씨가 필요합니다.
예제를 로컬로 실행하려면 WindpowerLib를 설치해야합니다. 노트북을 실행하려면 PIP3을 사용하여 노트북을 설치해야합니다. 터미널에서 Jupyter 노트북 유형 jupyter notebook 출시하려면. 브라우저 창이 열립니다. 노트북이 포함 된 디렉토리로 이동하여 열 수 있습니다. 설치 방법 및 Jupyter Notebook을 실행하는 방법에 대한 자세한 내용은 Jupyter Notebook Quick Start Guide를 참조하십시오. 노트북에서 그림을 재현하려면 Matplotlib를 설치해야합니다.
풍력 발전 단지 및 풍력 터빈 클러스터의 모델링과 같은 추가 기능이 터빈 클러스터 모도 델 체인 예에 나와 있습니다. Modelchain 예제로 Jupyter 노트북 및 Python 스크립트로 제공됩니다. 이 예제에 사용 된 날씨는 모델 체인 예제와 동일합니다.
예제 섹션의 예를 볼 수도 있습니다.
Windpowerlib는 많은 풍력 터빈의 데이터를 제공하지만 자체 터빈 데이터를 사용할 수도 있습니다.
Windpowerlib는 많은 풍력 터빈 세트에 풍력 터빈 데이터 (파워 곡선, 허브 높이 등)를 제공합니다. 시뮬레이션 에서이 데이터를 사용하는 방법에 대한 예제 섹션에서 풍력 터빈 초기화를 참조하십시오.
데이터 세트는 Openenergy 데이터베이스 (OEDB)에서 호스팅 및 유지됩니다. 최신 버전의 OEDB 터빈 라이브러리로 로컬 파일을 업데이트하려면 파이썬 콘솔에서 다음을 실행할 수 있습니다.
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/repositoryWindpowerLib가 OEMOF 개발자 그룹의 기고자로 시작함에 따라 동일한 개발자 규칙을 사용합니다.
풀 요청을 만드는 방법 :
일반적으로 코드를 변경, 추가 또는 제거 할 때 다음 단계가 필요합니다.
pytest우리는 Zenodo 프로젝트를 사용하여 각 버전에 대해 doi를 얻습니다. windpowerlib 버전의 올바른 인용을 위해 Zenodo를 검색하십시오.
저작권 (C) 2019 OEMOF 개발자 그룹
이에 따라이 소프트웨어 및 관련 문서 파일 ( "소프트웨어")의 사본을 얻는 사람에게는 허가가 부여됩니다. 소프트웨어의 사용, 복사, 수정, 합병, 배포, 배포, 숭고 및/또는 소프트웨어의 사본을 판매 할 권한을 포함하여 제한없이 소프트웨어를 처리 할 수 있도록 소프트웨어를 제공 할 권한이 없습니다.
위의 저작권 통지 및이 권한 통지는 소프트웨어의 모든 사본 또는 실질적인 부분에 포함되어야합니다.
이 소프트웨어는 상업성, 특정 목적에 대한 적합성 및 비 침해에 대한 보증을 포함하여 명시 적 또는 묵시적 보증없이 "그대로"제공됩니다. 어떠한 경우에도 저자 또는 저작권 보유자는 계약, 불법 행위 또는 기타, 소프트웨어 또는 소프트웨어의 사용 또는 기타 거래에서 발생하는 계약, 불법 행위 또는 기타의 행동에 관계없이 청구, 손해 또는 기타 책임에 대해 책임을지지 않습니다.