Пример #1
0
    def test_AddStation(self):
        n = Network()
        stationid = "station"
        stationid3 = "station3"
        companyid = "company"
        divisionid = "division"

        s = Station(stationid)
        s2 = Station(stationid)

        n.AddStation(s)
        with self.assertRaises(Exception):
            n.AddStation(s2)

        n.AddStationByDef(stationid3, companyid, divisionid)

        self.assertEqual(n.Stations[stationid].ID, stationid)
        self.assertEqual(n.Companies[""].Stations[stationid].ID, stationid)
        self.assertEqual(n.Companies[""].Divisions[""].Stations[stationid].ID, stationid)
        self.assertEqual(s.Company.ID, "")
        self.assertEqual(s.Division.ID, "")
        self.assertEqual(n.Stations[stationid3].ID, stationid3)
        self.assertEqual(n.Companies[companyid].Stations[stationid3].ID, stationid3)
        self.assertEqual(n.Companies[companyid].Divisions[divisionid].Stations[stationid3].ID, stationid3)
        self.assertEqual(n.Stations[stationid3].Company.ID, companyid)
        self.assertEqual(n.Stations[stationid3].Division.ID, divisionid)

        return
Пример #2
0
    def testNetworkToDEMSimple(self):

        st1 = "Home"
        st2 = "Grid"
        kv = "115"
        nd1 = "HomeNode"
        nd2 = "GridNode"
        sgen = "SolarGen"
        ggen = "GridGen"
        ld1 = "HomeLoad"

        n = Network()

        #HOME
        n.AddStationByDef(st1)
        n.AddNodeByDef(st1, kv, nd1)
        sg = Unit(st1, kv, nd1, sgen, "", 10, 0, 0, 0, 1, False, 0)
        ld = Load(st1, kv, nd1, ld1, "", 13, 0, 1)
        n.AddDevice(sg)
        n.AddDevice(ld)

        #GRID
        n.AddStationByDef(st2)
        n.AddNodeByDef(st2, kv, nd2)
        gg = Unit(st2, kv, nd2, ggen, "", 1e6, 0, 0, 0, 1, False, 0)
        n.AddDevice(gg)

        #LINE
        br = Branch(st1, kv, nd1, st2, kv, nd2, "Line", "", True, 0, 0, "1",
                    RatingSet(25, 25, 25), RatingSet(25, 25, 25))
        n.AddNodeConnector(br)

        gp = NetworkToDEMSimple(n)
        gp.init_problem()
        gp.problem.solve()
        print(gp.results.summary())
Пример #3
0
    def ImportStations(self, network: Network):

        filename = StationCSVStream.DefaultFileName
        if FileType.Station in self.CSVFileNames:
            filename = self.CSVFileNames[FileType.Station]

        propertymap = StationCSVStream.DefaultPropertyToFileMap
        if FileType.Station in self.CSVPropertyMaps:
            propertymap = self.CSVPropertyMaps[FileType.Station]

        with StationCSVStream(filename, propertymap, self.Encoding) as csv:
            i = 0
            d = 0
            for Station in csv:
                network.AddStationByDef(csv.getStationName(),
                                        csv.getCompanyName(),
                                        csv.getDivisionName())
                i += 1
                while i > ((d + 1) * .10 * len(csv)):
                    print("", end='.')
                    d += 1

        return