AixLib.Fluid.Movers.BaseClasses.Euler.getPeak

# .AixLib.Fluid.Movers.BaseClasses.Euler.getPeak

Find peak condition from power characteristics

## Information

This function finds or estimates the peak point (V̇,Δp,η)|η=ηmax from the input power curve P(V̇) and pressure curve Δp(V̇) which may or may not contain non-zero values. The results are output as an instance of AixLib.Fluid.Movers.BaseClasses.Euler.peak. There are the following branches of computation based on information provided to the function:

- If Δp(V̇) is unavailable, the function simply outputs (0,0,0.7).
- If Δp(V̇) is provided but P(V̇) is unavailable, the function provides an estimation of the peak point at half of max flow rate (V̇max ⁄ 2, Δp(V̇=V̇max ⁄ 2), 0.7).
- If both Δp(V̇) and P(V̇) are available, the function first computes η(V̇)=V̇ Δp ⁄ P.
  - If η(V̇) has less than four data points or is monotonic, use one of the two which ever produces a higher η:
    - The interpolated point at half of max flow rate (V̇max ⁄ 2, Δp(V̇=V̇max ⁄ 2), η(V̇=V̇max ⁄ 2))
    - The available point with the highest computed efficiency.
  - Otherwise, the function runs a quartic regression on η(V̇) then solves its derivative to find an extremum. It assumes that there is only one extremum on the open interval (0,V̇max).

#### Interface

>     function getPeak
>       extends Modelica.Icons.Function;
>       input AixLib.Fluid.Movers.BaseClasses.Characteristics.flowParameters pressure "Pressure vs. flow rate";
>       input BaseClasses.Characteristics.powerParameters power "Power vs. flow rate";
>       output AixLib.Fluid.Movers.BaseClasses.Euler.peak peak "Operation point at maximum efficiency";
>     end getPeak;

## Revisions

- August 18, 2022, by Hongxiang Fu:
  First implementation. This is for #2668.

Generated at 2026-05-09T18:18:56Z by OpenModelicaOpenModelica 1.26.7 using GenerateDoc.mos