def __init__(self, dx=1., nx=None, overlap=2, communicator=parallelComm, _BuilderClass=_NonuniformGrid1DBuilder, _RepresentationClass=_Grid1DRepresentation, _TopologyClass=_Grid1DTopology): builder = _BuilderClass() self.args = {'dx': dx, 'nx': nx, 'overlap': overlap} builder.buildGridData([dx], [nx], overlap, communicator) ([self.dx], [self.nx], self.dim, scale, self.globalNumberOfCells, self.globalNumberOfFaces, self.overlap, self.offset, self.numberOfVertices, self.numberOfFaces, self.numberOfCells, self.shape, self.physicalShape, self._meshSpacing, self.occupiedNodes, vertices, faces, cells) = builder.gridData Mesh1D.__init__(self, vertices, faces, cells, communicator=communicator, _RepresentationClass=_RepresentationClass, _TopologyClass=_TopologyClass) self.scale = scale
def _translate(self, vector): """ Test for ticket:298. >>> from fipy import * >>> m = PeriodicGrid1D(nx=2) + [[-1]] >>> print CellVariable(mesh=m, value=m.cellCenters[0]) [-0.5 0.5] """ newCoords = self.vertexCoords + vector newmesh = self.__class__(**self.args) from fipy.meshes.mesh1D import Mesh1D Mesh1D.__init__(newmesh, newCoords, numerix.array(self.faceVertexIDs), self._nonPeriodicCellFaceIDs, communicator=self.communicator) newmesh._makePeriodic() return newmesh
def __init__(self, dx=1., nx=None, overlap=2, communicator=parallelComm, _BuilderClass=_NonuniformGrid1DBuilder, _RepresentationClass=_Grid1DRepresentation, _TopologyClass=_Grid1DTopology): builder = _BuilderClass() self.args = { 'dx': dx, 'nx': nx, 'overlap': overlap } builder.buildGridData([dx], [nx], overlap, communicator) ([self.dx], [self.nx], self.dim, scale, self.globalNumberOfCells, self.globalNumberOfFaces, self.overlap, self.offset, self.numberOfVertices, self.numberOfFaces, self.numberOfCells, self.shape, self.physicalShape, self._meshSpacing, self.occupiedNodes, vertices, faces, cells) = builder.gridData Mesh1D.__init__(self, vertices, faces, cells, communicator=communicator, _RepresentationClass=_RepresentationClass, _TopologyClass=_TopologyClass) self.scale = scale
def _concatenableMesh(self): from fipy.meshes.mesh1D import Mesh1D return Mesh1D(vertexCoords=self.vertexCoords, faceVertexIDs=_Grid1DBuilder.createFaces( self.numberOfVertices), cellFaceIDs=_Grid1DBuilder.createCells(self.nx))