Exemple #1
0
def outputFactory(name):
  """
  Factory for material items.
  """
  from pyre.inventory import facility
  from pylith.meshio.OutputSoln import OutputSoln
  return facility(name, family="output_manager", factory=OutputSoln)
    class Inventory(Component.Inventory):

        import pyre.inventory as inv

        func = inv.facility('func', factory = Sin )

        pass
Exemple #3
0
 class Inventory(Script.Inventory):
     import pyre.inventory as inv
     s = inv.str('s', default="abc")
     i = inv.int('i', default=10)
     f = inv.float('f', default=3.0)
     func = inv.facility("func", factory=Sin)
     pass
Exemple #4
0
def faultFactory(name):
  """
  Factory for fault items.
  """
  from pyre.inventory import facility
  from pylith.faults.FaultCohesiveKin import FaultCohesiveKin
  return facility(name, family="fault", factory=FaultCohesiveKin)
def observerFactory(name):
    """
    Factory for output items.
    """
    from pyre.inventory import facility
    from pylith.meshio.OutputConstraint import OutputConstraint
    return facility(name, family="observer", factory=OutputConstraint)
Exemple #6
0
def materialFactory(name):
  """
  Factory for material items.
  """
  from pyre.inventory import facility
  from pylith.materials.ElasticIsotropic3D import ElasticIsotropic3D
  return facility(name, family="material", factory=ElasticIsotropic3D)
def eqsrcFactory(name):
  """
  Factory for earthquake source items.
  """
  from pyre.inventory import facility
  from EqKinSrc import EqKinSrc
  return facility(name, family="eq_kinematic_src", factory=EqKinSrc)
Exemple #8
0
def outputFactory(name):
  """
  Factory for material items.
  """
  from pyre.inventory import facility
  from pylith.meshio.OutputSoln import OutputSoln
  return facility(name, family="output_manager", factory=OutputSoln)
Exemple #9
0
def materialFactory(name):
    """
  Factory for material items.
  """
    from pyre.inventory import facility
    from pylith.materials.ElasticIsotropic3D import ElasticIsotropic3D
    return facility(name, family="material", factory=ElasticIsotropic3D)
Exemple #10
0
def faultFactory(name):
    """
  Factory for fault items.
  """
    from pyre.inventory import facility
    from pylith.faults.FaultCohesiveKin import FaultCohesiveKin
    return facility(name, family="fault", factory=FaultCohesiveKin)
Exemple #11
0
def bcFactory(name):
    """
  Factory for boundary condition items.
  """
    from pyre.inventory import facility
    from pylith.bc.DirichletBC import DirichletBC
    return facility(name, family="boundary_condition", factory=DirichletBC)
Exemple #12
0
def bcFactory(name):
  """
  Factory for boundary condition items.
  """
  from pyre.inventory import facility
  from pylith.bc.DirichletBC import DirichletBC
  return facility(name, family="boundary_condition", factory=DirichletBC)
Exemple #13
0
def eqsrcFactory(name):
    """
  Factory for earthquake source items.
  """
    from pyre.inventory import facility
    from EqKinSrc import EqKinSrc
    return facility(name, family="eq_kinematic_src", factory=EqKinSrc)
Exemple #14
0
    class Inventory(Component.Inventory):

        import pyre.inventory as inv

        # component modules
        import CitcomS.Components.Advection_diffusion as Advection_diffusion
        import CitcomS.Components.Stokes_solver as Stokes_solver

        # components
        from CitcomS.Components.BC import BC
        from CitcomS.Components.Const import Const
        from CitcomS.Components.IC import IC
        from CitcomS.Components.Output import Output
        from CitcomS.Components.Param import Param
        from CitcomS.Components.Phase import Phase
        from CitcomS.Components.Tracer import Tracer
        from CitcomS.Components.Visc import Visc


        tsolver = inv.facility("tsolver",
                               factory=Advection_diffusion.temperature_diffadv)
        vsolver = inv.facility("vsolver",
                               factory=Stokes_solver.incompressibleNewtonian)

        bc = inv.facility("bc", factory=BC)
        const = inv.facility("const", factory=Const)
        ic = inv.facility("ic", factory=IC)
        output = inv.facility("output", factory=Output)
        param = inv.facility("param", factory=Param)
        phase = inv.facility("phase", factory=Phase)
        tracer = inv.facility("tracer", factory=Tracer)
        visc = inv.facility("visc", factory=Visc)

        datadir = inv.str("datadir", default=".")
        datadir_old = inv.str("datadir_old", default=".")

        rayleigh = inv.float("rayleigh", default=1e+05)
        dissipation_number = inv.float("dissipation_number", default=0.0)
        gruneisen = inv.float("gruneisen", default=0.0)
        surfaceT = inv.float("surfaceT", default=0.1)
        #adiabaticT0 = inv.float("adiabaticT0", default=0.4)
        Q0 = inv.float("Q0", default=0.0)

        stokes_flow_only = inv.bool("stokes_flow_only", default=False)

        verbose = inv.bool("verbose", default=False)
        see_convergence = inv.bool("see_convergence", default=True)
Exemple #15
0
def vertexGroupFactory(name):
  """
  Factory for vertex group items.
  """
  from pyre.inventory import facility
  return facility(name, factory=VertexGroup)
Exemple #16
0
def materialFactory(name):
  """
  Factory for material items.
  """
  from pyre.inventory import facility
  return facility(name, factory=Material)
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#

from qchem.fireball.Fireball import Fireball
#from gamess.Gamess import Gamess #wait until Gamess is fully functional
from os import sep
from pyre.applications.Script import Script
from molDynamics.GeneralSettings import GeneralSettings

class QChemApp(Script):
    '''Driver for the quantum chemistry engines'''
    class Inventory(Script.Inventory):
        import pyre.inventory as pinv 
<<<<<<< .mine
        quantumEngine = pinv.facility('quantumEngine', default=Fireball())
=======
        quantumEngine = pinv.facility('quantumEngine', default=Fireball())
#        quantumEngine = pinv.facility('quantumEngine', default='fireball')
>>>>>>> .r21
        quantumEngine.meta['tip'] = 'which quantum engine to use'
<<<<<<< .mine
#        quantumEngine.meta['known_plugins'] = ['fireball','gamess']
=======
#        quantumEngine.meta['known_plugins'] = ['fireball','gamess']
        generalSettings = pinv.facility('General Settings', default = GeneralSettings())
        generalSettings.meta['tip'] = 'working directory, engine executable path, etc.'
>>>>>>> .r21

    def __init__(self,name='QChemApp'):
        Script.__init__(self, name)
Exemple #18
0
 class Inventory(Script.Inventory):
     import pyre.inventory as inv 
     twoAtomInteraction = inv.facility('Two Atom Interaction Db', default=TwoAtomInteraction())
     twoAtomInteraction.meta['tip'] = 'db of twoAtomsInteracting'
     dbRetrieval = inv.facility('Two Atom Interaction Db', default=TwoAtomInteraction())
     dbRetrieval.meta['tip'] = 'db of twoAtomsInteracting'
Exemple #19
0
    class Inventory(Component.Inventory):
        import pyre.inventory as inv
        barostatParameter = inv.float('Barostat Parameter', default=0.005)
        barostatParameter.meta['tip'] = '''barostat parameter to keep 
fluctuations relatively small'''
        coordinateFormat = inv.str('Coordinate Format', default='cartesian')
        coordinateFormat.meta['tip'] = 'what format the coordinates are in'
        coordinateFormat.validator = inv.choice(['cartesian', 'fractional'])
        constantPressureFit = inv.bool('Constant Pressure Fit', default=False)
        constantPressureFit.meta[
            'tip'] = '''keep pressure constant during fitting (fit 
to irreducible cell coordinates and lattice lengths)'''
        constantPressureOptimize = inv.bool('Constant Pressure Optimize',
                                            default=False)
        constantPressureOptimize.meta[
            'tip'] = '''keep pressure constant during optimization'''
        constantVolumeFit = inv.bool('Constant Volume Fit', default=False)
        constantVolumeFit.meta[
            'tip'] = '''keep volume constant during fitting (fit 
to irreducible cell coordinates)'''
        constantVolumeOptimize = inv.bool('Constant Volume Optimize',
                                          default=False)
        constantVolumeOptimize.meta[
            'tip'] = '''keep volume constant during optimization'''
        dispersionInRecipSpace = inv.bool(
            'Calculate Dispersion in Reciprocal Space', default=False)
        dispersionInRecipSpace.meta[
            'tip'] = '''whether to calculate dispersion forces 
partly in reciprocal space'''
        dumpFrequency = inv.float('Dump Frequency', default=1.0)
        dumpFrequency.meta[
            'tip'] = '''frequency at which a restart file is written'''
        engineExecutablePath = inv.str(
            'Engine Executable Path', default='/home/brandon/gulp3.0/Src/gulp')
        engineExecutablePath.meta[
            'tip'] = '''path to the engine\'s executable'''
        ensemble = inv.str('Thermodynamic Ensemble',
                           default='nve',
                           validator=inv.choice(["nve", "nvt", "npt"]))
        ensemble.meta['tip'] = 'thermodynamic ensemble (nve, nvt, npt, ...)'
        equilibrationTime = inv.float('Equilibration Time (ps)', default=0.1)
        equilibrationTime.meta[
            'tip'] = 'equilibration time of the simulation (ps)'
        identifyMolecules = inv.bool('Indentify Molecules', default=False)
        identifyMolecules.meta[
            'tip'] = '''identify molecules based on covalent radii 
and remove intramolecular coloumb interactions'''
        integrator = inv.str('Integrator', default='velocity-verlet')
        integrator.meta['tip'] = 'type of integrator'
        inputDeckName = inv.str('Input Filename', default='gulp.gin')
        inputDeckName.meta['tip'] = '''input file for executable'''
        logFilename = inv.str('Log Filename', default='molDynamics.log')
        logFilename.meta['tip'] = 'name of log file for md run'
        optimizeCell = inv.bool('Optimize Cell', default=False)
        optimizeCell.meta['tip'] = 'whether to optimize the unit cell'
        optimizeCoordinates = inv.bool('Optimize Coordinates', default=False)
        optimizeCoordinates.meta[
            'tip'] = 'whether to optimize the coordinate positions'
        productionTime = inv.float('Production Time (ps)', default=5.0)
        productionTime.meta['tip'] = 'production time of the simulation'
        computeMaterialProperties = inv.bool('Compute Material Properties',
                                             default=False)
        computeMaterialProperties.meta[
            'tip'] = 'whether to print material properties'
        restartFilename = inv.str('Restart Filename',
                                  default='molDynamics.res')
        restartFilename.meta['tip'] = '''restart file for md executable'''
        runType = inv.str('Run Type',default='md',\
                validator=inv.choice(['md', 'restart md', 'optimize', 'fit']))
        runType.meta['tip'] = 'type of run'
        sample = inv.facility('Sample', default=Component('sample', 'sample'))
        sample.meta['importance'] = 10
        sample.meta['tip'] = 'piece of material being measured/simulated'
        sampleFrequency = inv.float('Sample Properties Frequency', default=5.0)
        sampleFrequency.meta[
            'tip'] = '''frequency at which sampled properties are 
written to trajectory and log file'''
        spaceGroup = inv.str('Space Group', default=None)
        spaceGroup.meta['tip'] = 'specify space group symmetry'
        thermostatParameter = inv.float('Thermostat Parameter', default=0.005)
        thermostatParameter.meta['tip'] = '''thermostat parameter to keep 
fluctuations relatively small'''
        timeStep = inv.float('Time step (ps)', default=0.5)
        timeStep.meta['tip'] = 'integration time step (ps)'
        trajectoryFilename = inv.str('Trajectory Filename',
                                     default='molDynamics.xyz')
        trajectoryFilename.meta['tip'] = 'name of trajectory file'
        #trajectoryType = inv.facility('Trajectory Type', default = TrajectoryType())
        trajectoryType = inv.str('Trajectory Type', default='xyz (Gulp)')
        trajectoryType.meta['tip'] = '''type of trajectory file'''
        trajectoryType.validator = inv.choice([
            'xyz (Gulp)', 'netcdf (Mmtk)', 'trajectory (Gulp)',
            'history (Gulp)', 'phonon (Gulp)', 'arc (Gulp)'
        ])
        workingDirectory = inv.str('Working Directory', default='$HOME')
        workingDirectory.meta[
            'tip'] = '''working directory where computation will
 class Inventory(Script.Inventory):
     import pyre.inventory as inv 
     translator = inv.facility('translator', default=Trajectory())
     #translator = inv.facility('translator', default='trajectory')
     translator.meta['tip'] = 'translate a file from one format to another'
     translator.meta['known_plugins'] = ['trajectory']
Exemple #21
0
 class Inventory(Component.Inventory):
     import pyre.inventory as pinv  
     cod = pinv.facility('cod', default=Cod())
     sqlite = pinv.facility('sqlite', default=Sqlite)