LamSlotMag (class)

Method code available at https://github.com/Eomys/pyleecan/tree/master/pyleecan/Methods/Machine/LamSlotMag

class LamSlotMag(magnet=-1, slot=-1, L1=0.35, mat_type=-1, Nrvd=0, Wrvd=0, Kf1=0.95, is_internal=True, Rint=0, Rext=1, is_stator=True, axial_vent=-1, notch=-1, yoke_notch=-1, init_dict=None, init_str=None)[source]

Bases: pyleecan.Classes.LamSlot.LamSlot

Lamination with Slot for Magnets

VERSION = 1
build_geometry(is_magnet=True, sym=1, alpha=0, delta=0, is_simplified=False)

Build the geometry of the LamSlotMag

Parameters
  • self (LamSlotMag) – LamSlotMag object

  • is_magnet (bool) – If True build the magnet surfaces

  • sym (int) – Symmetry factor (1= full machine, 2= half of the machine…)

  • alpha (float) – Angle for rotation [rad]

  • delta (complex) – Complex value for translation

  • is_simplified (bool) – True to avoid line superposition

Returns

surf_list – list of surfaces needed to draw the lamination

Return type

list

check()

Check that the Lamination object is correct

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

Return type

None

Raises

LMC_SlotTooLong – The Slot is too long for the lamination (HYoke <0)

comp_masses()

Compute the Lamination masses (Mlam, Mmag)

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

M_dict – Lamination mass dictionnary (Mtot, Mlam, Mmag) [kg]

Return type

dict

comp_radius_mec()

Compute the mechanical radius of the Lamination [m]

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

Rmec – Mechanical radius [m]

Return type

float

comp_surfaces()

Compute the Lamination surfaces (Slam, Svent, Sslot, Smag)

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

S_dict – Lamination surface dictionnary (Slam, Svent, Sslot, Smag) [m**2]

Return type

dict

comp_volumes()

Compute the Lamination volumes (Vlam, Vvent, Vslot, Vmag)

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

V_dict – Lamination surface dictionnary (Vlam, Vvent, Vslot, Vmag) [m**3]

Return type

dict

plot(fig=None, ax=None, is_lam_only=False, sym=1, alpha=0, delta=0, is_edge_only=False, is_show_fig=True)

Plot a Lamination with Magnets in a matplotlib fig

Parameters
  • self (LamSlotMag) – A LamSlotMag object

  • fig (Matplotlib.figure.Figure) – existing figure to use if None create a new one

  • ax (Matplotlib.axes.Axes object) – Axis on which to plot the data

  • is_lam_only (bool) – True to plot only the lamination (remove the magnet)

  • sym (int) – Symmetry factor (1= full machine, 2= half of the machine…)

  • alpha (float) – Angle for rotation [rad]

  • delta (complex) – Complex value for translation

  • is_edge_only (bool) – To plot transparent Patches

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

Returns

Return type

None

comp_angle_d_axis()

Compute the angle between the X axis and the first d+ axis By convention a “Tooth” is centered on the X axis By convention the first magnet is +

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

d_angle – angle between the X axis and the first d+ axis

Return type

float

comp_periodicity()

Compute the periodicity factor of the lamination

Parameters

self (LamSlotMag) – A LamSlotMag object

Returns

  • per_a (int) – Number of spatial periodicities of the lamination

  • is_antiper_a (bool) – True if an spatial anti-periodicity is possible after the periodicities

  • per_t (int) – Number of time periodicities of the lamination

  • is_antiper_t (bool) – True if an time anti-periodicity is possible after the periodicities

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 magnet

Magnet of the lamination

Type

Magnet