コード例 #1
0
    def test_build_geometry_one_hole_no_mag(self):
        """check that curve_list is correct (one hole no mag)
        """
        test_obj = LamHole(is_internal=True, Rext=0.075)
        test_obj.hole = list()
        test_obj.hole.append(
            HoleM50(
                Zh=8,
                W0=52e-3,
                W1=0,
                W2=1e-3,
                W3=1e-3,
                W4=20.6e-3,
                H0=17.3e-3,
                H1=1.25e-3,
                H2=0.5e-3,
                H3=6.8e-3,
                H4=0,
                magnet_0=None,
                magnet_1=None,
            )
        )

        result = test_obj.hole[0].build_geometry()
        self.assertEqual(len(result), 1)
        for surf in result:
            self.assertTrue(type(surf) is SurfLine)

        self.assertEqual(result[0].label[:4], "Hole")
        self.assertEqual(result[0].label[-9:], "_R0_T0_S0")
        self.assertEqual(len(result[0].line_list), 16)
コード例 #2
0
    def test_build_geometry_two_hole_no_mag(self):
        """check that curve_list is correct (two holes no magnet)
        """
        test_obj = LamHole(is_internal=True, Rext=0.075)
        test_obj.hole = list()
        test_obj.hole.append(
            HoleM50(
                Zh=8,
                W0=50e-3,
                W1=2e-3,
                W2=1e-3,
                W3=1e-3,
                W4=20.6e-3,
                H0=17.3e-3,
                H1=1.25e-3,
                H2=0.5e-3,
                H3=6.8e-3,
                H4=1e-3,
                magnet_0=None,
                magnet_1=None,
            ))

        result = test_obj.hole[0].build_geometry()

        self.assertEqual(len(result), 2)
        for surf in result:
            self.assertTrue(type(surf) is SurfLine)

        self.assertEqual(result[0].label, "Air")
        self.assertEquals(len(result[0].line_list), 11)

        self.assertEqual(result[1].label, "Air")
        self.assertEquals(len(result[1].line_list), 11)
コード例 #3
0
    def test_build_geometry_two_hole_with_magnet(self):
        """check that curve_list is correct (one hole)
        """
        test_obj = LamHole(is_internal=True, is_stator=False, Rext=0.075)
        test_obj.hole = list()
        test_obj.hole.append(
            HoleM50(
                Zh=8,
                W0=50e-3,
                W1=2e-3,
                W2=1e-3,
                W3=1e-3,
                W4=20.6e-3,
                H0=17.3e-3,
                H1=1.25e-3,
                H2=0.5e-3,
                H3=6.8e-3,
                H4=1e-3,
                magnet_0=MagnetType10(Wmag=0.01, Hmag=0.02),
            )
        )

        result = test_obj.hole[0].build_geometry()
        self.assertEqual(len(result), 6)
        for surf in result:
            self.assertTrue(type(surf) is SurfLine)

        self.assertEqual(result[0].label[:5], "Hole_")
        self.assertEqual(result[0].label[-9:], "_R0_T0_S0")
        self.assertEqual(len(result[0].line_list), 7)

        self.assertEqual(result[1].label[:11], "HoleMagnet_")
        self.assertEqual(result[1].label[-11:], "_N_R0_T0_S0")
        self.assertEqual(len(result[1].line_list), 6)

        self.assertEqual(result[2].label[:5], "Hole_")
        self.assertEqual(result[2].label[-9:], "_R0_T1_S0")
        self.assertEqual(len(result[2].line_list), 4)

        self.assertEqual(result[3].label[:5], "Hole_")
        self.assertEqual(result[3].label[-9:], "_R0_T2_S0")
        self.assertEqual(len(result[3].line_list), 4)

        self.assertEqual(result[4].label[:11], "HoleMagnet_")
        self.assertEqual(result[4].label[-11:], "_N_R0_T1_S0")
        self.assertEqual(len(result[4].line_list), 6)

        self.assertEqual(result[5].label[:5], "Hole_")
        self.assertEqual(result[5].label[-9:], "_R0_T3_S0")
        self.assertEqual(len(result[5].line_list), 7)
コード例 #4
0
    def test_build_geometry_one_hole_with_magnet(self):
        """check that curve_list is correct (one hole)
        """
        test_obj = LamHole(is_internal=True, Rext=0.075)
        test_obj.hole = list()
        test_obj.hole.append(
            HoleM50(
                Zh=8,
                W0=52e-3,
                W1=0,
                W2=1e-3,
                W3=1e-3,
                W4=20.6e-3,
                H0=17.3e-3,
                H1=1.25e-3,
                H2=0.5e-3,
                H3=6.8e-3,
                H4=0,
                magnet_0=MagnetType10(Wmag=0.01, Hmag=0.02),
            ))

        result = test_obj.hole[0].build_geometry()
        self.assertEqual(len(result), 5)
        for surf in result:
            self.assertTrue(type(surf) is SurfLine)

        self.assertEqual(result[0].label, "Air")
        self.assertEquals(len(result[0].line_list), 5)

        self.assertEqual(result[1].label, "MagnetS_N_R0_T0_S0")
        self.assertEquals(len(result[1].line_list), 6)

        self.assertEqual(result[2].label, "Air")
        self.assertEquals(len(result[2].line_list), 6)

        self.assertEqual(result[3].label, "MagnetS_N_R0_T1_S0")
        self.assertEquals(len(result[3].line_list), 6)

        self.assertEqual(result[4].label, "Air")
        self.assertEquals(len(result[4].line_list), 5)
コード例 #5
0
 def test_comp_surface(self):
     """Check that the computation of the slot surface is correct
     """
     test_obj = LamHole(is_internal=True, Rext=0.075)
     test_obj.hole = list()
     test_obj.hole.append(
         HoleM50(
             Zh=8,
             W0=50e-3,
             W1=2e-3,
             W2=1e-3,
             W3=1e-3,
             W4=20.6e-3,
             H0=17.3e-3,
             H1=1.25e-3,
             H2=0.5e-3,
             H3=6.8e-3,
         ))
     result = test_obj.hole[0].comp_surface()
     a = result
     b = 3.77977e-04
     self.assertAlmostEqual((a - b) / a, 0, delta=DELTA)
コード例 #6
0
from pyleecan.Classes.LamHole import LamHole
from pyleecan.Classes.HoleM51 import HoleM51
from numpy import exp, arcsin, ndarray, pi

# For AlmostEqual
DELTA = 1e-4

HoleM51_test = list()

test_obj = LamHole(Rint=45e-3 / 2,
                   Rext=81.5e-3,
                   is_stator=False,
                   is_internal=True,
                   L1=0.9)
test_obj.hole = list()
test_obj.hole.append(
    HoleM51(
        Zh=8,
        W0=0.016,
        W1=pi / 6,
        W2=0.004,
        W3=0.01,
        W4=0.002,
        W5=0.01,
        W6=0.002,
        W7=0.01,
        H0=0.01096,
        H1=0.0015,
        H2=0.0055,
    ))
コード例 #7
0
ファイル: CEFC_Lam.py プロジェクト: BoGuo86/pyleecan
    Rext=80.2e-3,
    Rint=55.32e-3,
    L1=0.08382,
    Kf1=0.95,
    is_internal=True,
    is_stator=False,
    Nrvd=0,
)
rotor.hole = [
    HoleM50(
        Zh=8,
        H0=0.01096,
        H1=0.0015,
        H2=0.001,
        H3=0.0065,
        H4=0,
        W0=0.042,
        W1=0,
        W2=0,
        W3=0.014,
        W4=0.0189,
    )
]
rotor.hole[0].magnet_0.type_magnetization = 1
rotor.hole[0].magnet_1.type_magnetization = 1
shaft = Shaft(Lshaft=0.1, Drsh=0.11064)
frame = None

# Set Materials
stator.mat_type = M400_50A
rotor.mat_type = M400_50A
コード例 #8
0
)
stator.winding.conductor = CondType12(
    Wwire=1.0 * mm,  # single wire without isolation
    Wins_wire=0.1 * mm,  # single wire isolation thickness
    Wins_cond=1.3 * mm,  # winding coil isolation
    Nwppc=1,  # number of strands in parallel per coil
    Kwoh=1,
)

# Rotor setup
rotor = LamHole(Rint=59 * mm / 2,
                Rext=158 * mm / 2,
                is_internal=True,
                is_stator=False,
                L1=stator.L1)
rotor.hole = list()
rotor.hole.append(
    HoleM50(
        Zh=8,
        W0=43.4 * mm,
        W1=3.0 * mm,
        W2=1.0 * mm,
        W3=10.0 * mm,
        W4=22.0 * mm,
        H0=20.0 * mm,
        H1=2.0 * mm,
        H2=2.5 * mm,
        H3=6.0 * mm,
        H4=0.8 * mm,
    ))
"""