LamSlotMag (class)

File generated according to Generator/ClassesRef/Machine/LamSlotMag.csv WARNING! All changes made in this file will be lost!

class LamSlotMag(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=[], notch=[], init_dict=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)
  • LMC_OverlappingSlot – The Lamination has overlapping slot
  • LMC_MagnetShape – You can’t put a rounded bottom magnet in a flat bottom slot
  • LMC_MagnetTooLarge – The magnet is larger than the slot
  • LMC_MagnetShape – You can’t put a flat bottom magnet in a rounded bottom slot
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, is_lam_only=False, sym=1, alpha=0, delta=0, is_edge_only=False)

Plot a Lamination with Magnets in a matplotlib fig

Parameters:
  • self (LamSlotMag) – A LamSlotMag object
  • fig – if None, open a new fig and plot, else add to the current one (Default value = None)
  • 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
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
save(save_path='')

Save the object to the save_path

Parameters:
  • self – A pyleecan object
  • save_path (str) – path to the folder to save the object
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
as_dict()[source]

Convert this objet in a json seriable dict (can be use in __init__)