pyleecan.Classes.LamSlotMag module¶
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, skew=None, bore=None, yoke=None, init_dict=None, init_str=None)[source]¶
Bases:
LamSlot
Lamination with Slot for Magnets
- VERSION = 1¶
- build_geometry(is_magnet=True, sym=1, alpha=0, delta=0, is_circular_radius=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_circular_radius (bool) – True to add surfaces to “close” the Lamination radii
- 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
- 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 dictionary (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 dictionary (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 dictionary (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, edgecolor=None, is_add_arrow=False, is_show_fig=True, win_title=None, is_legend=True, is_winding_connection=False)¶
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
edgecolor – Color of the edges if is_edge_only=True
is_show_fig (bool) – To call show at the end of the method
win_title (str) – Window title
is_legend (bool) – True to add the legend
is_winding_connection (bool) – True to display winding connections (not used)
- Returns:
fig (Matplotlib.figure.Figure) – Figure containing the plot
ax (Matplotlib.axes.Axes object) – Axis containing the plot
- 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
- get_magnet_number(sym=1)¶
Return the number of magnet on the Lamination
- Parameters:
self (LamSlotMag) – A LamSlotMag object
sym (int) – Symmetry factor (1= full machine, 2= half of the machine…)
- Returns:
N_mag – Number of magnets on the lamination
- Return type:
int
- set_Lmag(value)¶
Set the Length of the magnet
- Parameters:
self (LamSlotMag) – A LamSlotMag object
value (float) – Value to set [m]
- 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.
- property magnet¶
Magnet of the lamination
- Type:
Magnet