MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / N2P

Method N2P

python/ngs2petsc.py:71–80  ·  view source on GitHub ↗
(self, ngs_vector, psc_vector=None)

Source from the content-addressed store, hash-verified

69 return ngs.la.CreateParallelVector(self.pardofs)
70
71 def N2P (self, ngs_vector, psc_vector=None):
72 if psc_vector is None:
73 psc_vector = psc.Vec().createMPI(self.nglob*self.es, bsize=self.es, comm=MPI.COMM_WORLD)
74 ngs_vector.Distribute()
75 locvec = psc.Vec().createWithArray(ngs_vector.FV().NumPy(), comm=MPI.COMM_SELF)
76 if "n2p_scat" not in self.__dict__:
77 self.n2p_scat = psc.Scatter().create(locvec, self.isetlocfree, psc_vector, self.iset)
78 psc_vector.set(0)
79 self.n2p_scat.scatter (locvec, psc_vector, addv=psc.InsertMode.ADD) # 1 max, 2 sum+keep
80 return psc_vector
81
82 def P2N (self, psc_vector, ngs_vector=None):
83 if ngs_vector is None:

Callers 3

MultMethod · 0.80
MultTransMethod · 0.80
solveMethod · 0.80

Calls 3

DistributeMethod · 0.80
VecMethod · 0.45
FVMethod · 0.45

Tested by

no test coverage detected