From 05169149d0fece1782ba0adb083a8d81c1c75750 Mon Sep 17 00:00:00 2001 From: Paul Date: Tue, 1 Oct 2024 12:44:12 -0600 Subject: [PATCH] Add docs for floris models --- docs/_toc.yml | 3 +- docs/floris_models.ipynb | 295 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 297 insertions(+), 1 deletion(-) create mode 100644 docs/floris_models.ipynb diff --git a/docs/_toc.yml b/docs/_toc.yml index 4b78b0821..2dd0f99e1 100644 --- a/docs/_toc.yml +++ b/docs/_toc.yml @@ -12,8 +12,9 @@ parts: - caption: User Reference chapters: - file: intro_concepts - - file: advanced_concepts - file: wind_data_user + - file: floris_models + - file: advanced_concepts - file: heterogeneous_map - file: floating_wind_turbine - file: turbine_interaction diff --git a/docs/floris_models.ipynb b/docs/floris_models.ipynb new file mode 100644 index 000000000..b52cfccab --- /dev/null +++ b/docs/floris_models.ipynb @@ -0,0 +1,295 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "(floris_models)=\n", + "\n", + "# FLORIS Models\n", + "\n", + "This notebook provides information on the three provided FlorisModels. [](concepts_intro) introduced `FlorisModel` as the base class for all models in the FLORIS package. This notebook introduces the `UncertainFlorisModel` and `ParFlorisModel` classes, which are subclasses or compositions of `FlorisModel`.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parallelized FLORIS Model\n", + "\n", + "The `ParFlorisModel` class is a subclass of `FlorisModel` that parallelizes the FLORIS calculations. This class is designed to \n", + "have an interface that is the same as `FlorisModel`, but the calculations are parallelized. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Instantiation\n", + "\n", + "The `ParFlorisModel` class can be instantiated in the same way as the `FlorisModel` class, or else it can be instantiated by passing a `FlorisModel` object to the constructor. \n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "from floris import FlorisModel, ParFlorisModel, TimeSeries\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "fmodel = FlorisModel(\"gch.yaml\")\n", + "\n", + "# Instantiation using yaml input file\n", + "pfmodel = ParFlorisModel(\"gch.yaml\")\n", + "\n", + "# Instantiation using fmodel\n", + "pfmodel = ParFlorisModel(fmodel)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Parameters\n", + "\n", + "The `ParFlorisModel` class has additional parameters the define the parallelization. These parameters are:\n", + "\n", + "**interface**: The parallelization interface to use. Options are \"multiprocessing\",\n", + " \"pathos\", and \"concurrent\", with possible future support for \"mpi4py\"\n", + "\n", + "**max_workers**: The maximum number of workers to use. Defaults to -1, which then\n", + " takes the number of CPUs available.\n", + "\n", + "**n_wind_condition_splits**: The number of wind conditions to split the simulation over.\n", + " Defaults to the same as max_workers.\n", + "\n", + "**return_turbine_powers_only**: Whether to return only the turbine powers.\n", + "\n", + "**print_timings** (bool): Print the computation time to the console. Defaults to False." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "# Alternative parameters\n", + "pfmodel = ParFlorisModel(fmodel, max_workers=2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Usage\n", + "\n", + "The `ParFlorisModel` class can be used in the same way as the `FlorisModel` class. The only difference is that the calculations are parallelized. \n", + "\n", + "```python" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# Set to a two turbine layout\n", + "layout_x = [0, 500]\n", + "layout_y = [0, 0]\n", + "fmodel.set(layout_x=layout_x, layout_y=layout_y)\n", + "pfmodel.set(layout_x=layout_x, layout_y=layout_y)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "wind_directions = np.arange(240, 300, 0.5)\n", + "time_series = TimeSeries(\n", + " wind_directions=wind_directions, wind_speeds=8.0, turbulence_intensities=0.06\n", + ")\n", + "fmodel.set(wind_data=time_series)\n", + "pfmodel.set(wind_data=time_series)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHACAYAAABeV0mSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB8xklEQVR4nO3dd3gU1f7H8femQ0ISegi99xKKEHqTZgG7iIKC2K9YsGC5ovcqNlT8XUVsgAoioIiFogKht9B7CVUNRFpCSE/m98fubDZkE5KwyaZ8Xs8zz2bPmZn97rBhvznnzDkWwzAMREREREoJD3cHICIiIuJKSm5ERESkVFFyIyIiIqWKkhsREREpVZTciIiISKmi5EZERERKFSU3IiIiUqoouREREZFSRcmNiIiIlCpKbkRERKRUKdPJzapVq7jhhhsIDQ3FYrHw448/5vschmHw7rvv0qRJE3x9falZsyavv/6664MVERGRPPFydwDudOnSJdq2bcvo0aO5+eabC3SOcePG8dtvv/Huu+/SunVrzp07x7lz51wcqYiIiOSVRQtnWlksFhYsWMCwYcPsZcnJybz44ot8++23XLhwgVatWvHWW2/Ru3dvAPbt20ebNm3YvXs3TZs2dU/gIiIikkWZ7pa6kscee4z169czZ84cdu7cyW233cagQYM4dOgQAD///DMNGjTgl19+oX79+tSrV4/7779fLTciIiJupOQmBydOnGD69OnMmzePHj160LBhQ8aPH0/37t2ZPn06AEeOHOH48ePMmzePr776ihkzZrBlyxZuvfVWN0cvIiJSdpXpMTe52bVrF+np6TRp0iRLeXJyMpUrVwYgIyOD5ORkvvrqK/t+X3zxBR06dODAgQPqqhIREXEDJTc5iI+Px9PTky1btuDp6ZmlLiAgAIAaNWrg5eWVJQFq3rw5YG35UXIjIiJS9JTc5CAsLIz09HRiYmLo0aOH0326detGWloaUVFRNGzYEICDBw8CULdu3SKLVURERDKV6bul4uPjOXz4MGBNZt577z369OlDpUqVqFOnDnfffTdr165l8uTJhIWF8c8//7Bs2TLatGnDddddR0ZGBp06dSIgIIAPPviAjIwMHn30UQIDA/ntt9/c/O5ERETKpjKd3ERERNCnT59s5aNGjWLGjBmkpqby3//+l6+++oq//vqLKlWq0KVLF159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OcrqDsATa5eoK5YVmT9/PmlpabQAniJzoU6AihUr2m9LF5GSR8mNiBQ73bp1o06dOsSRub7TCTIXtHTFnDfmOe7Fugr4ScAcdXbLLbe4fLybiBQdJTciUux4eHjYW2/+DTTFOubmpK3+m2++ISMjI4ejr2zXrl2sWrUKT8C8HyoVWG37WXdJiZRsSm5EpFgyk5t9wOXzSx86dOiqVgp/7733ALiFzO6oxViXewgJCaFXr14FPreIuJ+SGxEpllq2bEnbtm1zrH/77bcLdN7o6Gj7fDlPO5R/YHu8++67nS44KyIlh5IbESm2xowZk+W5Bbge8AFWr17N+vXr833Ojz/+mNTUVLpi7eoC6wrgK7DOvO2q28xFxH2U3IhIsTV69GgqVaoEQB9gN9bVuu+21b/11lv5Ol9CQgJTp04FrHdImd6zPd5+++3UqVPnKiIWkeJAyY2IFFv+/v489thjAFwCzAVCnsHairNw4UL279+f5/N99dVXnD17lgaAuRzm32Qut/DUU085P1BEShQlNyJSrD322GOUK1eOTUCErawZcKPt53feeSdP58nIyOD9998HrJMBmv/5/R/WO6V69OhBx44dXRS1iLiTkhspsHvvvZdhw4Zd9XkmTpxIu3btrvo8rmSxWPK1ArWrroVkV7VqVftq8o6dUM/ZHr/++mv+/vvvK57nl19+4eDBg3hiHbcD1tagabafn376aecHikiJo+SmlLj33nuxWCxYLBZ8fHxo1KgRr732Wo5Ty+fFxIkT7ed03P744w8XRg7jx49n2bJledp3xowZWCwWpwt0zps3D4vFQr169Vwan7jfU089hYeHB0uAnbaycKA7kJqayquvvprr8bGxsfaBwulAS+B+4FXgPNCoUSMttSBSiii5KUUGDRpEdHQ0hw4d4umnn2bixIl5brJ3lJ6ebp8grWXLlkRHR2fZevbs6ZJ4DcMgLS2NgIAAKleunOfj/P39iYmJyXanzBdffKHBoKVUgwYNuP322wFwvAH8Naxjbz799FN++OGHHI8fN24cJ06csD9PAr4AzN+OJ554Qrd/i5QiSm5KEV9fX0JCQqhbty4PP/ww/fv356effuK9996jdevW+Pv7U7t2bR555BHi4+Ptx82YMYPg4GB++uknWrRoga+vr/2LwMvLi5CQkCxbTtPSJycn8/jjj1OtWjX8/Pzo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cOBA1qxZk6XsSte1QoUKjB8/nieffJKZM2cSFRXF1q1b+b//+z9mzpwJwIMPPsj+/ft57rnnOHjwIHPnzrXP2+PY7bdhwwZ8fX0JDw+/qvchUpKoW0qkhOrTpw+JiYk0a9bMfmcQWJObixcv2m8ZvxpPP/000dHRjBo1Cg8PD0aPHs1NN93kNEG4XNOmTbFYLAQEBNCgQQMGDBjAU089RUhISL5iCA0NZe3atTz33HMMGDCA5ORk6taty6BBg/DwsP599vLLL+Pl5cW///1v/v77b2rUqMFDDz0EWMezfPjhh7z22mv8+9//pkePHlluoze9+eabZGRkcM8993Dx4kU6duzI0qVLqVixYr7ivdyYMWPo2LEjsbGx9gkU83Jd//Of/1C1alUmTZrEkSNHCA4Opn379rzwwguA9Rb3+fPn8/TTTzNlyhTCw8N58cUXefjhh7N0XX377beMGDGC8uXLX9X7EClJLEZhdrCLiAi33XYb7du3Z8KECYX6Oq+//jqffPIJJ0+eBODMmTP27itzvh+RskDdUiIiheydd95xerfX1fr444/ZvHkzR44c4euvv+add95h1KhR9vpjx47x8ccfK7GRMkctNyIiJdSTTz7Jd999x7lz56hTpw733HMPEyZMwMtLIw6kbFNyIyIiIqWKuqVERESkVFFyIyIiIqWKkhsREREpVZTciIiISKmi5EZERERKFSU3IiIiUqoouREREZFSRcmNiIiIlCpKbkRERKRU+X9EB6DSJxDMGQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fmodel.run()\n", + "pfmodel.run()\n", + "\n", + "farm_power = fmodel.get_farm_power()\n", + "pfarm_power = pfmodel.get_farm_power()\n", + "\n", + "# Show the results are the same\n", + "fig, ax = plt.subplots()\n", + "ax.plot(wind_directions, farm_power, label=\"FlorisModel\", color='k', lw=5)\n", + "ax.plot(wind_directions, pfarm_power, label=\"ParFlorisModel\", color='r', ls='--', lw=2)\n", + "ax.set_xlabel(\"Wind Direction (deg)\")\n", + "ax.set_ylabel(\"Farm Power (kW)\")\n", + "ax.legend()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## UncertainFlorisModel\n", + "\n", + "The `UncertainFlorisModel` class is a composition of `FlorisModel` that adds uncertainty to the input conditions. It's interface is meant to made similar to `FlorisModel`, but with the addition of uncertainty in wind direction." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Instantiation\n", + "\n", + "The `UncertainFlorisModel` class can be instantiated in the same way as the `FlorisModel` class, or else it can be instantiated by passing a `FlorisModel` object to the constructor. Alternatively a `ParFlorisModel` object can be passed to the constructor which ensures the underlying calculations are parallelized according to the `ParFlorisModel` parameters." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "from floris import UncertainFlorisModel\n", + "\n", + "# Instantiation options\n", + "ufmodel = UncertainFlorisModel(\"gch.yaml\") # Using input yaml\n", + "ufmodel = UncertainFlorisModel(fmodel) # Using a FlorisModel object\n", + "ufmodel = UncertainFlorisModel(pfmodel) # Using a ParFlorisModel object" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Parameters\n", + "\n", + "To include uncertainty into the wind direction, the `UncertainFlorisModel` class, for each findex run, the result for a wind direction is provided by performing a gaussian blend over results from multiple wind directions nearby wind directions. To reduce the total number of calculations required, a resolution of wind direction, wind speed, turbulence intensity and control inputs are specified and repeated calculations are only calculated once. See the class API for complete details but some key parameters are:\n", + "\n", + "**wd_resolution, ws_resolution, ti_resolution, yaw_resolution, and power_setpoint_resolution**: Define the granularity of calculations for wind direction, wind speed, turbulence intensity, yaw angle, and power setpoints respectively.\n", + "\n", + "**wd_std**: The standard deviation of wind direction, used in the Gaussian blending.\n", + "\n", + "**wd_sample_points**: Specific wind direction points to sample for expanded conditions.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "# Define the uncertainty to have a wd_std of 5 degrees and blend over 10 degrees\n", + "ufmodel = UncertainFlorisModel(fmodel, wd_std=5, wd_sample_points=[-5, -4, -3, -2, -1, 0, 1, 2,3, 4, 5], wd_resolution=0.5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Usage\n", + "\n", + "Usage of `UncertainFlorisModel` is similar to `FlorisModel` however the results will now include the effects of gaussian blending\n" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ufmodel.set(wind_data=time_series, layout_x=layout_x, layout_y=layout_y)\n", + "ufmodel.run()\n", + "\n", + "# Get the power of the downstream turbine\n", + "f_power = fmodel.get_turbine_powers()[:,1]\n", + "uf_power = ufmodel.get_turbine_powers()[:,1]\n", + "\n", + "# Plot the two powers\n", + "fig, ax = plt.subplots()\n", + "ax.plot(wind_directions, f_power, label=\"FlorisModel\", color='k', lw=5)\n", + "ax.plot(wind_directions, uf_power, label=\"UncertainFlorisModel\", color='r', lw=2)\n", + "ax.set_xlabel(\"Wind Direction (deg)\")\n", + "ax.set_ylabel(\"Turbine Power (kW)\")\n", + "ax.legend()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "floris", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}