# Welcome

## What is Bézier?

Bézier is a safe, secure, digital power curve library designed to help teams of wind engineers manage and share wind turbine power curves for a range of analyses. &#x20;

Create and share power curves with project stakeholders. Keep track of who can see what. Keep everyone up to date with the latest changes and move quickly through pre-sales processes. &#x20;

Built in Partnership between Wind Pioneers and Octue.&#x20;

## Who should use Bézier?

Bézier is designed for professionals and teams who want the best in managing IEC-compliant power curves.  It’s perfect for those who want to:&#x20;

* Explore and understand IEC-compliant power curves effortlessly.&#x20;
* View and share power curves seamlessly across teams and stakeholders.&#x20;
* Maintain a centralised platform where power curves are securely stored in digital formats.&#x20;
* Make quick iterations and updates with ease.&#x20;
* Enforce tight permissions to efficiently manage team access and collaboration.&#x20;

If staying ahead with reliable, standardised power curve data and smooth teamwork matters, the Bézier is the ultimate tool to unlock your full potential.&#x20;

## Frequently Asked Questions

<details>

<summary>What is Bézier?  </summary>

Bézier is a safe, secure, digital power curve library designed to help teams of wind engineers manage and share wind turbine power curves for a range of analyses.

</details>

<details>

<summary>Power Curves are highly sensitive, how can we restrict access?</summary>

Power Curves contain highly sensitive data. It's best to have a tightly controlled list of who has permission to see what, and why. To enable this, Bézier's fine-grained permissions enable read or update access down to specific power curves. For example, you can share a site-specific curve with a single organisation, a generic curve with multiple organisations, or restrict a curve to be internal-use-only. You'll always have a clear view of who can access that data.

</details>

<details>

<summary>Does Bézier have an API?</summary>

Of course! You want to be able to create or query for power curve data as part of automated workflows like Yield Assessment. We can help you set up the requisite access tokens for automating your use of Bézier.

</details>

<details>

<summary>Can I export my data?</summary>

Yes, you can export data in the IEC61400-16 JSON-based format as well as numerous industry-standard file formats. If an export format you need is missing, get in touch and we'll be happy to add it.

</details>

<details>

<summary>... and other integrations?</summary>

Not yet, but coming soon, you'll be able to create webhooks that fire when a specific data item is updated or made accessible to you. This allows you to integrate with other systems, such as Slack, to notify users of changes.

</details>


# Complete user profile

Step-by-step guide to completing your user profile for a personalised and fully configured account experience.

{% embed url="<https://www.loom.com/embed/cc54c334698a487ba372a139a3372c54?sid=c7a05fa0-c18e-4587-b739-5b2f443b9e71>" %}

### Step 1

Begin by navigating to the Profile menu. You can find it at the bottom left corner where your account name is displayed.

<figure><img src="/files/YcW0CF5EEq7CO0qeBgG0" alt=""><figcaption></figcaption></figure>

### Step 2

Click to view the available options. From the list, select "Settings" to access your Profile Settings page.

<figure><img src="/files/xn511izvnwcbTHBkUSbh" alt=""><figcaption></figcaption></figure>

### Step 3

Proceed to fill in your profile by entering your full name and other details.

<figure><img src="/files/2HPv3lkLqIOQOZhy96eR" alt=""><figcaption></figcaption></figure>

### Step 4

After entering all the necessary details, click on "Save."&#x20;

<figure><img src="/files/piyLD2rUL0QGpIsSNzRk" alt=""><figcaption></figcaption></figure>

A confirmation message will appear, indicating that your profile has been updated successfully.

With this, your profile setup is now complete.&#x20;


# Understanding your personal organisation

A quick overview of your personal workspace.

{% embed url="<https://www.loom.com/embed/c61b0e3166e64b5b9a9d44b8c17bd9c5?sid=a25de4b0-ad4c-45f8-880b-a1ccd44790ec>" %}

### Introduction

Once logged in, you will be directed to your personal workspace or organisation.

<figure><img src="/files/59kmriMRG1AiQLDx6e5Z" alt=""><figcaption></figcaption></figure>

This workspace is designed exclusively for your use. You will notice the organisation name displayed on the left-hand sidebar.

<figure><img src="/files/c9mUZjEkyDJ9lF7IIhLX" alt=""><figcaption></figcaption></figure>

*Pro Tip: Your account name is suffixed with "Personal" for easy identification.*

### Quickly add power curves

Click on the "Quick Create" button located at the top right to create a new Power Curve.&#x20;

<figure><img src="/files/mymKOVvyW1RlrJkcuYUo" alt=""><figcaption></figcaption></figure>

### Access pre-loaded power curves

**Organisational power curves**

The "Organizational Power Curves" are those that you own. You have the ability to edit and share these with your team members.

<figure><img src="/files/bWU4AVTdoGkag2Ar1zxL" alt=""><figcaption></figcaption></figure>

To open a Power Curve, simply click on it. To make changes, switch to edit mode once you’re in detail view.

To return to the list of Power Curves, click on "Power Curves" in the left-hand sidebar.

This action will automatically redirect you to the main dashboard.

**External power curves**

The next tab, "External Power Curves," contains resources shared with you by external parties.

<figure><img src="/files/utsBYxaRMKTQINq5Jv7t" alt=""><figcaption></figcaption></figure>

You can view these external Power Curves in detail, but editing them is not possible.

## Summary

With this understanding, you are now equipped to explore, view, and edit power curves within your personal workspace. Next, we will proceed to creating a new organisation.


# Add, share and export power curves

This is a step-by-step guide on creating and managing power curves within the Bézier.

{% embed url="<https://www.loom.com/embed/5539a050ca1648b981bb64052bd4fa7b?sid=3738cac9-b739-483f-b60d-db50c9f30bdc>" %}

## Add a power curve - step 1

To begin adding power curves, click the "Quick Create" button located at the top right corner of the web page. Once the page loads, enter the key information related to the Power Curve.

<figure><img src="/files/diyFd14u1W9fI2xANvZx" alt=""><figcaption></figcaption></figure>

## Step 2

After entering the key information, click on "Create". This action will direct you to the new main workspace of your power curve.

<figure><img src="/files/eMZVvWMwn0kFfDB3MuYJ" alt=""><figcaption></figcaption></figure>

## Step 3

Within the power curve workspace, explore different tabs that appear alongside the power curve name. The key information of the Power Curve is available under the "Overview" tab.&#x20;

<figure><img src="/files/cf5aowz6qxKdvOXknThq" alt=""><figcaption></figcaption></figure>

## Step 4

In the "Reference Document" tab, upload and manage all documents linked to this Power Curve. Click on "New" to upload any document into the platform. For demo purpose, the power curve is in an excel file.&#x20;

<figure><img src="/files/pXAmPtMVnQASn0XHdCYV" alt=""><figcaption></figcaption></figure>

## Step 5

Next, navigate to the "Curves" tab. This main workspace allows you to enter all relevant information related to your power curves and visualise the plots.

Initially, all fields are marked red, indicating they are empty and need data. To begin populating these fields, switch to "Edit" mode.

<figure><img src="/files/sA4rqfY5nYSIFvznUSFH" alt=""><figcaption></figcaption></figure>

## Step 6

Once you have filled in all data related to the first section, proceed to the "Power Curve" section. This is where you populate all the different power and thrust curve data for the modes of the wind turbine model.

<figure><img src="/files/3hrzoXr1WlqCLHcVPwKq" alt=""><figcaption></figcaption></figure>

## Step 7

For instance, you can add a mode named "Mode 1" and fill in the respective details, such as Power and Thrust values, in the main tabular data.

<figure><img src="/files/wdevQeYpPf8H7SFzAGB4" alt=""><figcaption></figcaption></figure>

## Step 8

Notice that the fields, such as air density, are pre-filled with 1.225 kg/m3, and wind speeds range from 3 m/s to 25 m/s, which are pre-set values. Feel free to adjust these values according to the power curve.

For the power curve provided, the information pertains to one air density for one mode, with power values ranging from 3 m/s to 25 m/s.

<figure><img src="/files/Oi9qyVtMiB94HitVw8xL" alt=""><figcaption></figcaption></figure>

## Step 9

You can populate the power curve data. You can manually enter the values or directly copy-paste the data.

For the demo purpose, this power curve is mentioned as seen in the picture.

<figure><img src="/files/gIEfp4UrPOoaZZDBsFil" alt=""><figcaption></figcaption></figure>

Since the values is kW, ensure the same units is selected. You can directly paste the data from Excel to the webpage.

<figure><img src="/files/x1NzEIKDuaoPXjZP8Byv" alt=""><figcaption></figcaption></figure>

## Step 10

Next head to the "Thrust" section. You can similarly copy-paste the data as done for the power curve data.

<figure><img src="/files/FpjsMrFNFZoWiGOJHaYo" alt=""><figcaption></figcaption></figure>

Ensure that the Thrust Coefficient box is checked (if given data is co-efficient of thrust). Then paste the data.&#x20;

<figure><img src="/files/tugoFGDTcb0cgoJT64bq" alt=""><figcaption></figcaption></figure>

## Step 11

Next, input the cut-in and cut-out wind speeds.

From the excel file, note that the cut-in wind speed is 3 m/s, and add a cut-out wind speed of 25 m/s, as the power values range from 3 to 25 m/s.

Define the default operating mode, which is "Mode 1" since only one mode is present.

<figure><img src="/files/3IYaJzBe8ANwILYoJDwu" alt=""><figcaption></figcaption></figure>

## Step 12

The "Design Basis" tab allows you to specify conditions for design parameters for the turbine case. Once done, ensure all fields are completed.

<figure><img src="/files/UGLFLwXrxr5wLtWOHAXa" alt=""><figcaption></figcaption></figure>

## Step 13

Confirm that all information is filled in and proceed to save your work.

Click "Save" and name the version. This demo case, it is named as 'Initial setup'.&#x20;

<figure><img src="/files/yznoVYYBG1V9CBDDv5PR" alt=""><figcaption></figcaption></figure>

The Power Curve is now updated.

## Visualise Plots

Click the "Plots" button to visualize the power and thrust curve data.

## Request review of power curve

Exit edit mode, select "Reviews," and request a review. All organisation admins will be notified to review and approve the power curve.

<figure><img src="/files/65zHtaJtFWCak27Hqv2q" alt=""><figcaption></figcaption></figure>

If you hold admin privileges, approval can be granted instantly. The document is now approved.

<figure><img src="/files/O3LSGg7NCChcGirwwBvB" alt=""><figcaption></figcaption></figure>

## Share power curve

Share the Power Curve by clicking "Share." Enter the organization handle if registered on Bézier or share to a person directly via email. Confirm terms and conditions, then share the Power Curve.

<figure><img src="/files/VzUIyUL0h0mhyPmQh8Kn" alt=""><figcaption></figcaption></figure>

## Other Tabs

Use the "Version History" to track multiple iterations of Power Curve data, saved as different versions.&#x20;

<figure><img src="/files/RldIVClFVoKnCz7Wl3Hf" alt=""><figcaption></figcaption></figure>

Access the "Access" tab to view the list of members or organisations with power curve access.Once shared, details auto-populate.

## Export

To export the power curve in various file formats, go to the "Export" tab.

Export the Power Curve to any format by selecting the format and then clicking "Export." This action will download the digital power curve data automatically. That's the complete process.

<figure><img src="/files/NA2I2rDZ2i1FryJ78V9L" alt=""><figcaption></figcaption></figure>


# Add a new organisation

This is a step-by-step guide to adding an organisation, and managing members and billing with ease.

{% embed url="<https://www.loom.com/embed/af2ffa437cd848508caa16d6a9caad10?sid=acff51b0-8009-4e36-92bc-ca8716e9e125>" %}

## Step 1

Begin by hovering over the organisation selector in the left sidebar and click to expand the options.

<figure><img src="/files/12U6yCnO0CAzrGigeYPg" alt=""><figcaption></figcaption></figure>

## Step 2

Next, select "Add Organisation" from the expanded menu.

<figure><img src="/files/5iwen3aQGBquGFSV4Na7" alt=""><figcaption></figcaption></figure>

## Step 3

A new form will appear. Proceed to enter your organisation's name and other details in the designated fields.

<figure><img src="/files/rbxAr2mBBZE9NgJzvHSs" alt=""><figcaption></figcaption></figure>

## Step 4

Specify your company's email domain. This ensures that only team members with matching email domains can access the organisation, enhancing exclusivity and security. Once all the information is filled in, click on "Save."

<figure><img src="/files/VSAX0IKXYQKd8d0ED1F5" alt=""><figcaption></figcaption></figure>

### Organisation Page

### Profile Tab

The page will refresh and direct you to your organization's main page. The profile section will display the details you have entered.

<figure><img src="/files/o4Br2zNWaTdb36owliDq" alt=""><figcaption></figcaption></figure>

### Members

Navigate to the "Members" tab. You will find a list of all the members within your organisation.

<figure><img src="/files/nYrSmVHJAlXRCx2i4YwN" alt=""><figcaption></figcaption></figure>

### Invitations

Proceed to the "Invitations" tab. Here, you can monitor and manage the invitations you have sent out.

<figure><img src="/files/HwryXTsqOsCUiRBpd6xJ" alt=""><figcaption></figcaption></figure>

### Billing

The "Billing" section provides details about your organisation's account (subscription) and payments gateway.

<figure><img src="/files/MDSWYW5uSGFYvfKu0gzF" alt=""><figcaption></figcaption></figure>

Well Done! You’re all set to bring your team onboard, add power curves, and start collaborating securely within your organisation !!


# Bézier for Python users

The \`bezier\` python package allows you to work with power curve data in python, for time-series and other data analysis purposes.

{% hint style="danger" %}
After four years of internal use, the Bézier python package is presently being open-sourced. We're working with a select few early-stage customers to simplify and improve its performance and documentation, as well as bringing it up to date with the latest evolutions in the upcoming IEC 61400-16 standard.

If you'd like early access to the python library please [contact us](https://bezier.octue.com/contact).

Until general release, the instructions below **won't work** - but this page should give you a flavour of what's coming.
{% endhint %}

## Installation

The [`bezier` package is available on pypi](https://pypi.org/octue/bezier/) so is easily installable with `pip`, `poetry` or any other python package manager. We recommend the use of the `uv` package manager for your python environment and dependencies ([here's why](https://github.com/astral-sh/uv)), so installation is as simple as:

```
uv add bezier

// Or if you prefer to use pip
pip install bezier
```

## Quick Start

{% hint style="info" %}
A **Turbine Label** is a short text label, `written-in-lower-kebab-case-0123456789`, that can uniquely define a power curve document. Mostly you'll use your own documents directly, but it's great to be able to refer to the examples quickly by their label.
{% endhint %}

You can use your own turbine power curves, expressed in `JSON` form. But there are turbines built in to the library for example purposes. You can load them up simply by using the label of that turbine:

```python
>> from bezier import ALL_TURBINE_LABELS
>> print(ALL_TURBINE_LABELS)
[ "gm-5-abc-1", "gm-5-abc-2", ... ]
```

You can load any of the builtin power curves directly from its label, and inspect its data.

```python
>> curve = PowerCurve('gm-5-abc-1')
>> print(curve.get_description())
"The GM-5-ABC-1 turbine, part of Generic Machines' 5MW platform, is the first totally fictional example turbine I could think of"
```

Each top level power curve document can represent multiple "modes" of turbine operation. See which ones are available, and which is the default:

```python
>> print(curve.available_modes)
>> print(curve.default_mode)
```

Use the default mode, and determine the power and thrust for an input time-series of air density and wind speed:

<pre><code><strong>>> mode_label = curve.default_mode
</strong><strong>>> operating_point = {
</strong>  "air-density": np.array([1.223, 1.224, 1.225, 1.220]),
  "wind-speed": np.array([8.63, 10.89, 11.81, 6.28]),
}
>> power, thrust, parameter_labels, xi = curve.get_performance(mode_label, operating_point, as_timeseries=True)
>> print(power)
np.array([4653000, 4853000, 5053000, 2653000])
</code></pre>

## Next steps

Check the [bezier-python library on GitHub](https://github.com/octue/bezier-python) for more advanced use cases and package API documentation.


# Bézier API

The Bézier API allows fully automated interaction with Bézier, whether for publishing power curves from your internal systems, or for syncing and exporting as part of your farm design workflows.

{% hint style="danger" %}
The Bézier API has been in production for less than a year and should NOT be considered stable. We **strongly recommend** that customers wanting to integrate processes with Bézier [contact us](https://bezier.octue.com/contact) first.

With that said, we 'eat our own dogfood': the Bézier frontend is built on the same API we expose to customers, so we're rapidly improving and stabilising it.

Until general release, the instructions below **won't work** - but this page should give you a flavour of what's coming.
{% endhint %}

## Using GraphQL

The Bézier API is based on GraphQL, not on REST principles. For some, this may seem counterintuitive at first - but trust us, it's well worth a couple of days learning this powerful technology, as it saves weeks of time and effort down the line.

We chose GraphQL because it allows us to:

* **Reduce errors** by getting data types consistent all the way from the database to the frontend
* **Improve performance** by querying for all the data we need in one request, rather than many
* **Reduce code complexity** by avoiding data normalisation problems (common with REST APIs having resources served on different endpoints), while automatically handling caching on the client side

For further reading, there's a good[ blog from GitHub](https://github.blog/developer-skills/github/the-github-graphql-api/) on why they shifted to GraphQL.

## Browsing the API

{% hint style="warning" %}
The graphical browser is LIVE! If you mutate data on this tool, you will see the it change in real life! To avoid making a mess of your production data, we recommend you create a duplicate organisation, with test data,  to use as a sandbox for building your integrations.
{% endhint %}

Getting started is simple! Log into Bézier first (so you can query your own data), then navigate to the [graphical browser for the API](https://api.bezier.octue.com/graphql/). Use the Documentation panel on the left to browse the contents of the API and build a query. Execute the query ▶️ and you've got data!

<figure><picture><source srcset="/files/2lzuJAvYz9zwas05B9dI" media="(prefers-color-scheme: dark)"><img src="/files/Pagy0gAIeFFpfDuT2RRj" alt=""></picture><figcaption></figcaption></figure>

## Generating tokens

To generate tokens for automating against the API, please [contact us](https://bezier.octue.com/contact/).


# Getting support

Steps to contact Bézier team for support.

{% embed url="<https://www.loom.com/embed/adb3570cb64040cf912535dc63159f44?sid=b299f562-c942-42e7-950e-662836c504f6>" %}

### Step 1

Start by navigating to the "Feedback" button on the left side bar.

<figure><img src="/files/rXyFnm4vOtVno1UrUf0e" alt=""><figcaption></figcaption></figure>

This action will open a dialog box where you can submit support requests.

### Step 2

From the available options, select the type of support needed, set the priority level for the request, and provide a detailed description to clearly explain the issue or request.

<figure><img src="/files/3AgnicmXjGraubXsM0R2" alt=""><figcaption></figcaption></figure>

### Step 3

Once you have completed entering all the necessary details, click on the "Submit" button to confirm that your support request has been successfully sent.

<figure><img src="/files/eA1790T06ATeuMqRLXSn" alt=""><figcaption></figcaption></figure>

Rest assured, support team will respond to you promptly.


# Need help with large power curve libraries? We’ve got you covered

If you are dealing with a large number of wind turbine power curves, manual digitisation can quickly become a drain on time and resources. For teams managing extensive power curve libraries, this often leads to unnecessary delays.

We can digitise your power curve library directly into Bézier for you. Our team handles the process from start to finish, ensuring your power curves are ready to use.

If you have too many power curves to digitise yourself, get in touch with [Haritha](mailto:haritha.rajesh@wind-pioneers.com) and we can discuss taking care of populating your library.


