PolarCorrection

class sharpy.generators.polaraeroforces.PolarCorrection[source]

This generator corrects the aerodynamic forces from UVLM based on the airfoil polars provided by the user in the aero.h5 file. Polars are entered for each airfoil, in a table comprising AoA (rad), CL, CD, CM.

This generator_id = 'PolarCorrection' and can be used in the coupled solvers through the correct_forces_method setting as:

These are the steps needed to correct the forces:

  1. The force coming from UVLM is divided into induced drag (parallel to the incoming flow velocity) and lift

(the remaining force).

If cd_from_cl == 'on'.
  1. The viscous drag and pitching moment are found at the computed lift coefficient. Then forces and moments are updated

Else, the angle of attack is computed:

  1. The angle of attack is computed based on that lift force and the angle of zero lift computed from the airfoil polar and assuming the potential flow lift curve slope of \(2 \pi\)

  1. The drag force is computed based on the angle of attack and the polars provided by the user

  2. If correct_lift == 'on', the lift coefficient is also corrected with the polar data. Else, only the UVLM results are used.

The pitching moment is added in a similar manner as the viscous drag. However, if moment_from_polar == 'on' and correct_lift == 'on', the total moment (the one used for the FSI) is computed just from polar data, overriding any moment computed in SHARPy. That is, the moment will include the polar pitching moment, and moments due to lift and drag computed from the polar data.

This generator takes in the following settings.

Name

Type

Description

Default

correct_lift

bool

Correct lift according to the polars

False

cd_from_cl

bool

Interpolate the C_D for the given C_L, as opposed to getting the C_D from the section AoA.

False

moment_from_polar

bool

If correct_lift is selected, it will compute the pitching moment simply from polar derived data, i.e. the polars Cm and the momentsarising from the lift and drag (derived from the polar) contribution. Else, it will add the polar Cm to the moment already computed by SHARPy.

False

generate(**params)[source]
Keyword Arguments
Returns

New corrected structural forces

Return type

np.array