berhoel.holtrop package

Ship resistance accoring to [Hol84].

Definitions to calculate ships ressitance according to Holtrop.

class berhoel.holtrop.Holtrop(*args, **kw)[source]

Bases: Ship

Calculate ship resistance for merchant ships acc. to [Hol84].

__init__(*args, **kw)[source]
property L_R

According to [Hol84], p. 272:

\[L_R = L \left( 1 - C_P + \frac{0.06 C_P \text{lcb}}{4 C_P - 1}\right)\]
property k_1

Calculates (1+k_1) according to Holtrop:cite:holtropStatisticalReAnalysisResistance1984, page 272:

\[1 + k_1 = 0.93 + 0.487118 c_{14} \left( \frac B L \right)^{1.06806} \left( \frac T L \right)^{0.46106} \left( \frac L{L_R} \right)^{0.121563} \left( \frac{L^3}∇ \right)^{0.36486} \left(1 - C_P \right)^{-0.604247}\]
property c_14

According to [Hol84], p. 272

\(C_\text{Stern}\) according to table: (see [Hol84], p. 272):

Afterbody form

\(C_{\text{Stern}}\)

Pram with gondola

-25

V-shaped section

-10

Normal section shape

0

U-shaped sections with Hogner stern

10

\[c_{14} = 1 + 0.011 C_{\text{Stern}}\]
property C_A
C_A_calc()[source]

Correlation allowance coefficient according to [HM+82], p. 168:

Correlation allowance coefficient see [HM+82], p. 168:

\[C_A = 0.006 (L + 100)^{-0.16} - 0.00205 + 0.003 \sqrt{\frac L{7.5}} C_B^4 c_2 (0.04 - c_4)\]
property c_2

According to [Hol84], p. 273:

\[c_2 = \exp\left(-1.89 \sqrt{c_3} \right)\]
property c_3

According to [Hol84], p. 273:

\[c_3 = \frac{0.56 A_{BT}^{1.5}}{B T \left(0.31 \sqrt{A_BT} + T_F - h_B\right)}\]
property c_4

According to [HM+82], p. 168:

\[\begin{split}c_4 = \left\{ \begin{array}{lll} \frac{T_F}L & \text{when} & \frac{T_F}L ≤ 0.04\\ 0.04 & \text{when} & \frac{T_F}L > 0.04 \end{array} \right.\end{split}\]
property c_17

According to [Hol84], p. 272:

\[c_17 = 6919.3 C_M^{-1.3346} \left( \frac∇{L^3}\right)^{2.00977} \left( \frac L B - 2 \right)^{1.40692}\]
property m_3

According to [Hol84], p. 272:

\[m_3 = -7.2035 \left( \frac B L \right)^{0.326869} \left( \frac T B \right)^{0.605375}\]
property c_1

According to [Hol84], p. 273:

\[c_1 = 2223105 c_7^{3.78613} \left( \frac T B \right)^{1.07961} 90 - i_E)^{-1.37565}\]
property c_5

According to [Hol84], p. 273:

\[c_5 = 1 - 0.8 \frac{A_T}{B T C_M}\]
property λ

According to [Hol84], p. 273:

\[\begin{split}λ = \left\{ \begin{array}{lll} 1.446 C_P - 0.03 \frac L B& \text{when} & \frac L B < 12\\ 1.446 C_P - 0.36 & \text{when} & \frac L B > 12 \end{array} \right.\end{split}\]
c_6(speed)[source]

According to [HM+82], p. 168:

\[\begin{split}c_6 = \left\{ \begin{array}{lll} 0.2 (1 - 0.2 F_{nT}) & \text{when} & F_{nT} < 5\\ 0 & \text{when} & F_{nT} ≥ 5 \end{array} \right.\end{split}\]
property c_7

According to [Hol84], p. 273:

\[\begin{split}c_7 = \left\{ \begin{array}{lll} 0.229577\left(\frac B L \right)^{0.33333} & \text{when} & \frac B L < 0.11\\ \frac B L & \text{when} & 0.11 < \frac B L < 0.25\\ 0.5 - 0.0625 \frac B L & \text{when} & \frac B L > 0.25 \end{array} \right.\end{split}\]
property c_15

According to [Hol84], p. 273:

\[\begin{split}c_{15} = \left\{ \begin{array}{lll} -1.69385 & \text{when} & \frac{L^3}∇ < 512\\ -1.69385 + \frac{\left(\frac L{∇^⅓} - 8\right)}{2.36} & \text{when} & 512 < \frac{L^3}∇ < 1726.91\\ 0 & \text{when} & \frac{L^3}∇ > 1726.91 \end{array} \right.\end{split}\]
property c_16

According to [Hol84], p. 273:

\[\begin{split}c_{16} = \left\{ \begin{array}{lll} 8.07981 C_P - 13.8673 C_P^2 + 6.984388 C_P^3& \text{when} & C_P < 0.8\\ 1.73014 - 0.7067 C_P & \text{when} & C_P > 0.8 \end{array} \right.\end{split}\]
property calc_i_E

Angle if the waterline at the bow in degrees with referende to the centre Plane but neglecting the local shape at the stem. Formula according to [HM+82], pp. 167.

\[i_E = 1 + 89 \exp \left( -\left(\frac L B \right)^{0.80856} \left( 1 - C_{WP} \right)^{0.30484} \left(1 - C_P - 0.0225 \text{lcb} \right)^{0.6367} \left( \frac{L_R}B \right)^{0.34574} \left( \frac{100 ∇}{L^3} \right)^{0.16302} \right)\]
property m_1

According to [Hol84], p. 273:

\[m_1 = 0.0140407 \frac L T - 1.75254 \frac{∇^{\frac13}}L - 4.79323 \frac B L - c_{16}\]
m_4(speed)[source]

According to [Hol84], p. 273:

\[c_{15} = 0.4 \exp \left( -0.034 F_n^{-3.29} \right)\]
R_W(speed)[source]

Wave ressistance formula according to [Hol84], p. 273:

\[\begin{split}R_W = \left\{ \begin{array}{lll} R_{W-A} & \text{when} & F_n < 0.40\\ R_{W-A_{0.4}} + \left(10 F_n - 4\right) \frac{ \left(R_{W-B_{0.55}} - R_{W-A_{0.4}} \right)} {0.5} & \text{when} & 0.40 < F_n < 0.55\\ R_{W-B} & \text{when} & F_n > 0.55 \end{array} \right.\end{split}\]

Here $R_{W-A_{0.4}}$ is the wave resistance prediction for $F_n = 0.40$ and $R_{W-B_{0.55}}$ is the wave resistance prediction for $F_n = 055$ according to the respective formulae.

R_WA(speed, F_n)[source]

Wave ressistance formula for speed range F_n < 0.4 according to [Hol84], p. 273:

\[R_{W-A} = c_1 c_2 c_5 ∇ ρ g \exp\left(m_1 F_n^d + m_4 \cos \left( \lambda F_n^{-2}\right)\right)\]
R_WB(speed, F_n)[source]

Wave ressistance formula for speed range F_n > 0.55 according to [Hol84], p. 272:

\[R_{W-B} = c_{17} c_2 c_5 ∇ ρ g \exp\left(m_3 F_n^d + m_4 \cos \left( \lambda F_n^{-2}\right)\right)\]
R_app(speed)[source]

Appedage resistance according to [HM+82], p. 167:

\[R_{APP} = 0.5 ρ V^2 S_{APP} \left( 1 + k_2 \right)_{eq} C_F\]
R_B(speed)[source]

Additional resistance due to the presence of a bulbous bow near the surface, according to [HM+82], p. 168:

\[R_B = 0.11 \exp \left(-3 P_B^{-2} \right) \frac{F_{ni}^3 A{BT}^{1.5} ρ g} {1 + F_{ni}^2}\]
R(speed)[source]

Calculating of resistance of merchant ships according to the statistical method of J. Holtrop, [Hol84], p. 272:

\[R_{\text{Total}} = hydro.R_F(1+K_1)+R_{APP}+R_W+R_B+R_{TR}+R_A\]
R_TR(speed)[source]

Additional pressure resistance due to immersed transom, according to [HM+82], p.~168:

\[R{TR} = 0.5 ρ V^2 A_T c_6\]
R_A(speed)[source]

Model-ship correlation resistance according to [HM+82], p. 168:

\[R_A = 0.5 ρ V^2 S C_A\]
F_nT(speed)[source]

Froude number based on the transom immersion, according to [HM+82], p. 168:

\[F_{nT} = \frac V{\sqrt{\frac{2 g A_T}{B + B C_{WP}}}}\]
__abstractmethods__ = frozenset({})
__firstlineno__ = 23
__static_attributes__ = ('d',)
_abc_impl = <_abc._abc_data object>
berhoel.holtrop.C_A_ITTC78(L, k_s)[source]

Correlation allowance coefficient increase according to [HM+82], p. 168:

\[C_A = \frac{0.105 k_s^{\frac 1 3} - 0.005579}{L^{\frac 1 3}}\]
berhoel.holtrop.C_V(speed, ship)[source]

Viscous resistance coefficient according to [Hol84], p. 274:

\[C_V = (1 + k) C_F + C_A\]
berhoel.holtrop.c_1(ship)[source]

According to [Hol84], p. 273:

\[c_1 = 2223105 c_7^{3.78613} \left( \frac T B \right)^{1.07961} 90 - i_E)^{-1.37565}\]
berhoel.holtrop.c_7(ship)[source]

According to [Hol84], p. 273:

\[\begin{split}c_7 = \left\{ \begin{array}{lll} 0.229577\left(\frac B L \right)^{0.33333} & \text{when} & \frac B L < 0.11\\ \frac B L & \text{when} & 0.11 < \frac B L < 0.25\\ 0.5 - 0.0625 \frac B L & \text{when} & \frac B L > 0.25 \end{array} \right.\end{split}\]
berhoel.holtrop.c_8(ship)[source]

According to [Hol84], p. 273:

\[\begin{split}c_8 = \left\{ \begin{array}{lll} \frac{B S}{L D T_A} & \text{when} & \frac B{T_A} < 5\\ \frac{S7\frac B{T_A} - 25} {LD \left(\frac B{T_A} - 3 \right)} & \text{when} & \frac B{T_A} > 5 \end{array} \right.\end{split}\]
berhoel.holtrop.c_9(ship)[source]

According to [Hol84], p. 273:

\[\begin{split}c_9 = \left\{ \begin{array}{lll} c_8 & \text{when} & c_8 < 28\\ 32 - \frac{16}{c_8 - 24} & \text{when} & c_8 > 28 \end{array} \right.\end{split}\]
berhoel.holtrop.c_10()[source]
berhoel.holtrop.c_11(ship)[source]

According to [Hol84], p. 273:

\[\begin{split}c_{11} = \left\{ \begin{array}{lll} \frac{T_A}D & \text{when} & \frac{T_A}D < 2\\ 0.0833333 \left( \frac{T_A}D \right)^3 + 1.33333 & \text{when} & \frac{T_A}D > 2 \end{array} \right.\end{split}\]
berhoel.holtrop.c_12()[source]
berhoel.holtrop.c_13()[source]
berhoel.holtrop.c_18()[source]
berhoel.holtrop.c_19(ship)[source]

According to [Hol84], p. 273-274:

\[\begin{split}c_{19} = \left\{ \begin{array}{lll} \frac{0.12997}{0.95 - C_B} - \frac{0.11056}{0.95 - C_P} & \text{when}& C_P < 0.7\\ \frac{ 0.18567}{1.3571 - C_M} - 0.71276 + 0.38648 C_P & \text{when}& C_P > 0.7 \end{array} \right.\end{split}\]
berhoel.holtrop.c_20(ship)[source]

According to [Hol84], p. 274:

\[c_{20} = 1 + 0.015 C_{\text{Stern}}\]
berhoel.holtrop.c_21()[source]
berhoel.holtrop.C_P1(ship)[source]

According to [Hol84], p. 274:

\[C_{P1} = 1.45 C_P - 0.315 - 0.0225 \text{lcb}\]
berhoel.holtrop.m_2()[source]
berhoel.holtrop.P_B(ship)[source]

A measure for the emergence of the bow, according to [HM+82], p. 168:

\[P_B = \frac{0.56 \sqrt{A_{BT}}}{T_F - 1.5 h_B}\]

end{equation}

berhoel.holtrop.F_ni(speed, ship)[source]

Froude number based on the immersion, according to [HM+82], p. 168:

\[\frac V{\sqrt{g \left( T_F - h_B - 0.25 \sqrt{A_{BT}} \right) + 0.15 V^2}}\]
berhoel.holtrop.w_single(speed, ship)[source]

Wake prediction for single screw ships according to [Hol84], p. 273:

\[w = c_9 c{20} C_V \frac L{T_A} \left( 0.050776 + 0.93405 c_{11} \frac{C_V} {\left(1 - C_{P1} \right)} \right) + 0.27915 c_{20} \sqrt{\frac B{L\left( 1 - C_{P1} \right)}} c_{19} c_{20}\]
berhoel.holtrop.t_single(ship)[source]

Thrust decuction prediction for single screw ships according to [Hol84], p. 274:

\[t = \frac{0.25014 \left(\frac B L \right)^{0.28956} \left( \frac{\sqrt{B T}}D \right)^{0.2624}} {\left(1 - C_P + 0.0225 \text{lcb}\right)^{0.01762}} + 0.0015 C_{\text{stern}}\]
berhoel.holtrop.eta_R_single(ship)[source]

The relatigve-rotative efficiency prediction for single screw ships according according to [HM+82], pp. 168:

\[η_R = 0.9922 - 0.05908 \frac{A_E}{A_O} + 0.07424 \left( C_P - 0.0225 \text{lcb} \right)\]
berhoel.holtrop.w_single_open_stern(speed, ship)[source]

Wake prediction for single screw ships with open stern (as sometimes applied on slender, fast sailing ships) according to [HM+82], p. 169:

\[w = 0.3 C_B + 10 C_V C_B - 0.23 \frac{D}{\sqrt{B T}}\]
berhoel.holtrop.t_single_open_stern(speed, ship)[source]

Thrust decuction prediction for single screw ships with open stern (as sometimes applied on slender, fast sailing ships) according to [HM+82], p. 169:

\[t = 0.10\]
berhoel.holtrop.eta_R_single_open_stern(ship)[source]

The relatigve-rotative efficiency prediction for single screw ships with open stern (as sometimes applied on slender, fast sailing ships) according according to [HM+82], pp. 168:

\[η_R = 0.98\]
berhoel.holtrop.w_twin(speed, ship)[source]

Wake prediction for twin screw ships according to [HM+82], p. 169:

\[w = 0.3095 C_B + 10 C_V C_B - 0.23 \frac D{\sqrt{B T}}\]
berhoel.holtrop.t_twin(ship)[source]

Thrust decuction prediction for twin screw ships according to [HM+82], p. 169:

\[t = 0.325 C_B - 0.1885 \frac D {\sqrt{B T}}\]
berhoel.holtrop.eta_R_twin(ship)[source]

The relatigve-rotative efficiency prediction for twin screw ships according according to [HM+82], pp. 168:

\[η_R = 0.9737 + 0.111 \left( C_P - 0.0225 \text{lcb} \right) + 0.06325 \frac P D\]

Subpackages

Submodules

berhoel.holtrop.hydro module

Hydrostatic and hydrodynamic parameters.

berhoel.holtrop.hydro.nue = <Quantity 1.1883e-06 m2 / s>

For seewater, salinity 3.5%,

berhoel.holtrop.hydro.rho = <Quantity 1025. kg / m3>

15°C, according to [Sch88], p. 351

berhoel.holtrop.hydro.nue_calc(salin: Quantity, temp: Quantity)[source]

Calculates the kinematic viscisity of water, returns value in m^2/s

salin = salinity of the water temp = temperature of the water in degrees centigrade

berhoel.holtrop.hydro.F_n(speed: Quantity, L: Quantity)[source]

Froude number, according to [Sch88], p. 323

berhoel.holtrop.hydro.R_n(speed: Quantity, L: Quantity)[source]

Reynolds number, according to [Sch88], p. 323

berhoel.holtrop.hydro.C_F(speed: Quantity, L: Quantity)[source]

Coefficient of frictional resistance according to the ITTC-1957 formula, [HM78], p253

berhoel.holtrop.read_ship module

class berhoel.holtrop.read_ship.ReadShip(file=None)[source]

Bases: object

__keys: list[str] = []
__init__(file=None)[source]
open(file=None)[source]
edit(master)[source]
execute(entity)[source]
__annotations__ = {'_ReadShip__keys': 'list[str]', '__keys': 'list[str]'}
__firstlineno__ = 13
__static_attributes__ = ('dialog', 'selbox', 'ship')
berhoel.holtrop.read_ship.open(name)[source]
berhoel.holtrop.read_ship.main()[source]

berhoel.holtrop.ship module

Hold ship dimensions.

class berhoel.holtrop.ship.WettedSurfaceEstimationMethod(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

Estimation formulas for caculating wetted surfaces.

Holtrop = 1
Schenzle = 2
class berhoel.holtrop.ship.WaterlineCoefficientMethod(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

Calculation method for estimating C_WP

  1. Schneekluth_U: For ships with U-shaped sections, with not sweeping stern lines:

    \[C_{WP} = 0.95 C_P + 0.17 (1 - C_P)^{\frac{1}{3}}\]
  2. Schneekluth_medium: For medium shape forms:

    \[C_{WP} = \frac{1 + 2 C_B}{3}\]
  3. Schneekluth_V: V-shaped sections, also for sweeping stern lines:

    \[C_{WP} = \sqrt{C_B} - 0.025\]
  4. Schneekluth_V_alt_1: For shapes as Schneekluth_V

    \[C_{WP} = C_P^\frac 2 3\]
  5. Schneekluth_V_alt_2: For shapes as Schneekluth_V

    \[C_{WP} = \frac{1 + 2 \frac{C_B}{\sqrt{C_M}}} 3\]

All formulas according to [Sch85]

Schneekluth_U = 1
Schneekluth_medium = 2
Schneekluth_V = 3
Schneekluth_V_alt_1 = 4
Schneekluth_V_alt_2 = 5
berhoel.holtrop.ship.C_WP_Schneekluth_U(C_P: float)[source]

Calculation method for estimating C_WP acc. to Schneekluth.

Formula for ships with U-shaped sections, with not sweeping stern lines:

\[C_{WP} = 0.95 C_P + 0.17 (1 - C_P)^{\frac{1}{3}}\]

Formula according to [Sch85], p. 144

berhoel.holtrop.ship.C_WP_Schneekluth_medium(C_B: float)[source]

Calculation method for estimating C_WP acc. to Schneekluth.

Formula for medium shape forms:

\[C_{WP} = \frac{1 + 2 C_B} 3\]

Formula according to [Sch85], p. 144

berhoel.holtrop.ship.C_WP_Schneekluth_V(C_B: float)[source]

Calculation method for estimating C_WP acc. to Schneekluth.

Formula for V-shaped sections, also for sweeping stern lines:

\[C_{WP} = \sqrt{C_B} - 0.025\]

Formula according to [Sch85], p. 144

berhoel.holtrop.ship.C_WP_Schneekluth_V_alt_1(C_P: float)[source]

Calculation method for estimating C_WP acc. to Schneekluth.

Formula for V-shaped sections, also for sweeping stern lines, alternative 2:

\[C_{WP} = C_P^\frac 2 3\]

Formula according to [Sch85], p. 144

berhoel.holtrop.ship.C_WP_Schneekluth_V_alt_2(C_B: float, C_M: float)[source]

Calculation method for estimating C_WP C_WP acc. to Schneekluth.

Formula for V-shaped sections, also for sweeping stern lines, alternative 2:

\[C_{WP} = \frac{1 + 2 \frac{C_B}{\sqrt{C_M}}} 3\]

Formula according to [Sch85], p. 144

class berhoel.holtrop.ship.BlockCoefficientMethod(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: Enum

Select estimation formula for calculating block coefficient \(C_B\).

Formulas are taken from [Sch85], p. 134f.

  1. Schneekluth_1:

    \[C_B = \frac{0.14}{F_n} \cdot \frac{\frac L B + 20}{26}\]
  2. Schneekluth_2:

    \[C_B = \frac{0.23}{F_n^{\frac 2 3}} \cdot \frac{\frac L B + 20}{26}\]
  3. Ayre_1_06 Often used in more recent appliocations. \(C_\text{Ayre} = 1.06\)

  4. Ayre_1_08 One screw ships, \(C_\text{Ayre} = 1.08\)

  5. Ayre_1_09 Two screw ships, \(C_\text{Ayre} = 1.09\)

    With

    \[{C_B}_\text{Ayre} = C_\text{Ayre} - 1.68 F_n\]
Schneekluth_1 = 1
Schneekluth_2 = 2
Ayre_1_06 = 3
Ayre_1_08 = 4
Ayre_1_09 = 5
berhoel.holtrop.ship.C_B_Schneekluth_1(F_n: float, L: Quantity, B: Quantity)[source]

Estimate \(C_B\) acc. to Schneekluth.

Variant 1 acc to [Sch85], p. 134f.

berhoel.holtrop.ship.C_B_Schneekluth_2(F_n: float, L: Quantity, B: Quantity)[source]

Estimate \(C_B\) acc. to Schneekluth.

Variant 2 acc to [Sch85], p. 134f.

berhoel.holtrop.ship.C_B_Ayre(F_n: float, C_Ayre: float) float[source]

Estimate \(C_B\) acc. to Ayre.

Formula acc. to [Sch85], p. 134f.

berhoel.holtrop.ship.C_B_Ayre_1_06(F_n: float)[source]

Often used in more recent appliocations. \(C_\text{Ayre} = 1.06\)

berhoel.holtrop.ship.C_B_Ayre_1_08(F_n: float)[source]

One screw ships, \(C_\text{Ayre} = 1.08\)

berhoel.holtrop.ship.C_B_Ayre_1_09(F_n: float)[source]

Two screw ships, \(C_\text{Ayre} = 1.09\)

class berhoel.holtrop.ship.Ship(**kw)[source]

Bases: ABC

Class to describe a ship for resistance calculation.

__known_methods = {'C_A', 'C_B', 'C_P', 'C_WP', 'Nab', 'S', 'i_E'}
_S_method = 1
__C_WP_method = 1
__C_B_method = 3
__default_speed = <Quantity 14. kn>
__needed_units = {'A_BT': Unit("m2"), 'A_E_0': None, 'A_T': Unit("m2"), 'A_WP': Unit("m2"), 'App': [[Unit("m2"), None]], 'B': Unit("m"), 'B_WP': Unit("m"), 'C_A': None, 'C_B': None, 'C_M': None, 'C_P': None, 'C_Stern': None, 'C_WP': None, 'D': Unit("m"), 'L': Unit("m"), 'L_WP': Unit("m"), 'Nab': Unit("m3"), 'R': <Quantity 1000. N>, 'R_A': <Quantity 1000. N>, 'R_B': <Quantity 1000. N>, 'R_F': <Quantity 1000. N>, 'R_TR': <Quantity 1000. N>, 'R_W': <Quantity 1000. N>, 'R_app': <Quantity 1000. N>, 'S': Unit("m2"), 'S_app': [Unit("m2")], 'T': Unit("m"), 'T_A': Unit("m"), 'T_F': Unit("m"), 'c_P_D': None, 'eta_0': None, 'eta_R': None, 'h_b': Unit("m"), 'i_E': Unit("deg"), 'k_1': None, 'k_2': [None], 'lcb': None, 't': None, 'v_Probe': Unit("m / s"), 'w': None}
__init__(**kw)[source]
abstract R(speed: Quantity) Quantity[source]

Calculate total ship resistance.

property L
property h_b
property Nab
property T_F
property T_A
property T
property B
property S: float

Wetted surface for ship.

Calculates the wetted area of the hull if none is given. Known methods are:

  • HoltropApproximated wetted area of a ship hull, according to J.

    Holtrop and G. G. J. Mennen, An Approximate Power Predition Method, International shipbuilding progress. Vol. 29, 1982, p. 166

  • Schenzle:

Default method is Holtrop.

property C_Stern
property C_WP

Return waterplane coefficient of the hull.

Calculates the waterplane coefficient of the hull if none is given.

property C_B

Estimate \(C_B\), the block coefficient based on the Froude No.

property i_E
property C_P
property C_A
property App
__abstractmethods__ = frozenset({'R'})
__annotations__ = {}
__firstlineno__ = 241
__static_attributes__ = ('App', 'C_WP', 'T', 'T_A', 'T_F', '_S_method', '__C_B_method', '__C_WP_method', '__default_speed', '__keys')
_abc_impl = <_abc._abc_data object>
property C_M
property A_T
property A_WP
property L_WP
property B_WP
property A_BT: Quantity
R_F(speed: Quantity) Quantity[source]

Frictional resitance according to the ITTC-57 formula

property lcb: Quantity
__call__() dict[source]

Call self as a function.

__repr__() str[source]

Return repr(self).

set_S_Method(method: WettedSurfaceEstimationMethod) None[source]

Set method for calculating the wette surface \(S\).

set_C_WP_Method(method: WaterlineCoefficientMethod) None[source]

Set method for calculating Waterline Coefficient \(C_{WP}\).

set_C_B_method(method: BlockCoefficientMethod) None[source]

Set method for calculating Block Coefficient \(C_B\).

set_default_speed(speed: Quantity) None[source]

Set the default speed for calculations.

load(file: Path | None = None) None | dict[source]

Load data from configuration file.

save(file: Path | None = None) None[source]

Save current data.

execute(entity: str) None[source]

Excute actions.

exception berhoel.holtrop.ship.ShipError[source]

Bases: Exception

Indicate error.

__firstlineno__ = 644
__static_attributes__ = ()
exception berhoel.holtrop.ship.ShipTypeError[source]

Bases: TypeError

Indicate use of wrong type.

__firstlineno__ = 648
__static_attributes__ = ()
exception berhoel.holtrop.ship.ShipInternalError[source]

Bases: ShipError

Indicate internal error.

__annotations__ = {}
__firstlineno__ = 652
__static_attributes__ = ()