pyleecan.Classes.Shaft module¶
Method code available at https://github.com/Eomys/pyleecan/tree/master/pyleecan/Methods/Machine/Shaft
- class Shaft(Lshaft=0.442, mat_type=- 1, Drsh=0.045, init_dict=None, init_str=None)[source]¶
Bases:
FrozenClass
machine shaft
- VERSION = 1¶
- build_geometry(sym=1, alpha=0, delta=0)¶
Build the geometry of the shaft
- Parameters:
self (Shaft) – Shaft Object
sym (int) – Symmetry factor (1= full machine, 2= half of the machine…)
alpha (float) – Angle for rotation [rad]
delta (complex) – Complex value for translation
- Returns:
surf_list – list of surfaces needed to draw the lamination
- Return type:
list
- comp_mass()¶
Computation of the Shaft mass
- Parameters:
self (Shaft) – A Shaft object
- Returns:
M_shaft – Mass of the Shaft [kg]
- Return type:
float
- plot(fig=None, ax=None, sym=1, alpha=0, delta=0, is_edge_only=False, edgecolor=None, is_show_fig=True)¶
Plot the Shaft in a matplotlib fig
- Parameters:
self (Shaft) – A Shaft 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
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
- Returns:
fig (Matplotlib.figure.Figure) – Figure containing the plot
ax (Matplotlib.axes.Axes object) – Axis containing the plot
- 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 Lshaft¶
length of the rotor shaft [m] (used for weight & cost estimation only)
- Type:
float
- Min:
0
- property mat_type¶
Shaft’s Material
- Type:
Material
- property Drsh¶
diameter of the rotor shaft [m], used to estimate bearing diameter for friction losses
- Type:
float
- Min:
0