HoleM54 (class)

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

class HoleM54(H0=0.003, H1=0, W0=0.013, R1=0.02, Zh=36, mat_void=-1, magnetization_dict_offset=None, init_dict=None, init_str=None)[source]

Bases: pyleecan.Classes.Hole.Hole

Arc Hole for SyRM

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

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

Parameters
  • self (HoleM54) – A HoleM54 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

Returns

surf_list – List of Air Surface on the slot

Return type

list

check()

Check that the HoleM54 object is correct

Parameters

self (HoleM54) – A HoleM54 object

Returns

Return type

None

Raises
comp_magnetization_dict(is_north=True)

Compute the dictionary of the magnetization direction of the magnets (key=magnet_X, value=angle[rad]) Mangetization angle with Hole centered on Ox axis

Parameters
  • self (HoleM54) – a HoleM54 object

  • is_north (True) – True: comp north magnetization, else add pi [rad]

Returns

mag_dict – magnetization dictionary (key=magnet_X, value=angle[rad])

Return type

dict

comp_radius()

Compute the radius of the min and max circle that contains the hole

Parameters

self (HoleM54) – A HoleM54 object

Returns

(Rmin,Rmax) – Radius of the circle that contains the hole [m]

Return type

tuple

comp_surface()

Compute the complete surface of the Hole

Parameters

self (HoleM54) – A HoleM54 object

Returns

S – Surface of the Hole [m**2]

Return type

float

plot_schematics(is_default=False, is_add_point_label=False, is_add_schematics=True, is_add_main_line=True, type_add_active=True, save_path=None, is_show_fig=True)

Plot the schematics of the slot

Parameters
  • self (HoleM54) – A HoleM54 object

  • is_default (bool) – True: plot default schematics, else use current slot values

  • is_add_point_label (bool) – True to display the name of the points (Z1, Z2….)

  • is_add_schematics (bool) – True to display the schematics information (W0, H0…)

  • is_add_main_line (bool) – True to display “main lines” (slot opening and 0x axis)

  • type_add_active (int) – 0: No active surface, 1: active surface as winding, 2: active surface as magnet

  • save_path (str) – full path including folder, name and extension of the file to save if save_path is not None

  • is_show_fig (bool) – To call show at the end of the method

save(save_path='', is_folder=False)

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

copy(**kwargs)

Return a copy of the class

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')[source]

Compare two objects and return list of differences

as_dict(**kwargs)[source]

Convert this object in a json serializable dict (can be use in __init__). Optional keyword input parameter is for internal use only and may prevent json serializability.

property H0

Hole depth

Type

float

Min

0

property H1

Hole width

Type

float

Min

0

property W0

Hole angular width

Type

float

Min

0

property R1

Hole radius

Type

float

Min

0