Source code for Tests.Methods.Machine.test_desc_dict

import pytest
from os.path import join

from pyleecan.Functions.load import load
from pyleecan.definitions import DATA_DIR
from pyleecan.Classes.MachineIPMSM import MachineIPMSM
from pyleecan.Classes.LamHole import LamHole


[docs]@pytest.mark.SCIM def test_desc_SCIM(): """Check that the description of a SCIM is correct""" SCIM_001 = load(join(DATA_DIR, "Machine", "SCIM_001.json")) desc_dict = SCIM_001.comp_desc_dict() assert len(desc_dict) == 9 assert desc_dict[0]["name"] == "Type" assert desc_dict[0]["value"] == "SCIM" assert desc_dict[1]["name"] == "Zs" assert desc_dict[1]["value"] == 36 assert desc_dict[2]["name"] == "Zr" assert desc_dict[2]["value"] == 28 assert desc_dict[3]["name"] == "p" assert desc_dict[3]["value"] == 3 assert desc_dict[4]["name"] == "Topology" assert desc_dict[4]["value"] == "Inner Rotor" assert desc_dict[5]["name"] == "qs" assert desc_dict[5]["value"] == 3 assert desc_dict[6]["name"] == "Winding" assert desc_dict[6]["value"] == "double layer distributed" assert desc_dict[7]["name"] == "Rwinds" assert desc_dict[7]["value"] == pytest.approx(0.02392, rel=0.1) assert desc_dict[8]["name"] == "Mmachine" assert desc_dict[8]["value"] == pytest.approx(328.1, rel=0.1)
[docs]@pytest.mark.IPMSM def test_desc_IPMSM(): """Check that the description of an IPMSM is correct""" Toyota_Prius = load(join(DATA_DIR, "Machine", "Toyota_Prius.json")) desc_dict = Toyota_Prius.comp_desc_dict() assert len(desc_dict) == 8 assert desc_dict[0]["name"] == "Type" assert desc_dict[0]["value"] == "IPMSM" assert desc_dict[1]["name"] == "Zs" assert desc_dict[1]["value"] == 48 assert desc_dict[2]["name"] == "p" assert desc_dict[2]["value"] == 4 assert desc_dict[3]["name"] == "Topology" assert desc_dict[3]["value"] == "Inner Rotor" assert desc_dict[4]["name"] == "qs" assert desc_dict[4]["value"] == 3 assert desc_dict[5]["name"] == "Winding" assert desc_dict[5]["value"] == "single layer distributed" assert desc_dict[6]["name"] == "Rwinds" assert desc_dict[6]["value"] == pytest.approx(0.0359, rel=0.1) assert desc_dict[7]["name"] == "Mmachine" assert desc_dict[7]["value"] == pytest.approx(33.37, rel=0.1)
[docs]@pytest.mark.outer_rotor def test_desc_Outer_Rotor(): """Check that the description with Outer Rotor is correct""" test_obj = MachineIPMSM() test_obj.rotor = LamHole( is_internal=False, Rint=0.021, Rext=0.075, is_stator=False, L1=0.7, Nrvd=0, Kf1=0.95, ) desc_dict = test_obj.comp_desc_dict() assert desc_dict[3]["name"] == "Topology" assert desc_dict[3]["value"] == "Outer Rotor"