pyleecan.Classes.LUTdq module

Method code available at https://github.com/Eomys/pyleecan/tree/master/pyleecan/Methods/Output/LUTdq

class LUTdq(Phi_dqh_mean=None, Phi_dqh_mag=None, paramexplorer_list=- 1, output_list=- 1, xoutput_dict=- 1, nb_simu=0, xoutput_ref=None, xoutput_ref_index=None, simu=- 1, path_result='', geo=- 1, elec=- 1, mag=- 1, struct=- 1, post=- 1, logger_name='Pyleecan.Output', force=- 1, loss=- 1, init_dict=None, init_str=None)[source]

Bases: LUT

Look Up Table class for dq OP matrix

VERSION = 1
get_index_open_circuit()

Get index of open circuit point in output list

Parameters:

self (LUTdq) – a LUTdq object

Returns:

index – Index of open circuit point in output list

Return type:

int

get_L_dqh(Id, Iq, L_endwinding=0, Phi_dqh=None)

Get the total dqh inductance TODO: calculate end-winding inductance from machine

Parameters:
  • self (LUTdq) – a LUTdq object

  • Id (float) – current Id

  • Iq (float) – current Iq

  • L_endwinding (float) – end winding inductance provided by user

  • Phi_dqh (ndarray) – Stator winding dqh flux

Returns:

Ldqh – ddqh inductance

Return type:

ndarray

get_Lm_dqh(Id, Iq, Phi_dqh=None)

Get the magnetizing dqh inductance

Parameters:
  • self (LUTdq) – a LUTdq object

  • Id (float) – current Id

  • Iq (float) – current Iq

  • Phi_dqh (ndarray) – Stator winding dqh flux

Returns:

Lmdqh – magnetizing dqh inductance

Return type:

ndarray

get_Phi_dqh_mag()

Get magnet flux linkage over time in DQH frame

Parameters:

self (LUTdq) – a LUTdq object

Returns:

Phi_dqh_mag – magnets flux linkage in dqh frame (Nt_tot, 3)

Return type:

DataND

get_Phi_dqh_mag_mean()

Get the mean magnets flux linkage in DQH frame

Parameters:

self (LUTdq) – a LUTdq object

Returns:

Phi_dqh_mag_mean – mean magnets flux linkage in dqh frame (3,)

Return type:

ndarray

get_Phi_dqh_mean()

Get the mean value of stator flux along dqh axes

Parameters:

self (LUTdq) – a LUTdq object

Returns:

Phi_dqh_mean – mean flux linkage in dqh frame (N_dq, 3)

Return type:

ndarray

interp_Phi_dqh(Id, Iq)

Interpolate stator winding dqh flux in dq plane

Parameters:
  • self (LUTdq) – a LUTdq object

  • Id (float or ndarray) – current Id

  • Iq (float or ndarray) – current Iq

Returns:

Phi_dqh – interpolated flux in dqh frame (3)

Return type:

float or ndarray

interp_Ploss_dqh(Id, Iq, N0, exclude_models=[])

Interpolate losses in function of Id and Iq and for given speed Meant to be used with SIPMSM/IPMSM machine with LossFEA (to have the correct loss models name)

Parameters:
  • self (LUTdq) – a LUTdq object

  • Id (float or ndarray) – current Id

  • Iq (float or ndarray) – current Iq

  • N0 (float) – rotation speed [rpm]

  • exclude_models (list of strings) – list of LossModel names to exclude from the interpolation

Returns:

Ploss_dqh – interpolated losses function of dq currents (N_OP, 5) - 1st column : Joule losses - 2nd column : stator core losses - 3rd column : magnet losses - 4th column : rotor core losses - 5th column : proximity losses

Return type:

float or ndarray

interp_Tem_rip_dqh(Id, Iq)

Interpolate torque ripple in dq plane

Parameters:
  • self (LUTdq) – a LUTdq object

  • Id (float or ndarray) – current Id

  • Iq (float or ndarray) – current Iq

Returns:

Tem_rip_pp – interpolated flux in dqh frame (3)

Return type:

float or ndarray

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.

copy()[source]

Creates a deepcopy of the object

property Phi_dqh_mean

RMS stator winding flux table in dqh frame (including magnets and currents given by I_dqh)

Type:

ndarray

property Phi_dqh_mag

RMS stator winding flux linkage spectrum in dqh frame including harmonics (only magnets)

Type:

SciDataTool.Classes.DataND.DataND