pyleecan.Classes.HoleUD module

Method code available at https://github.com/Eomys/pyleecan/tree/master/pyleecan/Methods/Slot/HoleUD

class HoleUD(surf_list=- 1, magnet_dict=- 1, name='', Zh=36, mat_void=- 1, magnetization_dict_offset=None, Alpha0=0, init_dict=None, init_str=None)[source]

Bases: HoleMag

User defined hole from list of surface

VERSION = 1
IS_SYMMETRICAL = 1
build_geometry(alpha=0, delta=0, is_simplified=False)

Compute the curve (Segment) needed to plot the Hole. The ending point of a curve is the starting point of the next curve in the list

Parameters:
  • self (HoleUD) – A HoleUD object

  • alpha (float) – Angle to rotate the slot (Default value = 0) [rad]

  • delta (complex) – Complex to translate the slot (Default value = 0)

  • is_simplified (bool) – True to avoid line superposition (not used)

Returns:

surf_list – List of SurfLine needed to draw the Hole

Return type:

list

check()

Check that the HoleUD is correctly defined

comp_surface_magnet_id(index)

Compute the surface of the hole magnet of the corresponding index

Parameters:
  • self (HoleUD) – A HoleUD object

  • index (int) – Index of the magnet to compute the surface

Returns:

Smag – Surface of the Magnet [m**2]

Return type:

float

has_magnet()

Return if the Hole has magnets

Parameters:

self (HoleUD) – A HoleUD object

Returns:

has_magnet – True if the magnets are not None

Return type:

bool

remove_magnet()

Remove the magnet (set to None) of the Hole

Parameters:

self (HoleUD) – a HoleUD object

save(save_path='', is_folder=False, type_handle_old=2, type_compression=0)

Save the object to the save_path

Parameters:
  • self – A pyleecan object

  • save_path (str) – path to the folder to save the object

  • is_folder (bool) – to split the object in different files: separate simulation machine and materials (json only)

  • type_handle_old (int) – How to handle old file in folder mode (0:Nothing, 1:Delete, 2:Move to “Backup” folder)

  • type_compression (int) – Available only for json, 0: no compression, 1: gzip

get_logger()

Get the object logger or its parent’s one

Parameters:

obj – A pyleecan object

Returns:

logger – Pyleecan object dedicated logger

Return type:

logging.Logger

compare(other, name='self', ignore_list=None, is_add_value=False)[source]

Compare two objects and return list of differences

as_dict(type_handle_ndarray=0, keep_function=False, **kwargs)[source]

Convert this object in a json serializable dict (can be use in __init__). type_handle_ndarray: int

How to handle ndarray (0: tolist, 1: copy, 2: nothing)

keep_functionbool

True to keep the function object, else return str

Optional keyword input parameter is for internal use only and may prevent json serializability.

copy()[source]

Creates a deepcopy of the object

property surf_list

List of surface to draw the Hole. Surfaces must be ordered in trigo order, label must contain HoleMagnet for Magnet and Hole for holes

Type:

[Surface]

property magnet_dict

dictionary with the magnet for the Hole (None to remove magnet, key should be magnet_X)

Type:

{Magnet}

property name

Name of the hole (for save)

Type:

str