MachineUD (class)

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

class MachineUD(lam_list=-1, is_sync=True, frame=-1, shaft=-1, name='default_machine', desc='', type_machine=1, logger_name='Pyleecan.Machine', init_dict=None, init_str=None)[source]

Bases: pyleecan.Classes.Machine.Machine

User defined Machine with multiple Laminations

VERSION = 1
build_geometry(sym=1, alpha=0, delta=0)

Build the geometry of the machine

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

  • is_simplified (bool) – True to avoid line superposition

Returns

surf_list – list of surfaces needed to draw the lamination

Return type

list

is_synchronous()

Return if a machine is synchronous or not

Parameters

self (MachineUD) – A MachineUD

Returns

is_synchronous – User Defined machine are synchronous according to is_sync

Return type

bool

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 lam_list

List of Lamination

Type

[Lamination]

property is_sync

True if the machine should be handled as a Synchronous machine

Type

bool