Function description correct forces
-"""Force correction utilities"""
+"""
+Force correction utilities
+
+The aerodynamic forces can be corrected with these functions.
+The correction is done once they are projected on the structural beam.
+
+Args:
+ data (``sharpy.PreSharpy``): SHARPy data
+ aero_kstep (``sharpy.utils.datastructures.AeroTimeStepInfo``): Current aerodynamic substep
+ structural_kstep (``sharpy.utils.datastructures.StructTimeStepInfo``): Current structural substep
+ struct_forces (np.array): Array with the aerodynamic forces mapped on the structure in the B frame of reference
+
+Returns:
+ new_struct_forces (np.array): Array with the corrected forces
+"""
import numpy as np
import sharpy.aero.utils.airfoilpolars as ap
@@ -66,6 +80,14 @@ def efficiency(data, aero_kstep, structural_kstep, struct_forces):
@gen_dict_force_corrections
def polars(data, aero_kstep, structural_kstep, struct_forces):
+ r"""
+ This function corrects the aerodynamic forces from UVLM based on the airfoil polars provided by the user in the aero.h5 file
+
+ These are the steps needed to correct the forces:
+ - The force coming from UVLM is divided into induced drag (parallel to the incoming flow velocity) and lift (the remaining force).
+ - The angle of attack is computed based on that lift force and the angle of zero lift computed form the airfoil polar and assuming a slope of :math::`2 \pi`
+ - The dreag force is computed based on the angle of attack and the polars provided by the user
+ """
aerogrid = data.aero
beam = data.beam
