Example #1
0
 def __init__(self, tag=dTag, comm=mpi.COMM_WORLD(), create=True):
     self.obj = c_void_p()
     self.tag = tag
     CheckTag(tag)
     if create:
         args = [pointer(self.obj), comm]
         if tag == iTag: lib.ElDistSparseMatrixCreate_i(*args)
         elif tag == sTag: lib.ElDistSparseMatrixCreate_s(*args)
         elif tag == dTag: lib.ElDistSparseMatrixCreate_d(*args)
         elif tag == cTag: lib.ElDistSparseMatrixCreate_c(*args)
         elif tag == zTag: lib.ElDistSparseMatrixCreate_z(*args)
         else: DataExcept()
Example #2
0
 def DistGraph(self,locked=False):
   graph = DG.DistGraph(mpi.COMM_WORLD(),False)
   args = [self.obj,pointer(graph.obj)]
   if locked:
     if   self.tag == iTag: lib.ElDistSparseMatrixLockedDistGraph_i(*args)  
     elif self.tag == sTag: lib.ElDistSparseMatrixLockedDistGraph_s(*args)
     elif self.tag == dTag: lib.ElDistSparseMatrixLockedDistGraph_d(*args)
     elif self.tag == cTag: lib.ElDistSparseMatrixLockedDistGraph_c(*args)
     elif self.tag == zTag: lib.ElDistSparseMatrixLockedDistGraph_z(*args)
     else: DataExcept()
   else:
     if   self.tag == iTag: lib.ElDistSparseMatrixDistGraph_i(*args)  
     elif self.tag == sTag: lib.ElDistSparseMatrixDistGraph_s(*args)
     elif self.tag == dTag: lib.ElDistSparseMatrixDistGraph_d(*args)
     elif self.tag == cTag: lib.ElDistSparseMatrixDistGraph_c(*args)
     elif self.tag == zTag: lib.ElDistSparseMatrixDistGraph_z(*args)
     else: DataExcept()
   return graph
Example #3
0
 def FromComm(cls,comm=mpi.COMM_WORLD(),order=COL_MAJOR):
   g = cls(False)
   lib.ElGridCreate(comm,order,pointer(g.obj))
   return g
Example #4
0
 def __init__(self, comm=mpi.COMM_WORLD(), create=True):
     self.obj = c_void_p()
     if create:
         lib.ElDistGraphCreate(pointer(self.obj), comm)
Example #5
0
 def FromComm(cls, comm=mpi.COMM_WORLD(), order=COL_MAJOR):
     grid = cls(False)
     grid.obj = c_void_p()
     lib.ElGridCreate(comm, order, pointer(grid.obj))
     return grid