Base Streaming

class osaft.solutions.base_streaming.BaseStreaming[source]

Bases: ABC

Base class for the Streaming Field that defines the common interface.

This base class is used for axisymmetrical models.

abstract Phi(l, r)[source]

\(\Phi_l(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

Return type:

float

Returns:

Phi_l(r)

abstract Psi(l, r)[source]

\(\Psi_l(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

Return type:

float

Returns:

Psi_l(l, r)

abstract V_S_r(l, r, ac)[source]

\(V_{Srl}(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

  • ac (bool) – if True only the incident field contribution

Return type:

float

abstract V_S_theta(l, r, ac)[source]

\(V_{S \theta l}(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

  • ac (bool) – if True only the incident field contribution

Return type:

float

abstract d_Phi(l, r)[source]

\(\partial_r \Phi_l(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

Return type:

float

Returns:

d_Phi_l(l, r)

abstract d_Psi(l, r)[source]

\(\partial_r \Psi_l(r)\)

Parameters:
  • l (int) – index l

  • r (float) – radial coordinate [m]

Return type:

float

Returns:

d_Psi(l, r)

radial_Euler_streaming(r, theta, mode=None)[source]

Radial Euler streaming velocity [m/s]

(Eq. 47)

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float | np.ndarray) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

radial Euler streaming velocity

radial_Euler_streaming_coefficients(r, mode=None)[source]

Radial Euler streaming coefficient [m/s]

(Eq. 47)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

radial Euler streaming coefficient

radial_Lagrange_streaming(r, theta, mode=None)[source]

Returns the value for the radial Lagrange streaming velocity in [m/s].

This method must be implemented by every theory to have a common interface for other modules.

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float | np.ndarray) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode, if None all modes to N_max

    Default: None

Return type:

float

radial_Lagrange_streaming_coefficients(r, mode=None)[source]

Radial Lagrange streaming coefficient [m/s]

(Eq. 51)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

radial Lagrange streaming coefficient

radial_Stokes_drift(r, theta, mode=None)[source]

Radial Stokes drift velocity [m/s]

(Eq. F6)

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

radial Stokes drift velocity

radial_Stokes_drift_coefficients(r, mode=None)[source]

Radial Stokes drift coefficient [m/s]

(Eq. F8)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

radial Stokes drift coefficient

tangential_Euler_streaming(r, theta, mode=None)[source]

Tangential Euler streaming coefficient [m/s]

(Eq. 48)

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float | np.ndarray) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

tangential Euler streaming coefficients

tangential_Euler_streaming_coefficients(r, mode=None)[source]

Tangential Euler streaming coefficient [m/s]

(Eq. 48)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

tangential Euler streaming coefficient

tangential_Lagrange_streaming(r, theta, mode=None)[source]

Returns the value for the tangential Lagrange streaming velocity in [m/s].

This method must be implemented by every theory to have a common interface for other modules.

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float | np.ndarray) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode, if None all modes to N_max

    Default: None

Return type:

float

tangential_Lagrange_streaming_coefficients(r, mode=None)[source]

Tangential Lagrange streaming coefficient [m/s]

(Eq. 52)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

tangential Lagrange streaming coefficient

tangential_Stokes_drift(r, theta, mode=None)[source]

Tangential Stokes drift velocity [m/s]

(Eq. F7)

Parameters:
  • r (float) – radial coordinate [m]

  • theta (float) – tangential coordinate [rad]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

tangential Stokes drift velocity

tangential_Stokes_drift_coefficients(r, mode=None)[source]

Tangential Stokes drift coefficient [m/s]

(Eq. F9)

Parameters:
  • r (float) – radial coordinate [m]

  • mode (Optional[int], optional) – mode

    Default: None

Return type:

float | np.ndarray

Returns:

tangential Stokes drift coefficient

__weakref__

list of weak references to the object (if defined)