core_aerodynamics module¶
SSBJ Aerodynamics computation¶
Classes:
|
Class defining aerodynamical analysis for Sobieski problem and related method to the aerodynamical problem such as disciplines computation, constraints, reference optimum. |
- class gemseo.problems.sobieski.core_aerodynamics.SobieskiAerodynamics(sobieski_base)[source]¶
Bases:
object
Class defining aerodynamical analysis for Sobieski problem and related method to the aerodynamical problem such as disciplines computation, constraints, reference optimum.
Constructor.
Attributes:
Methods:
blackbox_aerodynamics
(x_shared, y_12, y_32, x_2)This function calculates drag and lift to drag ratio of A/C.
compute_adim_coeff
(force, sref, mach, altitude)Compute adim.
compute_cd
(x_shared, lift_coeff, fo1, fo2)Computation of total drag coefficient.
compute_cd_min
(x_shared, fo1)Computation of a 2D minimum drag coefficient.
compute_cl
(x_shared, y_12)Computation of lift coefficient.
compute_dadimcf_dcf
(x_2)Computation of a derivative of adim friction coeff of polynomial wrt friction coeff.
compute_dadimesf_desf
(y_32)Computation of a derivative of adim ESF of polynomial wrt ESF.
compute_dadimtaper_dtaper
(x_shared)Computation of a derivative of adim taper-ratio of polynomial wrt taper- ratio.
Computation of a derivative of adim twist of polynomial wrt twist.
compute_dcd_dmach
(x_shared, y_12, fo2)Computation of derivative of drag coefficient wrt Mach.
compute_dcd_dsref
(x_shared, y_12, fo2)Computation of derivative of drag coefficient wrt sweep.
compute_dcd_dsweep
(x_shared, lift_coeff, fo2)Computation of derivative of drag coefficient wrt sweep.
compute_dcdmin_dsweep
(x_shared)Computation of derivative of 2D minimum drag coefficient wrt sweep.
compute_dcl_dh
(x_shared, y_12)Computation of derivative of lift coefficient wrt altitude.
compute_dcl_dmach
(x_shared, y_12)Computation of derivative of lift coefficient wrt reference surface.
compute_dcl_dsref
(x_shared, y_12)Computation of derivative of lift coefficient wrt Mach number.
compute_dk_aero_dmach
(x_shared)Computation of a derivative of k_aero wrt Mach.
compute_dk_aero_dsweep
(x_shared)Computation of a derivative of k_aero wrt sweep.
compute_drag
(drag_coeff, x_shared)Computation of drag from drag coefficient.
compute_drho_dh_dv_dh
(mach, altitude)Compute derivative of velocity and density wrt altitude.
compute_drhov2_dh
(x_shared)Computation of derivative of rhoV**2 wrt altitude.
compute_drhov2_dmach
(x_shared)Computation of derivative of rhoV**2 wrt Mach.
compute_dv_dmach
(altitude)Computation of derivative of velocity wrt Mach.
compute_force
(adim_coeff, sref, mach, altitude)Compute force (lift or drag) from adim coeff.
compute_k_aero
(x_shared)Computation of a induced drag coefficient (related to lift)
compute_rho_v
(mach, altitude)From given Mach number and altitude, compute velocity and density.
compute_rhov2
(x_shared)Computation of rho * velocity * velocity (2*dynamic pressure)
derive_blackbox_aerodynamics
(x_shared, y_12, ...)This function calculates drag and lift to drag ratio of A/C.
- DTYPE_COMPLEX = 'complex128'¶
- DTYPE_DOUBLE = 'float64'¶
- PRESSURE_GRADIENT_LIMIT = 1.04¶
- blackbox_aerodynamics(x_shared, y_12, y_32, x_2, true_cstr=False)[source]¶
This function calculates drag and lift to drag ratio of A/C.
- Parameters
x_shared (numpy array) –
shared design variable vector:
x_shared[0]: thickness/chord ratio
x_shared[1]: altitude
x_shared[2]: Mach
x_shared[3]: aspect ratio
x_shared[4]: wing sweep
x_shared[5]: wing surface area
y_12 (numpy array) –
shared variables coming from blackbox_structure:
y_12[0]: total aircraft weight
y_12[1]: wing twist
y_32 (numpy array) –
shared variables coming from blackbox_propulsion:
y_32[0]: engine scale factor
x_2 (numpy array) –
aero. design variable:
x_2[0]: friction coeff
true_cstr –
Default value = False)
By default it is set to False.
- Returns
y_2, y_21, y_23, y_24, g_2
y_2: aero. analysis outputs
y_2[0]: lift
y_2[1]: drag
y_2[2]: lift/drag ratio
y_21: shared variable for blackbox_structure (lift)
y_23: shared variable for blackbox_propulsion (drag)
y_24: shared variable for BlackBoxMission (lift/drag ratio)
g_2: aero constraint (pressure gradient)
- Return type
numpy array, numpy array, numpy array, numpy array, numpy array
- compute_adim_coeff(force, sref, mach, altitude)[source]¶
Compute adim. force coeff from force (lift or drag)
- Parameters
force (float) – Force
sref (float) – reference surface
mach (float) – Mach number
altitude (float) – altitude
- Returns
force coefficient: Cl or Cd according to input force
- Return type
float
- compute_cd(x_shared, lift_coeff, fo1, fo2)[source]¶
Computation of total drag coefficient.
- Parameters
x_shared (numpy array) – global design variables
lift_coeff (numpy array) – lift coefficient
fo1 (numpy array) – coefficient for engine size
fo2 (numpy array) – coefficient for twist influence on drag
- Returns
drag_coefficient : drag coefficient
- Return type
numpy array
- compute_cd_min(x_shared, fo1)[source]¶
Computation of a 2D minimum drag coefficient.
- Parameters
x_shared (numpy array) – global design variables
fo1 (numpy array) – coefficient for engine size
- Returns
CDmin : drag coefficient
- Return type
numpy array
- compute_cl(x_shared, y_12)[source]¶
Computation of lift coefficient.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – coupling variable from weight analysis
- Returns
lift coefficient Cl
- Return type
numpy array
- compute_dadimcf_dcf(x_2)[source]¶
Computation of a derivative of adim friction coeff of polynomial wrt friction coeff.
- Parameters
x_2 (numpy array) – local design variables
- Returns
derivative of adim friction coeff of polynomial wrt friction coeff
- Return type
numpy array
- compute_dadimesf_desf(y_32)[source]¶
Computation of a derivative of adim ESF of polynomial wrt ESF.
- Parameters
y_32 (numpy array) – coupling variable from propulsion analysis
- Returns
derivative of adim ESF of polynomial wrt ESF
- Return type
numpy array
- compute_dadimtaper_dtaper(x_shared)[source]¶
Computation of a derivative of adim taper-ratio of polynomial wrt taper- ratio.
- Parameters
x_shared (numpy array) – global design variables
- Returns
derivative of adim taper-ratio of polynomial wrt taper-ratio
- Return type
numpy array
- compute_dadimtwist_dtwist(y_12)[source]¶
Computation of a derivative of adim twist of polynomial wrt twist.
- Parameters
y_12 (numpy array) – coupling variable from weight analysis
- Returns
derivative of adim twist of polynomial wrt twist
- Return type
numpy array
- compute_dcd_dmach(x_shared, y_12, fo2)[source]¶
Computation of derivative of drag coefficient wrt Mach.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – coupling variable from weight analysis
fo2 (numpy array) – coefficient for twist influence on drag
- Returns
dcd_dmach
- Return type
numpy array
- compute_dcd_dsref(x_shared, y_12, fo2)[source]¶
Computation of derivative of drag coefficient wrt sweep.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – lift coefficient
fo2 (numpy array) – coefficient for twist influence on drag
- Returns
dCd/dsweep
- Return type
numpy array
- compute_dcd_dsweep(x_shared, lift_coeff, fo2)[source]¶
Computation of derivative of drag coefficient wrt sweep.
- Parameters
x_shared (numpy array) – global design variables
lift_coeff (numpy array) – lift coefficient
fo2 (numpy array) – coefficient for twist influence on drag
- Returns
dCd/dsweep
- Return type
numpy array
- static compute_dcdmin_dsweep(x_shared)[source]¶
Computation of derivative of 2D minimum drag coefficient wrt sweep.
- Parameters
x_shared (numpy array) – global design variables
- Returns
dCDmin_dsweep
- Return type
numpy array
- compute_dcl_dh(x_shared, y_12)[source]¶
Computation of derivative of lift coefficient wrt altitude.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – coupling variable from weight analysis
- Returns
derivative of lift coefficient wrt altitude
- Return type
numpy array
- compute_dcl_dmach(x_shared, y_12)[source]¶
Computation of derivative of lift coefficient wrt reference surface.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – coupling variable from weight analysis
- Returns
derivative of lift coefficient wrt reference surface
- Return type
numpy array
- compute_dcl_dsref(x_shared, y_12)[source]¶
Computation of derivative of lift coefficient wrt Mach number.
- Parameters
x_shared (numpy array) – global design variables
y_12 (numpy array) – coupling variable from weight analysis
- Returns
derivative of lift coefficient wrt Mach number
- Return type
numpy array
- static compute_dk_aero_dmach(x_shared)[source]¶
Computation of a derivative of k_aero wrt Mach.
- Parameters
x_shared (numpy array) – global design variables
- Returns
dk_aero_dmach
- Return type
numpy array
- static compute_dk_aero_dsweep(x_shared)[source]¶
Computation of a derivative of k_aero wrt sweep.
- Parameters
x_shared (numpy array) – global design variables
- Returns
dk_aero_dsweep
- Return type
numpy array
- compute_drag(drag_coeff, x_shared)[source]¶
Computation of drag from drag coefficient.
- Parameters
drag_coeff (numpy array) – lift coefficient
x_shared (numpy array) – global design variables
- Returns
drag as a force
- Return type
numpy array
- compute_drho_dh_dv_dh(mach, altitude)[source]¶
Compute derivative of velocity and density wrt altitude.
- Parameters
mach (float) – Mach number
altitude (float) – altitude
- Returns
drho_dh, dv_dh
- Return type
float
- compute_drhov2_dh(x_shared)[source]¶
Computation of derivative of rhoV**2 wrt altitude.
- Parameters
x_shared (numpy array) – global design variables
- Returns
drhov2_dh (derivative of rhoV**2 wrt altitude)
- Return type
numpy array
- compute_drhov2_dmach(x_shared)[source]¶
Computation of derivative of rhoV**2 wrt Mach.
- Parameters
x_shared (numpy array) – global design variables
- Returns
drhov2_dmach (derivative of rhoV**2 wrt Mach)
- Return type
numpy array
- compute_dv_dmach(altitude)[source]¶
Computation of derivative of velocity wrt Mach.
- Parameters
altitude (numpy array) – altitude
- Returns
drhov2_dmach (derivative of rhoV**2 wrt Mach)
- Return type
numpy array
- compute_force(adim_coeff, sref, mach, altitude)[source]¶
Compute force (lift or drag) from adim coeff.
- Parameters
adim_coeff (float) – force coefficient
sref (float) – reference surface
mach (float) – Mach number
altitude (float) – altitude
- Returns
force: lift or drag
- Return type
float
- compute_k_aero(x_shared)[source]¶
Computation of a induced drag coefficient (related to lift)
- Parameters
x_shared (numpy array) – global design variables
- Returns
k_aero
- Return type
numpy array
- compute_rho_v(mach, altitude)[source]¶
From given Mach number and altitude, compute velocity and density.
- Parameters
mach (float) – Mach number
altitude (float) – altitude
- Returns
rho, velocity : density and velocity
- Return type
float
- compute_rhov2(x_shared)[source]¶
Computation of rho * velocity * velocity (2*dynamic pressure)
- Parameters
x_shared (numpy array) – global design variables
- Returns
rho * velocity * velocity
- Return type
numpy array
- derive_blackbox_aerodynamics(x_shared, y_12, y_32, x_2)[source]¶
This function calculates drag and lift to drag ratio of A/C.
- Parameters
x_shared (numpy array) –
shared design variable vector:
x_shared[0]: thickness/chord ratio
x_shared[1]: altitude
x_shared[2]: Mach
x_shared[3]: aspect ratio
x_shared[4]: wing sweep
x_shared[5]: wing surface area
y_12 (numpy array) –
shared variables coming from blackbox_structure:
y_12[0]: total aircraft weight
y_12[1]: wing twist
y_32 (numpy array) –
shared variables coming from blackbox_propulsion:
y_32[0]: engine scale factor
x_2 (numpy array) –
aero. design variable:
x_2[0]: friction coeff
- Returns
jacobian matrix of partial derivatives
- Return type
dict(dict(ndarray))