def test_findparts(self): g=vdss.opendss(self.file1) gx=vdss.findparts(g, a='EX1') self.assertTrue(gx==None) gx=vdss.findparts(g, a='VISTA-EX1') self.assertTrue(len(gx)>0) gx=vdss.findparts(g, a='EX1',exact=False) self.assertTrue(len(gx)>0)
def get_bpart_list(group,cpart): a = [] g = vdss.findparts(group,c=cpart) for ref in g: p = ref.pathname a.append(p.getPart(p.B_PART)) return list(set(a))
def get_ref_list(compare_mode,dss_group0,dss_group1,output_values): if compare_mode=='1': use_group = dss_group0 else: use_group = dss_group1 new_output_values = [] for item in output_values: if item[-1]=='*': look4bpart = item[0:-2] g = vdss.findparts(use_group,b=look4bpart) for ref in g: new_output_values.append(get_output_name_of_ref(ref).encode('ascii')) elif item[0]=='*': look4cpart = item[2:] g = vdss.findparts(use_group,c=look4cpart) for ref in g: new_output_values.append(get_output_name_of_ref(ref).encode('ascii')) else: new_output_values.append(item) return select_distinct_wt_sort(new_output_values)
def net_dicu(dicufile,nodes): dicu = opendss(dicufile) sum=None for n in nodes: matches=findparts(dicu,b=str(n)) if matches==None: print 'No matching B part of %s'%n else: for d in matches: if sum==None: sum=d else: cpart = d.getPathname().getPart(Pathname.C_PART) if cpart == 'DRAIN-FLOW': sum=sum - d else: sum=sum + d return sum
def net_dicu(dicufile, nodes): dicu = opendss(dicufile) sum = None for n in nodes: matches = findparts(dicu, b=str(n)) if matches == None: print 'No matching B part of %s' % n else: for d in matches: if sum == None: sum = d else: cpart = d.getPathname().getPart(Pathname.C_PART) if cpart == 'DRAIN-FLOW': sum = sum - d else: sum = sum + d return sum