Articles | Volume 11, issue 5
https://doi.org/10.5194/wes-11-1751-2026
https://doi.org/10.5194/wes-11-1751-2026
Research article
 | 
19 May 2026
Research article |  | 19 May 2026

Optimal control of crosswind kite systems with an engineering wake model based on vortex loops and dipoles

Jochem De Schutter, Antonia Mühleck, Rachel Leuthold, and Moritz Diehl
Abstract

Modern crosswind kite systems provide a technological means to exert large aerodynamic forces in wind fields above the reach of conventional wind turbines, with applications such as airborne wind energy (AWE) generation and ship towing. A central challenge in kite system optimization is to both accurately and efficiently model self-induction effects on system design, performance, and operation. Vortex-based models are a natural candidate for this task as they provide a wake resolution that allows us to consistently capture kite-specific operating conditions. Existing vortex-based approaches have been developed under the assumption of static, axisymmetric flight, which is typically violated in practice. Therefore, we propose a vortex-based continuous-time wake model for simulation and optimal control of crosswind kites that is capable of capturing the unsteady, non-axisymmetric flight conditions induced by skewed inflow and gravity. The model represents the shed vorticity as a hybrid distribution of infinitesimal vortex loops and dipole elements and shows good agreement with simulation results obtained with the free-vortex solver DUST, with the remaining discrepancies largely due to convection-velocity selection. As a second contribution, we introduce a transcription strategy to efficiently incorporate the new model into periodic optimal control problems (OCPs). In a numerical case study based on a dual-kite system, we examine the sensitivity of the OCP optimal cost (average tether force) and design to the key transcription parameters. Based on this sensitivity analysis, we find an efficient transcription that solves the problem at three times the computational cost of the OCP without any wake model while still retaining accuracy (in terms of combined error of optimal cost and design) within 5 % compared to a highly resolved transcription of the wake-aware problem. In contrast, the solution of the no-wake problem deviates by 145 % compared to this highly resolved reference solution. Overall, the framework enables the efficient and wake-aware optimal control of crosswind kite systems and can be readily applied to industry-relevant applications such as single-kite airborne wind energy systems.

Share
1 Introduction

Kite systems have a millennia-long history in human civilization, with significant roles in culture, science, and technology (Hart1982). In recent decades, advances in computing and materials science have reignited interest in these systems, motivating researchers and engineers to develop a new class of high-performance kite-based technologies. As envisaged by Loyd (1980), most of these technologies rely on soft or rigid tethered wings performing fast crosswind manoeuvers to generate substantial aerodynamic forces, which can be harnessed for various applications such as ship towing (Fritz2013) or electricity generation through airborne wind energy (AWE) systems (Fagiano et al.2022). A further, yet unrealized, concept is that of airborne atmospheric actuators. Here, kite systems (without their own generation capability and thus with low complexity) could be installed strategically between wind turbines in an offshore wind farm, possibly only using existing infrastructure. By flying above the wind farm, they would be able to redirect airflow from the unaffected boundary layer into the wake of wind farms to enhance their overall efficiency through wake re-energizing. Initial simulation studies indicate that a wind farm performance boost of several percentage points could be attainable (Ploumakis and Bierbooms2018; Kokkedee2022; Van Niekerk2025).

One central engineering challenge for crosswind kite systems is the optimal co-design of the dynamic flight path of the kite together with its design parameters. Optimal control is a natural candidate tool for this task due to its inherent ability to deal with nonlinear constrained systems with multiple in- and outputs, which has resulted in widespread use, mainly in research (Vermillion et al.2021) but also in industry (Noga et al.2024). Optimal control comes with the drawback of a high computational cost and implementation effort. However, after more than a decade of research on efficient formulations and solution strategies (Horn et al.2013; Gros et al.2013; Malz et al.2020; Trevisi et al.2022) as well as open-source software developments (De Schutter et al.2023b), it is safe to say that efficient numerical optimal control of crosswind kite systems based on high-fidelity flight mechanics is readily available for control experts and non-experts alike.

In consequence, most current research in this field focuses on improving the fidelity of the optimization models, e.g. by incorporating more realistic and flexible tether representations (Heydarnia et al.2025) or by improving upscaling models (Joshi et al.2024). Another major modelling challenge concerns the self-induction of the kite system. Analogous to conventional wind turbines, the aerodynamic loading of crosswind kites generates a wake that is advected downstream. This wake, in turn, induces a local wind speed deficit at the kite position, thereby diminishing the available wind power. For horizontal-axis wind turbines, this self-blockage effect has been extensively studied and establishes a theoretical upper bound on the extractable wind power, widely known as the Betz limit (Manwell et al.2009).

Well-established induction modelling methods for horizontal-axis wind turbines are derived from momentum balance principles. However, these approaches cannot be directly applied to kite systems, as the fundamental assumptions that they rely on are typically violated. First, kite systems interact with the airflow over an annular rather than a full-disc region. Second, the aerodynamic loading is inherently non-uniform throughout a single crosswind loop. Third, the generated aerodynamic forces are often significantly misaligned with the freestream wind direction, a necessary condition to compensate for gravitational forces.

Therefore, in current engineering practice, self-induction effects are often neglected. Such a simplification is justified for existing small-scale prototypes, where relatively low aerodynamic loads act over large airborne areas. However, as system size and loading increase, and as flight trajectories are compacted to maximize power density, self-induction will become increasingly significant (Leuthold et al.2017; Kheiri et al.2019; Haas et al.2019; De Schutter et al.2023a). This effect is particularly pronounced in multi-kite configurations, where two or more wings fly tight crosswind loops around a shared main tether (Zanon et al.2014).

Moreover, kite systems possess many degrees of freedom, and their high controllability allows them to adjust their flight path so as to avoid wake effects in consecutive flight loops, thereby boosting performance, provided that this information is incorporated in the optimization model. In conclusion, the accurate performance assessment of utility-scale kite systems requires the development of optimization-friendly engineering wake models capable of capturing self-induction effects.

Initial research efforts have primarily focused on extending momentum-based models to the kite system context by deriving analytical formulations under various simplifying assumptions: steady, axisymmetric flight (De Lellis et al.2018; Kheiri et al.2019; Kaufman-Martin et al.2022); steady, non-axisymmetric flight (Akberali et al.2021); and (unvalidated) unsteady non-axisymmetric flight conditions (Zanon et al.2014; Leuthold et al.2018; De Schutter et al.2018, 2023a). However, there is currently no validated momentum-based approach available that accurately accounts for all relevant kite operating conditions. Moreover, as noted by Gaunaa et al. (2020), when using the 3D polar of the kite wing, these generalizations are physically inconsistent, leading to a double-counting of the contribution of the wake directly trailing the wing. If one would alternatively resort to a momentum approach using the 2D polar of the kite, application-specific root and tip corrections would need to be developed.

To address this last issue of consistency, Gaunaa et al. (2020), and subsequently Trevisi et al. (2023), developed physically consistent self-induction models for the steady, axisymmetric case. Their approach employed vortex methods as outlined by Branlard (2017) and demonstrated good agreement with higher-fidelity free-vortex wake simulations. A more versatile but numerically more expensive approach is offered by adding a discrete lifting-line vortex model in the transcription process of a general, unsteady AWE optimal control problem (OCP) (Leuthold et al.2024). In the aforementioned work, reasonable agreement of the vortex model with existing large-eddy simulation (LES) results from the literature is reported. However, the computational cost of the OCP currently scales unfavourably with the number of vortex elements included, which might result in a prohibitive numerical expense in certain scenarios.

In parallel, high-fidelity approaches have been developed based on coupling the full kite flight dynamics to virtual wind environments based on LES frameworks (in some cases combined with Reynolds-averaged Navier–Stokes methods) (Haas et al.2022; Crismer et al.2026; Pynaert et al.2025). While the computational expense of these methods is prohibitive for use in optimal control, the wake effects are captured implicitly through the flow solver and can be studied in great detail. In this sense, they provide the high-fidelity basis for a systematic validation of cheaper, lower-fidelity approaches, which is an interesting direction for the future. One current limitation of these methods is that they rely on flight trajectories that are generated without a wake model. This further highlights the need for reduced-order, optimization-friendly wake models that consistently account for self-induction effects.

The contribution of this paper is the formulation of a new optimization-friendly, vortex-based self-induction wake model that is capable of capturing the inherently unsteady and non-axisymmetric operating conditions of kite systems. Rather than deriving a simplified analytical approximation or employing a discrete vortex model, we represent the coupled dynamics of the kite system and its wake continuously through a combined differential-algebraic equation (DAE) and partial differential equation (PDE) framework. The resulting continuous model is validated in relevant conditions against the higher-fidelity free-vortex wake solver DUST. Finally, we demonstrate how the DAE- and PDE-based OCP can be efficiently transcribed into a standard continuous-time OCP formulation and analyse the sensitivity of the resulting problem to key transcription parameters.

To limit the scope of this paper, we consider a kite system with fixed tether length, thereby excluding pumping-style AWE systems, which rely on tether reeling. The kite system is also not equipped with on-board power generators, acting purely as an actuator. However, the developed methods in this paper can be directly applied to pumping- or fly-gen-type systems as well. In fact, due to their unsteady nature, these methods are particularly suited for capturing pumping wake patterns, including build-up during reel-out and reset due to reel-in. We focus here on a dual-kite system model to generate an interesting high-load scenario with significant induction effects. Similarly, application of the developed methods to single-kite systems is straightforward.

The remainder of this paper is organized as follows. Section 2 introduces the DAE model of a multi-kite system as described in the literature. Section 3 presents the vortex-based continuous wake model and its associated PDE dynamics. In Sect. 4, we present validation results by comparing model simulations with those from the free-vortex simulation framework DUST. Section 5 then formulates the coupled DAE–PDE OCP and discusses its efficient transcription into a continuous-time OCP form. Section 6 presents the results of a representative numerical case study. Finally, Sect. 7 provides a conclusion and outlines possible directions for future research.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f01

Figure 1Illustration of the dual-wing crosswind kite system considered in this paper.

Download

2 Kite system model

In this section, we present the flight dynamics model of a dual-kite system as shown in Fig. 1. The model is largely synthesized from the literature. As argued by Gros and Diehl (2013), for optimal control applications, it is beneficial to model the flight dynamics of tethered airfoils by an index-1 DAE such as

(1) F ( x ( t ) , x ˙ ( t ) , u ( t ) , z ( t ) , y ( t , ) , θ ) = 0 , t R ,

with states x(t), controls u(t), algebraic variables z(t), and design parameters θ. Here, we introduce the wake representation y(t,τ) as a new element.

The full wake state y(t,) represents the overall spatial vorticity distribution (e.g. structure, orientation, strength) that has resulted from the flight trajectory up until the current physical time t. The wake state y(t,τ) then represents an infinitesimal segment of this distribution, which has an age (or convection time) τR+, which represents the time elapsed since that portion of the wake was generated at the boundary τ=0. The evolution of the wake is described by the inhomogeneous transport equation

(2) d y d t ( t , τ ) + d y d τ ( t , τ ) = f ( y ( t - τ , ) ) , ( t , τ ) R 2 ,

with the boundary condition

(3) y ( t , 0 ) = g ( x ( t ) , y ( t , ) ) , t R .

Thus, overall, the kite system dynamics are described by a coupled DAE–PDE system. In this section, we focus solely on the DAE part of the dynamics. Section 3 then later describes the wake parameterization y(t,τ), source term function f, and boundary condition function g in detail.

2.1 Dual-wing flight dynamics

While high-fidelity 6DOF aircraft models are available in the literature and open-source software, we limit ourselves here to the more simple point-mass model as proposed by Zanon et al. (2013). The state, control, and algebraic variables are defined as

(4) x := ( q , q ˙ , C L , ψ ) , u := ( C ˙ L , ψ ˙ ) , z := λ ,

where q:=(q0,q1,q2)R9 are the positions of the centre point and the two wings, and CL∈ℝ2 are the lift coefficients and ψ∈ℝ2 the roll angles of the two wings. The algebraic variables λ∈ℝ3 are the Lagrange multipliers associated with the holonomic constraints

(5) c ( x , θ ) := 1 2 q 0 q 0 - l t 2 ( q 1 - q 0 ) ( q 1 - q 0 ) - l s 2 ( q 2 - q 0 ) ( q 2 - q 0 ) - l s 2 = 0 ,

which impose that the node positions are consistent with the tether lengths lt∈ℝ and ls∈ℝ of the main and secondary tethers, respectively. These parameters, together with the corresponding tether diameters dt∈ℝ and ds∈ℝ, can be optimized and are summarized in the parameter vector

(6) θ := ( l t , l s , d t , d s ) .

Using the Lagrangian mechanics with index reduction approach proposed by Gros and Diehl (2013) and implemented by De Schutter et al. (2023b), we can derive the following equations of motion:

(7) M q c q c 0 q ¨ λ = F ext

with the mass matrix

(8) M := M t + 2 M s 1 2 M s 1 2 M s 1 2 M s M s + m w I 3 0 1 2 M s 0 M s + m w I 3 ,

where mw is the wing mass, and the terms Mt:=13μtltI3 and Ms:=13μslsI3 are used to describe the inertia of the tether. The density per unit length of the tether lengths is a function of the tether diameter, i.e. μt:=ρtπdt24 and μs:=ρtπds24, with ρt being the material density.

The external force vector is given as

(9) F ext := F 0 - 3 2 g ( M t + 2 M s ) e z F 1 - g ( m w I 3 + 3 2 M s ) e z F 2 - g ( m w I 3 + 3 2 M s ) e z - q ˙ c ˙ q ˙ ,

with F0, F1, and F2 being the aerodynamic forces. In the implementation, Baumgarte stabilization is added in the last element of this vector to ensure consistency of the solution in the context of periodic optimal control (Gros and Zanon2018).

2.2 Aerodynamics

To compute the aerodynamic forces, we assume a uniform free-stream wind speed u∈ℝ3 and constant density ρ∈ℝ. Alternatively, realistic wind shear and density drop profiles can be incorporated as well in a straightforward fashion. Within the proposed framework of Sect. 3, the modelled wind shear would be taken into account automatically in the wake development. Within the scope of this paper, we limit ourselves to validating the model in uniform inflow conditions.

The wake state y(t,) induces a velocity field uif(qi(t),y(t,)) on top of the free-stream wind, resulting in a total wind field ut,i(qi(t),y(t,)), which is evaluated at each of the wing positions qi(t) for i{1,2}:

(10) u t , i ( q i ( t ) , y ( t , ) ) := u + u i f ( q i ( t ) , y ( t , ) ) .

For an explicit definition of the induced velocity functions uif, we refer to Sect. 3.

The apparent wind speed seen by each wing is then given by

(11) u a , i := u t , i ( q i ( t ) , y ( t , ) ) - q ˙ i ( t ) , i { 1 , 2 } ,

where, for notational simplicity, we further omit the explicit dependence on time.

Then, assuming no side-slip and direct control of the roll angle ψi of the wings, the resulting lift and drag forces are given by

FL,i:=12ρSwCL,i||ua,i||2(cos(ψi)eL,i-sin(ψi)eT,i)FD,i:=12ρSwCD,i||ua,i||ua,i,

with the vectors eL,i and eT,i defined by

(12) e T , i := u a , i × e r , i | | u a , i × e r , i | | , e L , i := e T , i × u a , i | | e T , i × u a , i | | ,

where er,i is the tether direction

(13) e r , i := q i - q 0 | | q i - q 0 | | .

The aerodynamic drag coefficient includes the induced-drag term of an elliptical wing in straight flight:

(14) C D , i := C D , 0 + C L , i 2 π AR ,

with CD,0 being the parasitic drag and AR the aspect ratio. Note that the induced-drag term approximates the effect of the velocities induced by the part of the wake directly trailing the wing. This will be taken into account in the wake model in Sect. 3 so as to avoid double-counting, similar to Trevisi et al. (2023).

The overall aerodynamic forces are given as

(15)F0=Ft,0(16)Fi=FL,i+FD,i+Ft,i,i{1,2},

where Ft,i values are the tether drag forces, proportional to the tether lengths and diameters. For each tether, these forces are computed for the boundary nodes such that they produce resultant forces and moments equivalent to those obtained by numerically integrating the drag distribution along the tether. To simplify the exposition, we refer to De Schutter et al. (2023b, Eq. 36) for the explicit expressions.

3 Continuous wake modelling

We start our exposition of the continuous wake model by assuming that the two wings each have their own separate trailing wake described by the states y1(t,τ)Rny and y2(t,τ)Rny, respectively, which are combined to form a total wake state:

(17) y ( t , τ ) := y 1 ( t , τ ) y 2 ( t , τ ) .

This wake state is the unique solution to the initial value problem defined by Eqs. (2) and (3). This solution can be explicitly expressed for each wake state i{1,2} in terms of the functions fi and gi:

(18) y i ( t , τ ) := g i ( x ( t - τ ) , y ( t - τ , ) ) + 0 τ f i ( y ( t - τ , ) ) d s .

The forcing terms fi(t,τ) can be used to model the wake convection and effects such as viscous dissipation and radial expansion. Within the scope of this paper, we assume rigid convection with a velocity assigned at the moment of shedding. The functions gi model the vortex properties at the moment of shedding, which depend on the system state and on the entire vortex structure itself (via the induced velocities).

The induced velocity evaluated at the position of each wing qi is the superposition of the induced velocities of the individual wakes. These velocities are computed as an integral over the entire wake structure, assuming an infinitely long wake. For each wing, we ignore the induction of its own trailing wake less than a time T away (“near” wake) and instead account for these near-wing effects through the induced-drag term. Accurately resolving this region would require a significantly finer representation of the vortex distribution close to the wing, increasing model complexity and computational cost. Beyond the time T (“far” wake), we assume that the shed vorticity has rolled up into two trailing vortices. Therefore, we arrive at the following expression for the induced velocities for wing 1:

(19) u 1 f ( q 1 ( t ) , y ( t , ) ) := T u ( q 1 ( t ) , y 1 ( t , τ ) ) d τ + 0 u ( q 1 ( t ) , y 2 ( t , τ ) ) d τ

and vice versa for wing 2.

Thus, to define a wake model in this framework, one must define a wake state representation yi and the corresponding forcing and shedding functions fi and gi and then model the induced velocity with the function u.

3.1 Continuous vortex-loop model

We propose to model each wake structure yi(t,) as a continuous trail of infinitely small vortex rectangles made up of infinitely thin vortex filaments with variable circulation strength Γi(t,τ), as shown in Fig. 2 (left). The pair of chordwise vortex filaments with infinitesimal length ds model the rolled-up wing tip vortices. The wake is shed with the apparent wind speed; hence the infinitesimal length can also be written as a function of τ as ds:=||ua,i(t-τ)||dτ. We assume that these chordwise filaments are located at a distance of π4b from each other (Gaunaa et al.2020), symmetric relative to the rectangle centre position qv,i(t,τ). This distance equals the length of the pair of spanwise vortex filaments, which capture the shed vorticity caused by the variation in lift force over time. The orientation of the rectangles is determined by the normal unit vector en,i(t,τ) and chordwise unit vector ec,i(t,τ). The wake states are then defined as

(20) y i ( t , τ ) := q v , i ( t , τ ) Γ i ( t , τ ) e n , i ( t , τ ) e c , i ( t , τ ) .

For the forcing term, we assume rigid downstream convection with a velocity uconv,i(y(t-τ,))R3. This assumption implies that the shed wake elements are transported without deformation or dissipation:

(21) f i ( y ( t - τ , ) ) := u conv , i ( y ( t - τ , ) ) 0 7 × 1 .

In reality, the wake evolution results from complex vortex–vortex interactions and self-induced deformations, which are computationally prohibitive to resolve explicitly. To account for these effects in a tractable manner, Sect. 4 introduces and compares three heuristic strategies for selecting the convection velocity.

The shedding laws gi are defined such that the shed rectangle centre positions qv,i(t,0) coincide with the wings' aerodynamic centre, here assumed equal to the centre of mass positions qi(t). The trailing vortex strength Γi(t,0) follows from the Kutta–Joukowski theorem (Gaunaa et al.2020; Trevisi et al.2023) for elliptic wings, while the rectangle unit vectors en,i(t,0) and ec,i(t,0) are aligned with the lift force and apparent wind speed, respectively, which are orthogonal by definition:

(22) g i x ( t ) , y ( t , ) := q i ( t ) 2 b π AR C L , i ( t ) | | u a , i ( t ) | | F L , i ( t ) | | F L , i ( t ) | | u a , i ( t ) | | u a , i ( t ) | | .

Finally, the induced velocity at a position q^R3 by an infinitesimally small rectangle per unit width ds=||ua(t-τ)||dτ is given by

(23) u ( q ^ ( t ) , y i ( t , τ ) ) := d u vl ( q ^ , y i ( t , τ ) , Δ s ) d Δ s Δ s = 0 | | u a , i ( t - τ ) | | ,

where the function uvl computes the velocity induced by a rectangular vortex loop of chordwise extent Δs, obtained from the Biot–Savart law applied to its four bounding vortex filaments, as written out in Appendix A.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f02

Figure 2Illustration of the continuous wake representation based on rectangular vortex loops with the infinitesimally small width ds:=ua(t-τ)dτ (left) and of the wake representation based on a continuous trail of vortex dipoles (right).

Download

3.2 Continuous vortex dipole model

The symbolic complexity of Eq. (23) is relatively high, leading to expensive numerical derivatives and a high memory usage. This complexity can be reduced by applying a multi-pole expansion of the infinitesimal vortex loops and retaining only the leading non-vanishing term, which gives us a far-field approximation of the original induced velocity. This approximation can be interpreted as the induced velocity of a source dipole whose dipole moment is proportional to the enclosed area of the rectangular vortex loop.

Thus, we can also model the wake state as a continuous trail of vortex dipoles, visualized in Fig. 2 (right) as well, which can be conveniently written as a function of the vortex-loop state:

(24) y d ( y i ( t , τ ) ) := q v , i ( t , τ ) m d , i ( t , τ ) ,

with the dipole moment per metre of trailing wake given by

(25) m d , i ( t , τ ) := Γ i ( t , τ ) π b 4 e n , i ( t , τ ) .

The induced velocity function of the vortex dipole wake is given by the much simpler expression

(26) u d ( q ^ ( t ) , y i ( t , τ ) ) := 1 4 π 3 r ( r m d , i ) - m d , i | | r | | 2 | | r | | 5 | | u a , i ( t - τ ) | | ,

with

(27) r := q ^ ( t ) - q v , i ( t , τ ) .

Note that the vortex dipole induced velocity is written explicitly as a function of the vortex-loop state yi(t,τ) so that the same state representation can be used for this model as well.

3.3 Continuous hybrid vortex model

With these two modelling options on the table, it is intuitive to conceptualize a hybrid wake model, consisting on the one hand of a costly vortex-loop model that captures the induction of the closest wake segments in detail and, on the other hand, the numerically cheaper vortex dipole moment to include the influence of the wake segments further downstream, as illustrated by Fig. 3.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f03

Figure 3Illustration of the proposed hybrid rectangle–dipole model. The first half period of the trailing wake is modelled as a straight-flight wake. Then, a full period is modelled using the continuous vortex-loop model, and all remaining periods are modelled using the continuous dipole model.

Download

We devise the hybrid model by splitting the integrals in Eq. (19) at the location τ=TA for the self-induced velocity of each wing and at location τ=TB for the velocity induced by the wake of the other wing. For wing i=1, this gives

(28) u 1 f ( q 1 ( t ) , y ( t , ) ) := T T A u ( q 1 ( t ) , y 1 ( t , τ ) ) d τ + T A u d ( q 1 ( t ) , y 1 ( t , τ ) ) d τ + 0 T B u ( q 1 ( t ) , y 2 ( t , τ ) ) d τ + T B u d ( q 1 ( t ) , y 2 ( t , τ ) ) d τ ,

where the induced velocity for wing i=2 is simply obtained by switching the wing indices for the variables qi and yi. For each wing, we ignore the self-induced velocity for the first time interval with length T.

In this formulation, we can retrieve the full vortex-loop model (TA=TB=), the full vortex dipole model (TA=T,TB=0), or any variant in between.

4 Continuous wake model validation

To validate the new continuous wake formulation, we compare the model with the higher-fidelity, free-vortex software tool DUST (Tugnoli et al.2021), an open-source, mid-fidelity aerodynamic solver specifically designed for analysing complex and non-conventional aircraft configurations. The software features a lifting-line method to compute the aerodynamic loads, coupled to a highly resolved simulation of the wake using a vortex particle method that allows it to capture the complex vortex-to-vortex interactions that are largely ignored in the proposed optimization model.

4.1 Wing geometry and wake simulation in DUST

Two near-elliptic wings are generated using a parametric mesh with 40 discrete spanwise sections of the NACA 4421 airfoil. The discretization introduces deviations from an ideal elliptical planform, leading to reduced aerodynamic efficiency. To account for this, a span efficiency factor e is incorporated into the induced-drag model (Eq. 14):

(29) C D , i := C D , 0 + C L , i 2 π AR e ,

and the corresponding trailing vortex strength in Eq. (22) is scaled accordingly:

(30) Γ i ( t , 0 ) := 2 b π AR e C L , i ( t ) u a , i ( t ) .

The efficiency factor, e≈0.75, is identified from a series of straight-flight DUST simulations across varying angles of attack. Inflow speeds are chosen to match the apparent wind conditions of the validation flight trajectory, ensuring consistency in Reynolds number. The factor e is then obtained by fitting Eq. (29) to the simulated drag polar.

To simulate the wake in DUST, we must prescribe a kinematic flight trajectory for the wings. To obtain a representative trajectory, we feed into DUST the optimal periodic wing position trajectories and orientations obtained by solving the optimization problem defined by Eq. (59) from Sect. 5. The rationale behind the dual-kite set-up is to generate an extremely high-load scenario with a small convection distance between the wings and the trailing vorticity structure. This constitutes a worst-case test for the ability of the vortex-loop model to accurately represent the induced velocity close to the wake structure. Lower-load scenarios (e.g. with a medium-scale single-wing system) are expected to be less demanding and to be representable with at least comparable, if not improved, accuracy.

One remaining problem is that the angle of attack is not explicitly modelled in the optimal orientation trajectory, since the optimization model assumes direct lift coefficient control. Therefore, in a preprocessing step, we apply a pitch correction to impose the angle of attack that would produce the same lift coefficient under the same conditions (including the induction effects predicted by the wake model), using the simulated 3D lift polar.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f04

Figure 4DUST wake simulation result over 6.5 flight loops as visualized in Paraview. The flight trajectory is visualized in green.

Download

The simulation is initialized in a vortex-free state, with vortex particles being shed during the simulation. We run the DUST simulation for 6.5 periods of the optimal state trajectory to allow for the wake build-up to reach a steady state. Figure 4 visualizes the simulation result, showing a distinct helicoidal wake structure in the first part of the wake, followed by an increasing break-up of this structure due to the vortex-to-vortex interactions. In postprocessing, we can retrieve the vortex particle trajectories, the induced velocity field at all time steps, and the aerodynamic loads obtained from the lifting-line approach. The toolchain to generate the necessary DUST input files as well as the input data and more detailed simulation settings (e.g. particle size) are made publicly available.

4.2 Wake convection comparison

To compare the DUST wake simulation with the proposed wake model, we evaluate the wake using the analytic solution defined by Eq. (18) and compute the induced velocities via Eq. (19) using a high-accuracy numerical integration scheme, running the integral up to 6.5 periods in the past. For the forcing term in Eq. (18), describing the wake convection, we consider three different convection velocity variants. For each variant, we obtain a different wake solution and a different time-dependent induced velocity field, which can be used to correct the aerodynamic loads obtained in the prescribed flight trajectory.

The first variant (“free”) assumes no vortex-to-vortex interaction at all and prescribes convection with the free-stream wind velocity:

(31) u conv , i ( y ( t - τ , ) ) := u .

The second variant (“far”) assumes convection with reduced velocity due to far-wake induction at the time of shedding; i.e.

(32) u conv , i ( y ( t - τ , ) ) := u + u i f ( q v , i ( t - τ , 0 ) , y ( t - τ , 0 ) ) .

The third variant (“near”) assumes convection with reduced velocity due to “near-wake” self-induction, as proposed by Trevisi et al. (2023); i.e.

(33) u conv , i ( y ( t - τ , ) ) := u - C L , i u a , i π AR e e x .
https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f05

Figure 5Comparison of snapshots of the vortex-loop wake position and orientation for the three convection velocity variants plotted against the DUST simulation, for fully developed wakes of 6.5 periods and at the intersections with the xz plane. The snapshots focus on the top part of the wake. The trajectory of wing 1 is included, as well as the position and orientation of wing 1 at the time of the snapshot. The blue arrows represent the normal unit vectors en,i of the vortex loops. The red dots visualize the boundaries of the vortex loops which should coincide with the location of the rolled-up tip vortices.

Download

Figure 5 shows the position in the xz plane of the DUST vortex particles for the upper part of the wake. We compare this result with the predicted vortex-loop wake trajectory and orientation as they cross this plane, for each of the three variants. Firstly, it is visible that in the first, most influential part of the wake, the wake orientation and the distance between the tip vortices match well with the DUST simulation, although the bottom DUST tip vortex is convected slightly downwards. Further downstream, the models start to diverge due to wake deformation and expansion.

We can now assess the convection velocity fit by comparing the locations of the tip vortices predicted by both models. The “free” variant strongly overestimates the convection velocity, as the consecutive DUST tip vortices pop up much sooner and closer to the wing trajectory. For the “near” variant, the opposite is true: it provides a strong underestimation. The “far” variant provides the best fit, although some overestimation remains. In the remainder of this work, we apply the latter variant and delegate further improvements to future work.

4.3 Comparison of the induced velocity at the wing and the aerodynamic loads

For the purpose of optimal control, we are primarily interested in the induced velocity evaluated at the wing position and its effect on the aerodynamic loads. However, the DUST model does not differentiate between the induced velocity by the “far”-wake structure and the local circulation around the wing that produces lift, as we do in the optimization model. Thus, to eliminate the local circulation effect around the wing, we probe the wind field by means of an imaginary pitot tube of length lp=0.9b pointing forward in the chord direction. For the vortex-loop model, we evaluate the induced velocity at the same location:

(34) u ^ i f ( t ) := u i f ( q i ( t ) + l p e c , i ( t ) , y ( t , ) ) ,

with ec,i being the pitch-corrected chordwise body frame vector.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f06

Figure 6Comparison of the induced velocity (left) and aerodynamic force (right) components corresponding to the continuous vortex-loop and DUST simulations. Note that the vortex-loop profiles are periodic and correspond to a developed wake of 6.5 periods, whereas the DUST simulation starts with no wake history, and thus we can observe the wake build-up.

Download

Figure 6 (left) shows the component-wise comparison of the measured induced velocity, normalized with the free-stream wind speed. For the first half rotation, the DUST induced velocity is almost zero, as the wake has not developed yet. After that, the magnitude of the induced velocity increases rotation after rotation as the wake builds up until it reaches a steady state. When comparing the induced velocities at the end of the DUST simulation with those from the periodic vortex-loop simulation, we see very good agreement between the y and z components. Also for the x component, the vortex-loop model captures the unsteady nature of the wake very well. However, due to the overestimation in convection velocity, the vortex-loop model underestimates the induced velocity by up to 25 % in the dominant x direction.

Figure 6 (right) shows the effect of this mismatch on the different components of the aerodynamic loads F^i:=FL,i+FD,i. Again, we have very good agreement in the y and z directions. In the x direction, the induced velocity mismatch leads to an overestimation of the angle of attack and consequently an overestimation of the loads up to 5 %.

In summary, the vortex-loop model provides a strong match with the DUST benchmark. The y and z components of the induced velocities are captured with high accuracy. In the dominant x direction there is a moderate mismatch, mainly resulting from the limitations of the convection model. Nevertheless, it is important to note that the model reproduces the unsteady and non-axisymmetric nature of the wake, which conventional approaches fail to represent, very well.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f07

Figure 7Snapshot of the axial induction factor fields (ax:=uxf(q,y(t,))u,x) in the y^z^ plane perpendicular to the average main tether direction, located at the average wing position (top row), in the plane defined by y=0 (middle row) and the vertical induction factor az:=uzf(q,y(t,))u,x) in the plane defined by y=0. Note that we include the “near-wake” part of the vortex x-loop induction; i.e. the first integral in Eq. (19) starts at τ=0. The wing trajectories are included in green (wing 1) and purple (wing 2). The wings are drawn at their position and with their orientation at the moment of the snapshot.

Download

4.4 Comparison of the induced velocity field in the neighbourhood of the wing

For optimization purposes, it is important to have a good model for the induced velocity evaluated not only at the wing position, but also in its surrounding neighbourhood. Therefore, we also compare the induced velocity field of the vortex-loop model with that of DUST in the region around the optimal trajectory. Figure 7 (top row) shows a snapshot of the wake at the same time point t as in Fig. 5. It shows the induction factor ax in the x direction in a plane perpendicular to the average main tether direction, located at the average wings' position. The induction factor is computed taking into account the contribution of the entire wake. Figures 7 (middle row) and 7 (bottom row) plot the induction factor in the x and z directions. In accordance with the findings in the previous section, we can discern a slight overall underestimation of the induced velocities in front of the wake. Nevertheless, the qualitative fit is very good in all directions.

5 Efficient problem formulation

After the validation of the proposed wake model in the previous section, the goal of this section is to use this model in optimal control problem (OCP) formulations and outline the transcription and approximation steps taken to arrive at an efficient implementation. Therefore we first formulate the envisaged PDE-based optimal control problem in continuous time. Then we propose a wake discretization strategy using auxiliary wake states. This approach transcribes the PDE optimization problem into a standard continuous-time OCP with state jump constraints for the wake states. Finally, we introduce further simplifications to render the final OCP numerically tractable.

5.1 PDE optimal control problem

For all types of crosswind kite systems, the challenge is to compute periodic flight orbits that maximize a certain averaged performance index. In the AWE case, the performance index is typically the power output. For the atmospheric airborne actuator case, as well as for the ship-towing case, the tether-pulling force is to be maximized. For the airborne actuator case, this metric is used as a proxy for the amount of momentum that it can redirect into the wind farm:

(35) l ( x ( t ) , u ( t ) , z ( t ) , θ ) := - F t ( t ) := - λ 0 ( t ) l t

while satisfying the following constraints:

(36) h ( x ( t ) , u ( t ) , z ( t ) , θ ) := π d t 2 σ max - 4 F t ( t ) ( 2.2 b ) 2 - ( q 2 - q 1 ) ( q 2 - q 1 ) ν - ν min ν max - ν 0 ,

which impose a maximum tether stress constraint, an anticollision constraint, and the bounds on the variables ν:=(x,u,z,θ,T).

Further, since the optimal state trajectory will be periodic, the wake state will be periodic in t as well. Therefore we can reformulate the wake transport equation as

(37) d y d t ( t , τ ) + d y d τ ( t , τ ) = f ( y ( [ t - τ ] , ) ) ,

with the modulo operator [t]:=t mod T so that the wake state only needs to be tracked for t0,T. Using this reformulation, we can formulate the following continuous and periodic PDE optimal control problem:

minimizex(),u(),z()y(,),θ,T1T0Tl(x(t),u(t),z(t),θ)dt

subject to

(38) F ( x ( t ) , x ˙ ( t ) , u ( t ) , z ( t ) , y ( t , ) , θ ) = 0 t [ 0 , T ] h ( x ( t ) , u ( t ) , z ( t ) , θ ) 0 , t [ 0 , T ] d y d t ( t , τ ) + d y d τ ( t , τ ) - f ( y ( [ t - τ ] , ) ) = 0 t [ 0 , T ] τ [ 0 , ) y ( t , 0 ) - g ( x ( t ) , y ( t , ) ) = 0 t [ 0 , T ] x ( 0 ) - x ( T ) = 0 .

This problem is infinite-dimensional in both t and τ and numerically intractable. The first step is to transcribe the problem into a form that is only infinite-dimensional in t.

5.2 Wake transcription

We propose discretizing the wake on a uniform grid of M points in the τ space:

(39) 0 < τ 1 < < τ j < < τ M < T ,

and introduce the periodic wake state on this grid

(40) y ( j ) ( t ) y ( t , t + τ j ) ,

which approximately tracks the evolution of points j in the wake, originating at a time t=-τj=T-τj, which are convected away as time progresses. We can derive that the derivative of this wake state should approximate the forcing term in Eq. (37):

(41) y ˙ ( j ) ( t ) f ( y ( - τ j , ) ) ,

and we model its origination as an impulsive event along its periodic trajectory:

(42) y ( j ) ( - τ j + ) g ( x ( - τ j - ) , y ( - τ j - , ) ) .

Note how in Eq. (41) the individual derivatives each depend on the entire wake history, which is counterproductive as it produces cross-couplings over different time instances. To arrive at a more classical state equation, we propose extending the wake states with these derivatives and collecting both in one overall wake state:

(43) Y ( t ) := y ( 1 ) ( t ) y ˙ ( 1 ) ( t ) y ( M ) ( t ) y ˙ ( M ) ( t ) .

The state equation is trivially given by (assuming rigid convection)

(44) Y ˙ ( t ) = F Y ( Y ( t ) ) := y ˙ ( 1 ) ( t ) 0 y ˙ ( M ) ( t ) 0 ,

and the impulse effect can be written as

(45) Y ( - τ j + ) = G j ( x ( - τ j - ) , Y ( - τ j - ) ) ,

with the impulse function defined as

(46) G j ( x ( t ) , Y ( t ) ) := y ( j ) ( t ) - g ̃ ( x ( t ) , Y ( t ) ) y ˙ ( j ) ( t ) - f ̃ ( Y ( t ) ) .

Here, the functions f̃ and g̃ are defined by replacing the induced velocity expression in the functions f and g as follows:

(47) u 1 f ( q 1 , y ( t , ) ) u ̃ 1 f ( q 1 , Y ( t ) ) ,

where the function ũ1f is obtained via a numerical integration scheme based on the discretized wake state Y(t) (see below).

To simplify notation, we further only consider the hybrid model where each wing experiences its own induction through the dipole model only (TA=T) and the induction caused by the other wing's wake only for one full rotation with the vortex-loop model (TB=2T). As discussed later in Sect. 6, this model choice is sufficiently accurate compared to the full vortex-loop model. Nevertheless, the following developments can be worked out for all different hybrid variants as well.

The integrals in Eq. (28) extend over an infinite horizon in the τ domain, whereas the wake state Y(t) retains only a single period T of past history. However, using the analytic wake solution formula (Eq. 18) and exploiting the wake periodicity, we can look further in the past by introducing (e.g. for a wing “i”, as seen by wing “1”) a finite number Nd of “duplicate” wake states y1i,d(j)(t), based on the tracked wake states yi(j)(t), which are convected downwind for d periods of duration T:

(48) y 1 i , d ( j ) ( t ) := y i ( j ) ( t ) + ( d + p 1 i n ( t , τ j ) ) T y ˙ i ( j ) ( t ) .

Note that we also introduced the “near-wake parameter” p1in(t,τj), which ensures that we only consider the duplicates of those wake states that are in the near-wake region at the current time point t. Formally, this parameter is defined as (for i{1,2}):

(49) p i i n ( t , τ j ) := 1 if t - τ j , 0 if t < - τ j ,

and

(50) p 12 n ( t , τ j ) := 0 if t - τ j , 1 if t < - τ j ,

and p21n=p12n.

Based on the introduced duplicate wake states, the induced velocity for wing 1, using the hybrid model, can be computed numerically as follows using the midpoint integration rule:

(51) u ̃ 1 f ( q 1 ( t ) , Y ( t ) ) := i = 1 2 d = 1 N d j = 1 M u d ( q 1 ( t ) ) , y 1 i , d ( j ) ( t ) Δ τ + j = 1 M u ( q 1 ( t ) ) , y 1 i , 0 ( j ) ( t ) ) Δ τ .

The induced velocity ũ2f(q2(t),Y(t)) for wing 2 is simply obtained by a change of index.

5.3 Window of influence

At every time instance t, the induced velocities defined by Eq. (51) depend on the entire wake state Y(t). This results in a dense sensitivity structure for the dynamics, which ultimately leads to a high memory usage, and more time spent in the linear solver backend of the optimization solver. Experience showed that it is crucial to exploit the fact that the influence of each wake element at any given time depends on how close it is to the position of the wing at that time. Therefore, the contribution of more remote elements can be neglected at a low loss of accuracy. We implement this by assigning a moving window of influence to each wing.

To this end, we divide the time grid in Nw equidistant intervals

(52) 0 = t 0 < < t k < < t N = T ,

and as the wing passes through each interval, we only take into account the wake segments that originate from that particular interval and the neighbouring Nf intervals, as illustrated by Fig. 8.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f08

Figure 8Illustration of the proposed fixed window of influence for a dual-kite system with a number of intervals Nw=16, number of discrete vortex elements M=32, number of duplicates Nd=1, and number of neighbouring elements taken into account Nf=1 by the window of influence.

Download

At a given time point t, we determine the current interval k as

(53) k := N t T ,

and the window that is taken into account in interval k is defined by the boundaries

(54)T¯f,k:=tk-NfTN,(55)T¯f,k:=tk+1+NfTN.

We then introduce the “far-wake parameters”

(56) p i i f ( t , τ j ) := 1 if - τ j T ¯ f , k , T ¯ f , k , 0 otherwise ,

and

(57) p 12 f ( t , τ j ) := 1 if { - τ j , 2 T - τ j } T ¯ f , k , T ¯ f , k 0 otherwise ,

with p21f=p12f. This parameter is then used to switch the contribution of the individual wake elements on and off, e.g. for wing i=1,

(58) u ̃ 1 f ( q 1 ( t ) , Y ( t ) ) := i = 1 2 d = 1 N d j = 1 M p 1 i f ( t , τ j ) u d ( q 1 ( t ) ) , y 1 i , d ( j ) ( t ) Δ τ + j = 1 M p 1 i f ( t , τ j ) u ( q 1 ( t ) ) , y 1 i , 0 ( j ) ( t ) ) Δ τ .

The parameter Nf can then be tuned in numerical experiments to achieve the best trade-off between accuracy and computation time.

5.4 Continuous-time OCP implementation

By transcribing the wake model as detailed above, we can reformulate the PDE optimal control problem from Eq. (38) into the more standard continuous-time formulation

minimizex(),u(),z()Y(),θ,T1T0Tl(x(t),u(t),z(t),θ)dt

subject to

(59) F ̃ ( x ( t ) , x ˙ ( t ) , u ( t ) , z ( t ) , Y ( t ) , θ ) = 0 t [ 0 , T ] h ( x ( t ) , u ( t ) , z ( t ) , θ ) 0 , t [ 0 , T ] Y ˙ ( t ) - F Y ( Y ( t ) ) = 0 , t [ 0 , T ] Y ( τ j + ) - G j ( x ( ( τ j - ) , Y ( τ j - ) ) = 0 , j I 1 M x ( 0 ) - x ( T ) = 0 Y ( 0 ) - Y ( T ) = 0 ,

where the dynamics F̃ are obtained by inserting the induced velocity expression from Eq. (58) into the dynamics F.

Because the system under consideration is not reeling, a solution consisting of a single periodic flight loop is of practical interest. Moreover, specifically for this dual-kite case, we can consider the relevant solution where both wings fly identical trajectories, phase shifted by half a period. In this case, while one wing flies, e.g. the downstroke part, the other one simultaneously flies the upstroke. After half a period, the roles are reversed, and the first wing flies the identical upstroke and the other one the identical downstroke. To avoid simulating the same upstroke and downstroke twice, we can instead integrate the dynamics over only half an orbit, and instead of enforcing periodicity on the wing states, we can implement the “role reversal” by matching the end state of each wing to the initial state of the other, as proposed by Zanon et al. (2013):

(60) x 1 ( T ) - x 2 ( 0 ) x 2 ( T ) - x 1 ( 0 ) ,

with xi:=(qi,q˙i,CL,i,ψi), for i{1,2}. As a consequence, the variables N, Nw, and M can be reduced by a factor of 2 while still simulating the full flight loop and wake with identical accuracy. Only the number of duplicates should be doubled to retain the same wake history. The time variable T automatically becomes the desired half-rotation near-wake cut-off time period.

We then transcribe this problem into a nonlinear program (NLP) using a direct collocation approach. The OCP is discretized using N=8 collocation intervals. Each interval consists of four RadauIIa collocation points, and the transcription includes a time transformation approach to deal with the variable time grid, as detailed by De Schutter et al. (2023b). Additionally, the computational performance benefits from additional lifting of the induced velocities as algebraic variables to reduce nonlinearity and symbolic complexity. We implemented this problem in the open-source framework AWEbox (De Schutter et al.2023b), which relies on the symbolic framework CasADi (Andersson et al.2019) for automatic differentiation and the interface to the NLP solver IPOPT (Wächter and Biegler2006), using MA57 (HSL2011) as the linear solver backend. The problem is solved on an Intel Core i7 2.5 Ghz, 16 GB RAM.

6 Numerical example

In this section, we illustrate the proposed approach by means of a numerical case study where a highly resolved reference OCP with a wake model is solved, and the solution and computational expense are compared to those of a no-wake OCP. In a second step, we investigate the sensitivity of the OCP solution and its computational expense with respect to key transcription parameters.

Table 1Kite system model parameters used in the numerical example.

Download Print Version | Download XLSX

Table 2System variable bounds.

Download Print Version | Download XLSX

6.1 OCP solution comparison

To illustrate the proposed approach, we solve the OCP from Eq. (59) for a dual-kite system using the numerical parameters provided by Table 1 and with the variable bounds νmin and νmax summarized in Table 2. As mentioned in Sect. 4, the dual-kite set-up is chosen to generate an interesting scenario for the validation. The wing size is chosen to be in the large-scale range envisaged by e.g. Kruijff and Ruiterkamp (2018) to decrease the sensitivity of the solution to tether drag in favour of the induction effects. Other properties and bounds represent typical values from the AWE literature, e.g. for tether properties (Malz et al.2019) and aerodynamic properties and mass scaling (Zanon et al.2013). The induction effects are roughly invariant with respect to the chosen wind speed. However, since the wind speed is chosen relatively high (u=12ms-1ex), the effect of the wing mass on the dynamic trajectory is rather small in this example.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f09

Figure 9Comparison of the total aerodynamic forces obtained in the OCP with reference transcription of the hybrid model, with those obtained using the vortex-loop model and DUST simulation using the same boundary condition.

Download

To generate a first reference solution, the wake discretization parameters are chosen so that a good fit with the post-ex analytic wake solution is achieved. Figure 9 shows the obtained total aerodynamic forces compared to the analytic vortex-loop and DUST simulations using the same boundary condition. The fit is very good, which validates not only the reference transcription, but also the hypothesis of the hybrid model: that only the initial part of the wake needs to be modelled with vortex loops but that the rest of it can be modelled accurately with vortex dipoles. Table 3 summarizes the chosen parameters. Note that these parameters are valid for the half-periodic formulation of the OCP.

Table 3Wake discretization parameters used in the half-periodic OCP formulation.

Download Print Version | Download XLSX

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f10

Figure 10Optimal flight trajectories corresponding to the solution of the OCP from Eq. (59), where the induction is discarded (left) and where the hybrid induction model is used (right).

Download

Figure 10 shows the resulting optimal flight trajectory in comparison to the case where no induction (NI) model is included. Note that the corresponding optimal wake state, induced velocities, and aerodynamic forces have already been discussed in Sect. 3 and shown in Figs. 4 to 7. Table 4 summarizes the main results of the optimization. The chosen induction model parameterization increases the computation time per iteration tCPU by a factor of 16 compared to the NI case.

Table 4Optimal solution indicators and computation time.

Download Print Version | Download XLSX

The optimizer increases the secondary tether lengths from 2.5 in the NI case to almost 10 wing spans. While this leads to higher tether drag losses, it allows the system to fly longer time periods T, which creates a larger convection distance between the system and its wake. Hence, the induction losses are reduced up to the point where the tether drag becomes dominant.

Also, because the available wind speed is reduced, the wings fly more slowly and experience a 30 % lower airspeed compared to the NI case, and they produce 55 % less average tether force. As a result, the tether diameters can be dimensioned smaller, which helps to dampen the effect of the increased tether drag. In conclusion, both the optimal design and the performance of the considered system are highly sensitive to the inclusion of induction effects.

We note that in this example, the resulting average airspeed of 190 m s−1 in combination with the small turning radius leads to immense and practically infeasible centrifugal accelerations. A more realistic trajectory could be attained by lowering the design wind speed. Nevertheless, induction effects are roughly invariant with respect to the wind speed, and similar validation and design trade-off results are therefore expected for lower design wind speeds with lower flight speeds and therefore a more reasonable flight envelope.

Another improvement would be to add a mass-scaling law that takes into account the effect of the loading of the wing. In this very high loading case, this would lead to a significantly higher wing mass and therefore a different design trade-off possibly favouring even shorter tether lengths to minimize the upwards flight path length. However, in the dual-kite set-up considered here, where only one of the two wings flies upwards at a time, the effect of wing mass on the optimal trajectory is typically low (De Schutter2024), and we omit this extension for simplicity.

6.2 Discretization sensitivity

To assess the trade-off between computational effort and solution accuracy, we evaluate the impact of coarser wake parameterizations relative to the reference case. Each discretization parameter (M, Nd, and Nf) is independently reduced, while the others are held at their reference values. For each configuration, the optimal control problem is resolved, and the resulting computational cost and accuracy are compared against the reference solution. The error E is defined relative to the reference solution so as to capture both the accuracy of the cost and that of the optimal design:

(61) E := F ¯ t - F ¯ t , ref F ¯ t , ref θ - θ ref θ ref .

Figure 11 shows the trade-off between computational cost and accuracy across the tested wake parameterizations, including the no-induction (NI) case.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f11

Figure 11Comparison of CPU time vs. relative error E of different wake parameterizations compared to the reference parameterization (CPU time given by dashed black line).

Download

As the number of wake duplicates is reduced (Nd), the solution accuracy is significantly affected. In particular, whether to include the first duplicate (Nd=1) or not has a large influence. The computation time, on the other hand, is hardly affected, as the duplicates do not change the NLP dimensions or sparsity pattern. This suggests that the number of duplicates should be carefully selected but that they can be added at little additional computational cost.

https://wes.copernicus.org/articles/11/1751/2026/wes-11-1751-2026-f12

Figure 12Time-resolved optimal far-wake induction profile (x component), evaluated at wing 1, for different numbers of wake elements M compared with the exact vortex-loop solution evaluated for M=24.

Download

Reducing the window of influence size (Nf) significantly decreases computation time, as the resulting NLP becomes increasingly sparse. However, when the window is chosen too small (in this case, Nf=0), solution accuracy deteriorates, and a spurious trajectory is obtained that performs even worse than the no-induced-wake (NI) case. These observations justify the introduction of a finite window of influence and highlight Nf as a key discretization parameter governing the balance between numerical efficiency and model fidelity.

Finally, reducing the number of wake elements (M) leads to a moderate decrease in both computation time and solution accuracy, indicating that relatively coarse discretizations can still yield meaningful results. However, for small M, oscillations appear in the time-resolved profile of the induced velocity, as illustrated by Fig. 12. This behaviour arises from the dependence of the induced velocity on the wing position: when the wing passes directly over a wake element, the induced velocity reaches a peak and subsequently drops to a minimum halfway to the next element. Consequently, the integration error in Eq. (58) is position dependent and sensitive to the choice of collocation grid in the time-continuous OCP (Eq. 59). A potential remedy would be to implement a continuously moving window of influence that tracks the wing position, rather than the discrete interval-to-interval update scheme used here. While this would increase the computational complexity of the induced velocity evaluation, it could provide consistent integration accuracy, especially for small values of M. Such an extension is left for future work.

Figure 12 also shows the induced velocity from the analytic vortex-loop solution evaluated at the optimal solution for M=24. The induced velocity computed using the hybrid wake representation (comprising a single layer of vortex loops followed by dipole elements) shows good agreement with the one obtained from the full vortex-loop formulation, thereby justifying the use of dipoles for far-convected wake elements in this case. For applications involving larger convection distances, as are likely to occur for the case of single-kite AWE systems, the accuracy of the hybrid approximation is expected to improve further.

Based on the sensitivity analysis above, a new parameterization, denoted as “A”, is selected by choosing for each discretization parameter the lowest value that still yields a relative error E<5 %. This configuration represents a Pareto-efficient trade-off between computational cost and model fidelity among the tested cases. At point A, it also holds that E<5 %, while the average computation time per iteration is now only a factor of 3 more expensive than the NI case, which comes with a value of E=145 %. In conclusion, when very high accuracy is not required – such as during design exploration or when other modelling errors are of comparable magnitude – there exist parameterizations that provide approximate solutions of the PDE OCP from Eq. (38) with only a moderate increase in computation time compared to the NI case.

7 Conclusion and outlook

In this study, we introduced a novel continuous-time wake model for simulation and optimal control of crosswind kite systems. The new model is based on a hybrid combination of infinitesimal vortex-loop and dipole elements shed by the kites. Compared to existing vortex-based approaches, the model is capable of capturing the inherently unsteady and non-axisymmetric nature of how crosswind kite systems operate. Validation with the higher-fidelity free-vortex code DUST shows good agreement between the two simulations. One remaining point of mismatch is the wake convection velocity. In this study, three different heuristics for selecting the convection velocity were compared, and the best candidate was selected. However, this candidate overestimates the convection velocity, resulting in a remaining 5 % overestimation of the aerodynamic forces produced in the validation simulations. The model is also able to effectively capture the induced velocity field around the wing trajectory flown.

As a second contribution, we proposed a formulation that allows one to efficiently incorporate the new wake model into periodic optimal control problems. The formulation exploits the periodicity of the wake, and its efficacy particularly hinges on the introduction of a moving window of influence that only considers the part of the wake within a certain region around the flying wings' trajectory. Using an accurate reference parameterization of the wake model, the original (without wake) OCP cost is increased with a factor of 16. However, if we tolerate a loss of accuracy of 5 % compared to this accurate reference solution with a wake, we can achieve a modest slowdown of a factor of 3 compared to the original problem without a wake (which deviates from the reference solution with a wake with 145 %).

Apart from improving the model validity, future work should focus on improving the window of influence used in the OCP formulation. Ideally, this window would move continuously along with the wing and not just update as the wing passes from one interval to the next. Such an improvement would eliminate oscillations in the time-resolved induced velocity profile and result in consistent integration accuracy for the induced velocity expression.

In this work, we applied the new model to a dual-kite system and optimized its flight trajectory, consisting of one single loop, for maximum pulling force. Future work could focus on expanding to the following applications. First, we could extend the current example to a multi-loop scenario, where the wings fly multiple (possibly differing) loops within one period. While the wings cannot escape their own wake in the current one-loop example, in this new scenario, the wings would be able to adapt their trajectory during the subsequent loops to avoid the wake from the previous ones, thereby boosting performance. Second, future research could investigate the application to the single-wing airborne wind energy systems currently pursued by the AWE industry. While the flight trajectories of these systems are characterized by longer time periods as considered in the example of this paper, therefore necessitating a larger number of discrete wake elements, the wake model could still remain numerically tractable. Because of the long time period and long convection distance, it is likely that the initial vortex-loop part of the hybrid wake can be discarded in favour of the cheaper vortex dipole model, with less wake duplicates needed. This application would then enable one to compute wake-sensitive flight trajectories and provide an important stepping stone to realistically assess the achievable power density of these systems.

Appendix A: Induced velocity expression of a vortex-loop element with finite width

Consider a vortex-loop element as visualized in Fig. 2, characterized by the state y:=(qv,Γ,en,ec) and with a finite height π4b and width Δs. The velocity induced by this element at a position q is given by applying the Biot–Savart law to all four finite vortex filaments of the vortex loop

(A1) u vl ( q , y , Δ s ) := i = 1 4 u f , i ,

with

(A2)uf,1:=uf,bs(q,p1,eb,πb4,Γ)(A3)uf,2:=uf,bs(q,p2,ec,Δs,Γ)(A4)uf,3:=uf,bs(q,p3,-eb,πb4,Γ)(A5)uf,4:=uf,bs(q,p4,-ec,Δs,Γ),

where eb:=en×ec and where the four corners (anticlockwise) are

(A6)p1=qv-Δs2ec-πb8eb,(A7)p2=qv-Δs2ec+πb8eb,(A8)p3=qv+Δs2ec+πb8eb,(A9)p4=qv+Δs2ec-πb8eb,

and with the Biot–Savart evaluation function

(A10) u f , bs ( q , p , e , , Γ ) := - Γ 4 π r 1 × e 2 r 1 × e e r 1 r 1 - e r 2 r 2 ,

where r1:=q-p and r2:=r1-e, with being the vortex filament length and e its unit direction vector. The linearization duvldΔs used in Eq. (23) is finally obtained through algorithmic differentiation using CasADi.

Code availability

The code used to formulate and solve the optimal control problems is available as part of the AWEbox toolbox at https://doi.org/10.5281/zenodo.20208710 (De Schutter et al.2026). The toolchain that generates DUST input files from AWEbox results (including those obtained in this paper) is available under the name AWEWA at https://doi.org/10.5281/zenodo.20238024 (Mühleck and De Schutter2026). DUST is open source and available online at https://www.dust.polimi.it/ (last access: 25 November 2025).

Author contributions

Methodology, JDS, AM, RL, MD; formal analysis, JDS, AM; project administration, JDS, MD; resources, MD; supervision, JDS, MD; writing – original draft, JDS; writing – review and editing, AM, RL, MD; funding acquisition, JDS, MD.

Competing interests

The contact author has declared that none of the authors has any competing interests.

Disclaimer

Publisher's note: Copernicus Publications remains neutral with regard to jurisdictional claims made in the text, published maps, institutional affiliations, or any other geographical representation in this paper. The authors bear the ultimate responsibility for providing appropriate place names. Views expressed in the text are those of the authors and do not necessarily reflect the views of the publisher.

Acknowledgements

The authors would like to thank Gianni Cassoni and the DUST developers for their support in setting up the DUST simulations. The authors used ChatGPT to improve the flow and writing quality of the scientific text in some places. The authors reviewed and edited the content as needed and take full responsibility for the content of the publication.

Financial support

This research was supported by DFG via the project 525018088 (MAWERO).

This open-access publication was funded by the University of Freiburg.

Review statement

This paper was edited by Roland Schmehl and reviewed by two anonymous referees.

References

Akberali, A., Kheiri, M., and Bourgault, F.: Generalized aerodynamic models for crosswind kite power systems, J. Wind Eng. Ind. Aerod., 215, https://doi.org/10.1016/j.jweia.2021.104664, 2021. a

Andersson, J. A. E., Gillis, J., Horn, G., Rawlings, J. B., and Diehl, M.: CasADi – A software framework for nonlinear optimization and optimal control, Mathematical Programming Computation, 11, 1–36, https://doi.org/10.1007/s12532-018-0139-4, 2019. a

Branlard, E.: Wind Turbine Aerodynamics and Vorticity-Based Methods, Springer-Cham, https://doi.org/10.1007/978-3-319-55164-7, 2017. a

Crismer, J.-B., Haas, T., Duponcheel, M., and Winckelmans, G.: Large eddy simulation of airborne wind energy systems flying in turbulent wind using model predictive control, Wind Energ. Sci. Discuss. [preprint], https://doi.org/10.5194/wes-2025-288, in review, 2026. a

De Lellis, M., Reginatto, R., Saraiva, R., and Trofino, A.: The Betz limit applied to Airborne Wind Energy, Renewable Energy, 127, 32–40, https://doi.org/10.1016/j.renene.2018.04.034, 2018. a

De Schutter, J.: Periodic optimal control methods for nonlinear energy conversion systems, Ph.D. thesis, University of Freiburg, https://doi.org/10.6094/UNIFR/248910, 2024. a

De Schutter, J., Leuthold, R., and Diehl, M.: Optimal Control of a Rigid-Wing Rotary Kite System for Airborne Wind Energy, in: Proceedings of the European Control Conference (ECC), https://doi.org/10.23919/ECC.2018.8550383, 2018. a

De Schutter, J., Harzer, J., and Diehl, M.: Vertical Airborne Wind Energy Farms with High Power Density per Ground Area based on Multi-Aircraft Systems, Eur. J. Control, 74, 100867, https://doi.org/10.1016/j.ejcon.2023.100867, 2023a. a, b

De Schutter, J., Leuthold, R., Bronnenmeyer, T., Malz, E., Gros, S., and Diehl, M.: AWEbox: An Optimal Control Framework for Single- and Multi-Aircraft Airborne Wind Energy Systems, Energies, 16, 1900, https://doi.org/10.3390/en16041900, 2023b. a, b, c, d, e

De Schutter, J., Leuthold, R., and Bronnenmeyer, T.: Code release for “Optimal Control of Crosswind Kite Systems with an Engineering Wake Model based on Vortex Loops and Dipoles” (Wind Energy Science, 2026) (v1.0.0-wes-2026), Zenodo [code], https://doi.org/10.5281/zenodo.20208710, 2026. a

Fagiano, L., Quack, M., Bauer, F., Carnel, L., and Oland, E.: Autonomous Airborne Wind Energy Systems: Accomplishments and Challenges, Annual Review of Control, Robotics, and Autonomous Systems, 5, 603–631, https://doi.org/10.1146/annurev-control-042820-124658, 2022. a

Fritz, F.: Airborne Wind Energy, chap. Application of an Automated Kite System for Ship Propulsion and Power Generation, 391–411, Springer-Verlag Berlin Heidelberg, https://doi.org/10.1007/978-3-642-39965-7_20, 2013. a

Gaunaa, M., Forsting, A. M., and Trevisi, F.: An engineering model for the induction of crosswind kite power systems, J. Phys. Conf. Ser., 1618, 032010, https://doi.org/10.1088/1742-6596/1618/3/032010, 2020. a, b, c, d

Gros, S. and Diehl, M.: Modeling of Airborne Wind Energy Systems in Natural Coordinates, in: Airborne Wind Energy, Springer-Verlag Berlin Heidelberg, https://doi.org/10.1007/978-3-642-39965-7_10, 2013. a, b

Gros, S. and Zanon, M.: Numerical Optimal Control with Periodicity Constraints in the Presence of Invariants, IEEE T. Automat. Contr., 63, 2818–2832, https://doi.org/10.1109/TAC.2017.2772039, 2018. a

Gros, S., Zanon, M., and Diehl, M.: A Relaxation Strategy for the Optimization of Airborne Wind Energy Systems, in: Proceedings of the European Control Conference (ECC), 1011–1016, https://doi.org/10.23919/ECC.2013.6669670, 2013. a

Haas, T., De Schutter, J., Diehl, M., and Meyers, J.: Wake characteristics of pumping mode airborne wind energy systems, J. Phys. Conf. Ser., 1256, 012016, https://doi.org/10.1088/1742-6596/1256/1/012016, 2019. a

Haas, T., De Schutter, J., Diehl, M., and Meyers, J.: Large-eddy simulation of airborne wind energy farms, Wind Energ. Sci., 7, 1093–1135, https://doi.org/10.5194/wes-7-1093-2022, 2022. a

Hart, C.: Kites: a Historical Survey, Paul P. Appel Publisher, 1982. a

Heydarnia, O., Wauters, J., Lefebvre, T., and Crevecoeur, G.: Optimal Path Planning of Airborne Wind Energy Systems with a Flexible Tether, Journal of Guidance, Control and Dynamics, 48, 1–8, https://doi.org/10.2514/1.G008967, 2025. a

Horn, G., Gros, S., and Diehl, M.: Numerical Trajectory Optimization for Airborne Wind Energy Systems Described by High Fidelity Aircraft Models, in: Airborne Wind Energy, Springer-Verlag Berlin Heidelberg, https://doi.org/10.1007/978-3-642-39965-7_11, 2013. a

HSL: A collection of Fortran codes for large scale scientific computation, http://www.hsl.rl.ac.uk (last access: 25 November 2025), 2011. a

Joshi, R., Schmehl, R., and Kruijff, M.: Power curve modelling and scaling of fixed-wing ground-generation airborne wind energy systems, Wind Energ. Sci., 9, 2195–2215, https://doi.org/10.5194/wes-9-2195-2024, 2024. a

Kaufman-Martin, S., Naclerio, N., May, P., and Luzzatto-Fegiz, P.: An entrainment-based model for annular wakes, with applications to airborne wind energy, Wind Energy, 25, 419–431, https://doi.org/10.1002/we.2679, 2022. a

Kheiri, M., Nasrabad, V. S., and Bourgault, F.: A new perspective on the aerodynamic performance and power limit of crosswind kite systems, J. Wind Eng. Ind. Aerod., 190, 190–199, https://doi.org/10.1016/j.jweia.2019.04.010, 2019. a, b

Kokkedee, J.: Wind farm wake flow recovery with the use of kites, Master's thesis, Delft University of Technology, 2022. a

Kruijff, M. and Ruiterkamp, R.: A roadmap towards airborne wind energy in the utility sector, in: Airborne Wind Energy: Advances in Technology Development and Research, Springer, Singapore, https://doi.org/10.1007/978-981-10-1947-0_26, 2018. a

Leuthold, R., Gros, S., and Diehl, M.: Induction in Optimal Control of Multiple-Kite Airborne Wind Energy Systems, in: Proceedings of 20th IFAC World Congress, Toulouse, France, https://doi.org/10.1016/j.ifacol.2017.08.026, 2017. a

Leuthold, R., De Schutter, J., Malz, E. C., Licitra, G., Gros, S., and Diehl, M.: Operational Regions of a Multi-Kite AWE System, in: European Control Conference (ECC), https://doi.org/10.23919/ECC.2018.8550199, 2018. a

Leuthold, R., De Schutter, J., Crawford, C., Gros, S., and Diehl, M.: Rigid-Wake Lifting-Line Vortex Modeling in a Single-Kite AWE Optimal Control Problem, in: Book of Abstracts of the Airborne Wind Energy Conference 2024, edited by: Sánchez-Arriaga, G., Thoms, S., and Schmehl, R., Delft University of Technology, https://doi.org/10.4233/uuid:85fd0eb1-83ec-4e34-9ac8-be6b32082a52, 2024. a

Loyd, M.: Crosswind Kite Power, J. Energ., 4, 106–111, https://doi.org/10.2514/3.48021, 1980. a

Malz, E., Verendel, V., and Gros, S.: Computing the Power Profiles for an Airborne Wind Energy System based on Large-Scale Wind Data, Renewable Energy, https://doi.org/10.1016/j.renene.2020.06.056, 2020. a

Malz, E. C., Koenemann, J., Sieberling, S., and Gros, S.: A Reference Model for Airborne Wind Energy Systems for Optimization and Control, Renewable Energy, 140, 1004–1011, https://doi.org/10.1016/j.renene.2019.03.111, 2019. a

Manwell, J. F., McGowan, J. G., and Rogers, A. L.: Wind Energy Explained: Theory, Design and Application, Second Edition, John Wiley & Sons, Ltd, Chichester, UK, https://doi.org/10.1002/9781119994367, 2009. a

Mühleck, A. and De Schutter, J.: Toni2412/AWEWA: Code release for Section 4 “Optimal Control of Crosswind Kite Systems with an Engineering Wake Model based on Vortex Loops and Dipoles” (Wind Energy Science, 2026) (v1.0.0), Zenodo [code], https://doi.org/10.5281/zenodo.20238024, 2026. a

Noga, R., Paulig, X., Schmidt, L., Karg, B., Quack, M., and Soliman, M.: Optimization of 3-D flight trajectory of variable trim kites for airborne wind energy production, Industrial Abstract accepted to the Europan Control Conference (ECC) 2024, arXiv, https://doi.org/10.48550/arXiv.2403.00382, 2024. a

Ploumakis, E. and Bierbooms, W.: Enhanced Kinetic Energy Entrainment in Wind Farm Wakes: Large Eddy Simulation Study of a Wind Turbine Array with Kites, 165–185, Springer Singapore, Singapore, ISBN 978-981-10-1947-0, https://doi.org/10.1007/978-981-10-1947-0_8, 2018. a

Pynaert, N., Haas, T., Wauters, J., Crevecoeur, G., and Degroote, J.: Aero-servo simulations of an airborne wind energy system using geometry-resolved computational fluid dynamics, Wind Energ. Sci., 10, 2663–2684, https://doi.org/10.5194/wes-10-2663-2025, 2025. a

Trevisi, F., Castro-Fernández, I., Pasquinelli, G., Riboldi, C. E. D., and Croce, A.: Flight trajectory optimization of Fly-Gen airborne wind energy systems through a harmonic balance method, Wind Energ. Sci., 7, 2039–2058, https://doi.org/10.5194/wes-7-2039-2022, 2022.  a

Trevisi, F., Riboldi, C. E. D., and Croce, A.: Vortex model of the aerodynamic wake of airborne wind energy systems, Wind Energ. Sci., 8, 999–1016, https://doi.org/10.5194/wes-8-999-2023, 2023. a, b, c, d

Tugnoli, D., Montagnani, D., Syal, M., Droandi, G., and Zanotti, A.: Mid-fidelity approach to aerodynamic simulations of unconventional VTOL aircraft configurations, Aerosp. Sci. Technol., 115, 106804, https://doi.org/10.1016/j.ast.2021.106804, 2021. a

Van Niekerk, T.: Enhancing Wind Farm Wake Recovery Through Kite-Induced Vertical Entrainment, Master's thesis, Delft University of Technology, 2025. a

Vermillion, C., Cobb, M., Fagiano, L., Leuthold, R., Diehl, M., Smith, R. S., Wood, T. A., Rapp, S., Schmehl, R., Olinger, D., and Demetriou, M.: Electricity in the air: Insights from two decades of advanced control research and experimental flight testing of airborne wind energy systems, Annu. Rev. Control, 52, 330–357, https://doi.org/10.1016/j.arcontrol.2021.03.002, 2021. a

Wächter, A. and Biegler, L. T.: On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming, Math. Program., 106, 25–57, https://doi.org/10.1007/s10107-004-0559-y, 2006. a

Zanon, M., Gros, S., Andersson, J., and Diehl, M.: Airborne Wind Energy Based on Dual Airfoils, IEEE T. Contr. Syst. T., 21, 1215–1222, https://doi.org/10.1109/TCST.2013.2257781, 2013. a, b, c

Zanon, M., Gros, S., Meyers, J., and Diehl, M.: Airborne Wind Energy: Airfoil-Airmass Interaction, in: Proceedings of the IFAC World Congress, 5814–5819, https://doi.org/10.3182/20140824-6-ZA-1003.00258, 2014. a, b

Download
Short summary
The performance of high-performance crosswind kite systems is strongly affected by the complex wake structures they generate. We develop an unsteady, vortex-based wake model that can be efficiently integrated into optimal control frameworks for flight trajectory optimization. The model is shown to provide good agreement with higher-fidelity simulations while incurring only moderate additional computational cost, enabling more reliable performance prediction.
Share
Altmetrics
Final-revised paper
Preprint