def _configure(self): """ Setup members using inventory. """ DirichletBC._configure(self) self.output = self.inventory.output return
def verifyConfiguration(self): """ Verify compatibility of configuration. """ logEvent = "%sverify" % self._loggingPrefix self._eventLogger.eventBegin(logEvent) DirichletBC.verifyConfiguration(self) self.output.verifyConfiguration(self.mesh()) self._eventLogger.eventEnd(logEvent) return
def __init__(self, name="dirichletboundary"): """ Constructor. """ DirichletBC.__init__(self, name) self._loggingPrefix = "DiBC " self.availableFields = \ {'vertex': \ {'info': [], 'data': []}, 'cell': \ {'info': [], 'data': []}} return
def preinitialize(self, mesh): """ Do pre-initialization setup. """ DirichletBC.preinitialize(self, mesh) self.output.preinitialize(self) fields = [] if not isinstance(self.inventory.dbInitial, NullComponent): fields += ["initial_value"] if not isinstance(self.inventory.dbRate, NullComponent): fields += ["rate_of_change", "rate_start_time"] if not isinstance(self.inventory.dbChange, NullComponent): fields += ["change_in_value", "change_start_time"] self.availableFields['vertex']['info'] += fields return
def initialize(self, totalTime, numTimeSteps, normalizer): """ Initialize DirichletBoundary boundary condition. """ logEvent = "%sinit" % self._loggingPrefix self._eventLogger.eventBegin(logEvent) from pylith.mpi.Communicator import mpi_comm_world comm = mpi_comm_world() if 0 == comm.rank: self._info.log("Initializing Dirichlet boundary '%s'." % self.label()) DirichletBC.initialize(self, totalTime, numTimeSteps, normalizer) self.output.initialize(normalizer) self.output.writeInfo() self._eventLogger.eventEnd(logEvent) return