ibl.head_method.HeadMethod
- class ibl.head_method.HeadMethod(nu=1.0, U_e=None, dU_edx=None, d2U_edx2=None, shape_d_crit=2.4)
Bases:
IBLMethodModels a turbulent bondary layer using Head’s Method (1958).
Solves the system of ODEs from Head’s method when provided the edge velocity profile and other configuration information.
- Parameters:
nu (float)
U_e (Any | None)
dU_edx (Any | None)
d2U_edx2 (Any | None)
shape_d_crit (float)
- __init__(nu=1.0, U_e=None, dU_edx=None, d2U_edx2=None, shape_d_crit=2.4)
- Parameters:
nu (float)
U_e (Any | None)
dU_edx (Any | None)
d2U_edx2 (Any | None)
shape_d_crit (float)
- Return type:
None
Methods
__init__([nu, U_e, dU_edx, d2U_edx2, ...])d2u_e(x)Streamwise second derivative of inviscid edge velocity at location(s).
delta_d(x)Calculate the displacement thickness.
delta_k(x)Calculate the kinetic energy thickness.
delta_m(x)Calculate the momentum thickness.
dissipation(x, rho)Calculate the dissipation integral.
du_e(x)Streamwise derivative of inviscid edge velocity at location(s).
Set the initial conditions for solver.
set_shape_d_critical(shape_d_crit)Set the critical displacement shape factor for separation.
set_velocity(u_e[, du_e, d2u_e])Set the edge velocity relations.
shape_d(x)Calculate the displacement shape factor.
shape_k(x)Calculate the kinetic energy shape factor.
solve(x0, x_end[, term_event])Solve the ODE associated with particular IBL method.
tau_w(x, rho)Calculate the wall shear stress.
u_e(x)Return the inviscid edge velocity at specified location(s).
v_e(x)Calculate the transpiration velocity.
Attributes
Momentum thickness at start of integration.
Dispacement thickness at start of integration.
Kinematic viscosity used for the solution.
- property initial_delta_m: float
Momentum thickness at start of integration. Must be greater than zero.
- property initial_shape_d: float
Dispacement thickness at start of integration. Must be greater than zero
- set_shape_d_critical(shape_d_crit)
Set the critical displacement shape factor for separation.
Since Head’s method does not predict when the skin friction will be zero, another mechanism needs to be employed to determine if/when separation will occur. This value is used as the threshold for the displacement shape factor to indicate separation has occurred.
- Parameters:
shape_d_crit (float) – New value for the displacement shape factor to be used to indicate that the boundary layer has separated.
- Return type:
None
- v_e(x)
Calculate the transpiration velocity.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired transpiration velocity at the specified locations.
- Return type:
numpy.ndarray
- delta_d(x)
Calculate the displacement thickness.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired displacement thickness at the specified locations.
- Return type:
numpy.ndarray
- delta_m(x)
Calculate the momentum thickness.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired momentum thickness at the specified locations.
- Return type:
numpy.ndarray
- delta_k(x)
Calculate the kinetic energy thickness.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired kinetic energy thickness at the specified locations.
- Return type:
numpy.ndarray
- shape_d(x)
Calculate the displacement shape factor.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired displacement shape factor at the specified locations.
- Return type:
numpy.ndarray
- shape_k(x)
Calculate the kinetic energy shape factor.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Desired kinetic energy shape factor at the specified locations.
- Return type:
numpy.ndarray
- tau_w(x, rho)
Calculate the wall shear stress.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
rho (float) – Freestream density.
- Returns:
Desired wall shear stress at the specified locations.
- Return type:
numpy.ndarray
- dissipation(x, rho)
Calculate the dissipation integral.
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
rho (float) – Freestream density.
- Returns:
Desired dissipation integral at the specified locations.
- Return type:
numpy.ndarray
- d2u_e(x)
Streamwise second derivative of inviscid edge velocity at location(s).
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Second derivative of inviscid edge velocity.
- Return type:
numpy.ndarray
- Raises:
TypeError – When velocity parameters have not been set.
- du_e(x)
Streamwise derivative of inviscid edge velocity at location(s).
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Derivative of inviscid edge velocity.
- Return type:
numpy.ndarray
- Raises:
TypeError – When velocity parameters have not been set.
- property nu: float
Kinematic viscosity used for the solution. Must be greater than zero.
- set_initial_condition(ic)
Set the initial conditions for solver.
- Parameters:
ic (InitialCondition) – Desired initial condition.
- Return type:
None
- set_velocity(u_e, du_e=None, d2u_e=None)
Set the edge velocity relations.
There are a number of different ways to set the velocity relation and its derivatives. See class definition for details.
- Parameters:
u_e (2-tuple of array-like, scalar, or function-like) – Representation of the edge velocity to be used in analysis
du_e (None, 2-tuple of array-like, or function-like, optional) – Representation of the first derivative of the edge velocity to be used in analysis. The default is None.
d2u_e (None or function-like, optional) – Representation of the second derivative of the edge velocity to be used in analysis. The default is None.
- Raises:
ValueError – When configuration parameter is invalid (see message).
- Return type:
None
- solve(x0, x_end, term_event=None)
Solve the ODE associated with particular IBL method.
This sets up the ODE solver using specific information from the child class and then runs the ODE solver to completion or termination because a termination event was triggered.
- Parameters:
x0 (float) – Location to start integration.
x_end (float) – Location to end integration.
term_event (List based on
TermEvent, optional) – User events that can terminate the integration process before the end location of the integration is reached. The default is None.
- Returns:
Information associated with the integration process.
- Return type:
- Raises:
TypeError – When solution parameters have not been set.
- u_e(x)
Return the inviscid edge velocity at specified location(s).
- Parameters:
x (InputParam) – Streamwise loations to calculate this property.
- Returns:
Inviscid edge velocity.
- Return type:
numpy.ndarray
- Raises:
TypeError – When velocity parameters have not been set.