Exemplo n.º 1
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    from pylith.mpi.Communicator import mpi_comm_world
    comm = mpi_comm_world()

    if 0 == comm.rank:
      self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveKin.quadrature(self, self.faultQuadrature)

    for eqsrc in self.eqsrcs.components():
      eqsrc.preinitialize()
    ModuleFaultCohesiveKin.eqsrcs(self, self.eqsrcs.inventory.facilityNames(),
                                  self.eqsrcs.components())

    for name in self.eqsrcs.inventory.facilityNames():
      self.availableFields['vertex']['info'] += ["final_slip_%s" % name]
      self.availableFields['vertex']['info'] += ["slip_time_%s" % name]

    if mesh.dimension() == 2:
      self.availableFields['vertex']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['vertex']['info'] += ["strike_dir",
                                                 "dip_dir"]
    return
Exemplo n.º 2
0
 def preinitialize(self, mesh):
   """
   Do pre-initialization setup.
   """
   BoundaryCondition.preinitialize(self, mesh)
   Integrator.preinitialize(self, mesh)
   return
Exemplo n.º 3
0
    def preinitialize(self, mesh):
        """
    Do pre-initialization setup.
    """
        from pylith.mpi.Communicator import mpi_comm_world
        comm = mpi_comm_world()

        if 0 == comm.rank:
            self._info.log("Pre-initializing fault '%s'." % self.label())
        FaultCohesive.preinitialize(self, mesh)
        Integrator.preinitialize(self, mesh)

        ModuleFaultCohesiveDyn.quadrature(self, self.faultQuadrature)

        if mesh.dimension() == 2:
            self.availableFields['vertex']['info'] += ["strike_dir"]
        elif mesh.dimension() == 3:
            self.availableFields['vertex']['info'] += ["strike_dir", "dip_dir"]

        if not isinstance(self.tract, NullComponent):
            self.tract.preinitialize(mesh)
            self.availableFields['vertex'][
                'info'] += self.tract.availableFields['vertex']['info']

        self.availableFields['vertex']['info'] += \
            self.friction.availableFields['vertex']['info']
        self.availableFields['vertex']['data'] += \
            self.friction.availableFields['vertex']['data']
        return
Exemplo n.º 4
0
 def preinitialize(self, mesh):
     """
 Do pre-initialization setup.
 """
     BoundaryCondition.preinitialize(self, mesh)
     Integrator.preinitialize(self, mesh)
     return
Exemplo n.º 5
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    from pylith.mpi.Communicator import mpi_comm_world
    comm = mpi_comm_world()    

    if 0 == comm.rank:
      self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveDyn.quadrature(self, self.faultQuadrature)

    if mesh.dimension() == 2:
      self.availableFields['vertex']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['vertex']['info'] += ["strike_dir",
                                                 "dip_dir"]

    if not isinstance(self.tract, NullComponent):
      self.tract.preinitialize(mesh)
      self.availableFields['vertex']['info'] += self.tract.availableFields['vertex']['info']

    self.availableFields['vertex']['info'] += \
        self.friction.availableFields['vertex']['info']
    self.availableFields['vertex']['data'] += \
        self.friction.availableFields['vertex']['data']
    return
Exemplo n.º 6
0
    def preinitialize(self, mesh):
        """
    Do pre-initialization setup.
    """
        from pylith.mpi.Communicator import mpi_comm_world
        comm = mpi_comm_world()

        if 0 == comm.rank:
            self._info.log("Pre-initializing fault '%s'." % self.label())
        FaultCohesive.preinitialize(self, mesh)
        Integrator.preinitialize(self, mesh)

        ModuleFaultCohesiveKin.quadrature(self, self.faultQuadrature)

        for eqsrc in self.eqsrcs.components():
            eqsrc.preinitialize()
        ModuleFaultCohesiveKin.eqsrcs(self,
                                      self.eqsrcs.inventory.facilityNames(),
                                      self.eqsrcs.components())

        for name in self.eqsrcs.inventory.facilityNames():
            self.availableFields['vertex']['info'] += ["final_slip_%s" % name]
            self.availableFields['vertex']['info'] += ["slip_time_%s" % name]

        if mesh.dimension() == 2:
            self.availableFields['vertex']['info'] += ["strike_dir"]
        elif mesh.dimension() == 3:
            self.availableFields['vertex']['info'] += ["strike_dir", "dip_dir"]
        return
Exemplo n.º 7
0
 def preinitialize(self, mesh):
     """
 Do pre-initialization setup.
 """
     BoundaryCondition.preinitialize(self, mesh)
     Integrator.preinitialize(self, mesh)
     self.bcQuadrature.preinitialize(mesh.coordsys().spaceDim())
     self.quadrature(self.bcQuadrature)
     self.createSubMesh(mesh)
     return
Exemplo n.º 8
0
 def preinitialize(self, mesh):
   """
   Do pre-initialization setup.
   """
   BoundaryCondition.preinitialize(self, mesh)
   Integrator.preinitialize(self, mesh)
   self.bcQuadrature.preinitialize(mesh.coordsys().spaceDim())
   self.quadrature(self.bcQuadrature)
   self.createSubMesh(mesh)
   return
Exemplo n.º 9
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveTract.quadrature(self, self.faultQuadrature)

    if mesh.dimension() == 2:
      self.availableFields['cell']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['cell']['info'] += ["strike_dir",
                                               "dip_dir"]

    return
Exemplo n.º 10
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveTract.quadrature(self, self.faultQuadrature)

    if mesh.dimension() == 2:
      self.availableFields['cell']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['cell']['info'] += ["strike_dir",
                                               "dip_dir"]

    return
Exemplo n.º 11
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    BoundaryCondition.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)
    self.bcQuadrature.preinitialize(mesh.coordsys().spaceDim())
    self.quadrature(self.bcQuadrature)
    self.createSubMesh(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['cell']['info'] += fields
    return
Exemplo n.º 12
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    from pylith.mpi.Communicator import mpi_comm_world
    comm = mpi_comm_world()

    if 0 == comm.rank:
      self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveImpulses.quadrature(self, self.faultQuadrature)

    if mesh.dimension() == 2:
      self.availableFields['vertex']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['vertex']['info'] += ["strike_dir",
                                                 "dip_dir"]
    return
Exemplo n.º 13
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    BoundaryCondition.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)
    self.bcQuadrature.preinitialize(mesh.coordsys().spaceDim())
    self.quadrature(self.bcQuadrature)
    self.createSubMesh(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['cell']['info'] += fields
    return
Exemplo n.º 14
0
  def preinitialize(self, mesh):
    """
    Do pre-initialization setup.
    """
    from pylith.mpi.Communicator import mpi_comm_world
    comm = mpi_comm_world()

    if 0 == comm.rank:
      self._info.log("Pre-initializing fault '%s'." % self.label())
    FaultCohesive.preinitialize(self, mesh)
    Integrator.preinitialize(self, mesh)

    ModuleFaultCohesiveImpulses.quadrature(self, self.faultQuadrature)

    if mesh.dimension() == 2:
      self.availableFields['vertex']['info'] += ["strike_dir"]
    elif mesh.dimension() == 3:
      self.availableFields['vertex']['info'] += ["strike_dir",
                                                 "dip_dir"]
    return