aerosandbox.library.aerodynamics.unsteady
#
Module Contents#
Functions#
|
Calculates reduced time from time in seconds and velocity history in m/s. |
|
A commonly used approximation to Wagner's function |
|
A commonly used approximation to Kussner's function (Sears and Sparks 1941) |
|
Computes the evolution of the lift coefficient in Wagner's problem which can be interpreted as follows |
|
Computes the evolution of the lift coefficient of a flat plate entering a |
|
Calculates the lift (as a function of reduced time) caused by an arbitrary transverse gust profile |
|
Calculates the duhamel superposition integral of Wagner's problem. |
|
This function calculate the lift coefficient due to the added mass of a flat plate |
|
This function calculates the lift as a function of time of a flat plate pitching |
|
A canonical example gust. |
|
A canonical gust of used by the FAA to show 'compliance with the |
|
A pitch maneuver resembling a guassian curve |
|
A pitch maneuver resembling a linear ramp |
Attributes#
- aerosandbox.library.aerodynamics.unsteady.calculate_reduced_time(time, velocity, chord)[source]#
Calculates reduced time from time in seconds and velocity history in m/s. For constant velocity it reduces to s = 2*U*t/c The reduced time is the number of semichords travelled by the airfoil/aircaft i.e. 2 / chord * integral from t0 to t of velocity dt
- Parameters:
time (float,np.ndarray) – Time in seconds
velocity (float,np.ndarray) – Either a constant velocity or array of velocities at corresponding reduced times
chord (float) – The chord of the airfoil
- Returns:
The reduced time as an ndarray or float similar to the input. The first element is 0.
- Return type:
Union[float, aerosandbox.numpy.ndarray]
- aerosandbox.library.aerodynamics.unsteady.wagners_function(reduced_time)[source]#
A commonly used approximation to Wagner’s function (Jones, R.T. The Unsteady Lift of a Finite Wing; Technical Report NACA TN-682; NACA: Washington, DC, USA, 1939)
- Parameters:
reduced_time (float,np.ndarray) – Equal to the number of semichords travelled. See function calculate_reduced_time
- aerosandbox.library.aerodynamics.unsteady.kussners_function(reduced_time)[source]#
A commonly used approximation to Kussner’s function (Sears and Sparks 1941)
- Parameters:
reduced_time (float,np.ndarray) – This is equal to the number of semichords travelled. See function calculate_reduced_time
- aerosandbox.library.aerodynamics.unsteady.indicial_pitch_response(reduced_time, angle_of_attack)[source]#
Computes the evolution of the lift coefficient in Wagner’s problem which can be interpreted as follows 1) An impulsively started flat plate at constant angle of attack 2) An impuslive change in the angle of attack of a flat plate at constant velocity
The model predicts infinite added mass at the first instant due to the infinite acceleration The delta function term (and therefore added mass) has been ommited in this case. Reduced_time = 0 corresponds to the instance the airfoil pitches/accelerates
Args: reduced_time (float,np.ndarray) : Reduced time, equal to the number of semichords travelled. See function reduced_time angle_of_attack (float) : The angle of attack, in degrees
- Parameters:
reduced_time (Union[float, aerosandbox.numpy.ndarray]) –
angle_of_attack (float) –
- aerosandbox.library.aerodynamics.unsteady.indicial_gust_response(reduced_time, gust_velocity, plate_velocity, angle_of_attack=0, chord=1)[source]#
Computes the evolution of the lift coefficient of a flat plate entering a an infinitely long, sharp step gust (Heaveside function) at a constant angle of attack. Reduced_time = 0 corresponds to the instance the gust is entered
(Leishman, Principles of Helicopter Aerodynamics, S8.10,S8.11)
- Parameters:
reduced_time (float,np.ndarray) – Reduced time, equal to the number of semichords travelled. See function reduced_time
gust_velocity (float) – velocity in m/s of the top hat gust
velocity (float) – velocity of the thin airfoil entering the gust
angle_of_attack (float) – The angle of attack, in degrees
chord (float) – The chord of the plate in meters
plate_velocity (float) –
- aerosandbox.library.aerodynamics.unsteady.calculate_lift_due_to_transverse_gust(reduced_time, gust_velocity_profile, plate_velocity, angle_of_attack=0, chord=1)[source]#
Calculates the lift (as a function of reduced time) caused by an arbitrary transverse gust profile by computing duhamel superposition integral of Kussner’s problem at a constant angle of attack
- Parameters:
reduced_time (float,np.ndarray) – Reduced time, equal to the number of semichords travelled. See function reduced_time
gust_velocity_profile (Callable[[float],float]) – The transverse velocity profile that the flate plate experiences. Must be a function that takes reduced time and returns a velocity
plate_velocity (float) – The velocity by which the flat plate enters the gust
angle_of_attack (Union[float,Callable[[float],float]]) – The angle of attack, in degrees. Can either be a float for constant angle of attack or a Callable that takes reduced time and returns angle of attack
chord (float) – The chord of the plate in meters
- Returns:
The lift coefficient history of the flat plate
- Return type:
lift_coefficient (np.ndarray)
- aerosandbox.library.aerodynamics.unsteady.calculate_lift_due_to_pitching_profile(reduced_time, angle_of_attack)[source]#
Calculates the duhamel superposition integral of Wagner’s problem. Given some arbitrary pitching profile. The lift coefficient as a function of reduced time of a flat plate can be computed using this function
- Parameters:
reduced_time (float,np.ndarray) – Reduced time, equal to the number of semichords travelled. See function reduced_time
angle_of_attack (Callable[[float],float]) – The angle of attack as a function of reduced time of the flat plate. Must be a Callable that takes reduced time and returns angle of attack
- Returns:
The lift coefficient history of the flat plate
- Return type:
lift_coefficient (np.ndarray)
- aerosandbox.library.aerodynamics.unsteady.added_mass_due_to_pitching(reduced_time, angle_of_attack)[source]#
This function calculate the lift coefficient due to the added mass of a flat plate pitching about its midchord while moving at constant velocity.
- Parameters:
reduced_time (np.ndarray) – Reduced time, equal to the number of semichords travelled. See function reduced_time
angle_of_attack (Callable[[float],float]) – The angle of attack as a function of reduced time of the flat plate
- Returns:
The lift coefficient history of the flat plate
- Return type:
lift_coefficient (np.ndarray)
- aerosandbox.library.aerodynamics.unsteady.pitching_through_transverse_gust(reduced_time, gust_velocity_profile, plate_velocity, angle_of_attack, chord=1)[source]#
This function calculates the lift as a function of time of a flat plate pitching about its midchord through an arbitrary transverse gust. It combines Kussner’s gust response with wagners pitch response as well as added mass.
The following physics are accounted for 1) Vorticity shed from the trailing edge due to gust profile 2) Vorticity shed from the trailing edge due to pitching profile 3) Added mass (non-circulatory force) due to pitching about midchord
The following physics are NOT taken accounted for 1) Any type of flow separation 2) Leading edge vorticity shedding 3) Deflected wake due to gust (flat wake assumption)
- Parameters:
reduced_time (float,np.ndarray) – Reduced time, equal to the number of semichords travelled. See function reduced_time
gust_velocity_profile (Callable[[float],float]) – The transverse velocity profile that the flate plate experiences. Must be a function that takes reduced time and returns a velocity
plate_velocity (float) – The velocity by which the flat plate enters the gust
angle_of_attack (Union[float,Callable[[float],float]]) – The angle of attack, in degrees. Can either be a float for constant angle of attack or a Callable that takes reduced time and returns angle of attack
chord (float) – The chord of the plate in meters
- Returns:
The lift coefficient history of the flat plate
- Return type:
lift_coefficient (np.ndarray)
- aerosandbox.library.aerodynamics.unsteady.top_hat_gust(reduced_time)[source]#
A canonical example gust. :param reduced_time: :type reduced_time: float
- Returns:
gust_velocity (float)
- Parameters:
reduced_time (float) –
- Return type:
float
- aerosandbox.library.aerodynamics.unsteady.sine_squared_gust(reduced_time)[source]#
A canonical gust of used by the FAA to show ‘compliance with the requirements of Title 14, Code of Federal Regulations (14 CFR) 25.341, Gust and turbulence loads. Section 25.341 specifies the discrete gust and continuous turbulence dynamic load conditions that apply to the airplane and engines.’ :param reduced_time: :type reduced_time: float
- Returns:
gust_velocity (float)
- Parameters:
reduced_time (float) –
- Return type:
float
- aerosandbox.library.aerodynamics.unsteady.gaussian_pitch(reduced_time)[source]#
A pitch maneuver resembling a guassian curve :param reduced_time: :type reduced_time: float
- Returns:
in degrees
- Return type:
angle_of_attack (float)
- Parameters:
reduced_time (float) –