Overhead Functions ABC#

overhead functions defines for each element in the battery system the expected overhead caused by busbar, casing, etc.

class basd.designer.overhead_functions_abc.AbcOverheadFunctions(cooling: Cooling)[source]#

OverheadFunctions class determines the overhead for each battery system layout

Parameters:
  • cooling – the cooling type used in the system

  • cooling_width – the extra width due to the cooling system

  • cooling_length – the extra length due to the cooling system

  • cooling_height – the extra height due to the cooling system

  • cooling_weight – the extra weight due to the cooling system

Variables:
  • min_length – minimal length of the battery system

  • min_width – minimal width of the battery system

  • min_height – minimal height of the battery system

abstract __init__(cooling: Cooling)[source]#
static sigmoid(x: int, k: float, w: float, a: float, b: float) float[source]#

sigmoid is a mirrored and shifted saturation function to fit the overhead

Parameters:
  • x – number of specific elements

  • k – slope of the sigmoid function

  • w – shift in the x-direction

  • a – maximum value

  • b – minimum value

Returns:

sigmoid function value for passed x value

static linear(x: int, m: float, c: float) float[source]#

a linear function to fit the overhead

Parameters:
  • x – number of specific elements

  • m – slope of the sigmoid function

  • c – intersection point with the y-axis

Returns:

linear function value for passed x value

abstract pack_height(layout: BasicParameterSet, base_height: float) tuple[float, bool][source]#

overhead for the pack height

Parameters:
  • layout – layout parameter

  • base_height – absolute height caused by the number of strings

Returns:

overhead

abstract pack_length(layout: BasicParameterSet, base_length: float) tuple[float, bool][source]#

overhead for the pack length

Parameters:
  • layout – layout parameter

  • base_length – absolute length caused by the number of strings

Returns:

overhead

abstract pack_width(layout: BasicParameterSet, base_width: float) tuple[float, bool][source]#

overhead for the pack width

Parameters:
  • layout – layout parameter

  • base_width – absolute width caused by the number of strings

Returns:

overhead

abstract string_height(layout: BasicParameterSet, base_height: float) float[source]#

overhead for the string height

Parameters:
  • layout – layout parameter

  • base_height – absolute height caused by the number of strings

Returns:

overhead

abstract string_length(layout: BasicParameterSet, base_length: float) float[source]#

overhead for the string length

Parameters:
  • layout – layout parameter

  • base_length – absolute length caused by the number of strings

Returns:

overhead

abstract string_width(layout: BasicParameterSet, base_width: float) float[source]#

overhead for the string width

Parameters:
  • layout – layout parameter

  • base_width – absolute width caused by the number of strings

Returns:

overhead

abstract module_height(layout: BasicParameterSet, base_height: float) float[source]#

overhead for the module height

Parameters:
  • layout – layout parameter

  • base_height – absolute height caused by the number of strings

Returns:

overhead

abstract module_length(layout: BasicParameterSet, base_length: float) float[source]#

overhead for the module length

Parameters:
  • layout – layout parameter

  • base_length – absolute length caused by the number of strings

Returns:

overhead

abstract module_width(layout: BasicParameterSet, base_width: float) float[source]#

overhead for the module width

Parameters:
  • layout – layout parameter

  • base_width – absolute width caused by the number of strings

Returns:

overhead

abstract cell_block_height(layout: BasicParameterSet, base_height: float) float[source]#

overhead for the cell block height

Parameters:
  • layout – layout parameter

  • base_height – absolute height caused by the number of strings

Returns:

overhead

abstract cell_block_length(layout: BasicParameterSet, base_length: float) float[source]#

overhead for the cell block length

Parameters:
  • layout – layout parameter

  • base_length – absolute length caused by the number of strings

Returns:

overhead

abstract cell_block_width(layout: BasicParameterSet, base_width: float) float[source]#

overhead for the cell block width

Parameters:
  • layout – layout parameter

  • base_width – absolute width caused by the number of strings

Returns:

overhead

abstract pack_gravimetric(layout: BasicParameterSet, base_weight: float) float[source]#

gravimetric overhead for the pack

Parameters:
  • layout – layout parameter

  • base_weight – absolute weight caused by the number of strings

Returns:

overhead

abstract string_gravimetric(layout: BasicParameterSet, base_weight: float) float[source]#

gravimetric overhead for the string

Parameters:
  • layout – layout parameter

  • base_weight – absolute weight caused by the number of modules

Returns:

overhead

abstract module_gravimetric(layout: BasicParameterSet, base_weight: float) float[source]#

gravimetric overhead for the module

Parameters:
  • layout – layout parameter

  • base_weight – absolute weight caused by the number of cell blocks

Returns:

overhead

abstract cell_block_gravimetric(layout: BasicParameterSet, base_weight: float) float[source]#

gravimetric overhead for the cell blocks

Parameters:
  • layout – layout parameter

  • base_weight – absolute weight caused by the number of cells

Returns:

overhead