示例#1
0
    class Inventory(base.Inventory):

        import pyre.inventory

        #properties
        ncount = pyre.inventory.float('ncount', default=10000)
        ncount.meta['tip'] = 'number of total neutrons generated by source'

        outputdir = pyre.inventory.str('output-dir', default='out')
        outputdir.meta['tip'] = 'output directory'

        overwrite_datafiles = pyre.inventory.bool('overwrite-datafiles',
                                                  default=False)
        overwrite_datafiles.meta['tip'] = 'overwrite data files?'

        buffer_size = pyre.inventory.int('buffer_size', default=0)
        buffer_size.meta[
            'tip'] = 'size of neutron buffer. This is for optimizing the preformance of the simulation. When it is too large, it will occupy too much memory. When it is too small, the simulation will be slow. If you are not sure, please just leave it unset so that the default value will be used.'

        from List import List
        sequence = List('sequence', default='')
        sequence.meta[
            'tip'] = 'sequence of neutron components in this instrument'

        multiple_scattering = pyre.inventory.bool('multiple-scattering',
                                                  default=False)
        multiple_scattering.meta['tip'] = 'if true, enable multiple scattering'

        #facilities

        #geometer. this is a place holder. should derive from Geometer
        #to create a new Geometer for the specific instrument.
        from Geometer import Geometer
        geometer = pyre.inventory.facility('geometer', default=Geometer())
        geometer.meta['tip'] = 'geometer of instrument'

        # tracer
        from NoNeutronTracer import NoNeutronTracer
        from NeutronTracerFacility import NeutronTracerFacility
        tracer = NeutronTracerFacility('tracer', default=NoNeutronTracer())

        # this option overrides "dumpconfiguration" to provide an iinterface
        # easier to use
        dumppml = pyre.inventory.str('dump-pml', default='')
        dumppml.meta[
            'tip'] = "filename of output configuration (pml) file. if empty, ignored. if the given value is 'yes' or 'on', a default filename will be used."

        # XXX: to be removed
        # for backward compatibility
        dump_instrument = pyre.inventory.bool('dump-instrument')

        # dump registry to pkl file
        # this is for advanced users. the saved registry can be compared
        # to another saved registry, for example.
        dumpregistry = pyre.inventory.bool('dump-registry', default=False)
        dumpregistry.meta[
            'tip'] = 'if true, dump the pyre registry to a pkl file'
        pass  # end of Inventory
示例#2
0
def geometer(*args, **kwds):
    'factory constructs a geometer'
    from Geometer import Geometer
    return Geometer(*args, **kwds)
示例#3
0
def geometer(*args, **kwds):
    from Geometer import Geometer
    return Geometer(*args, **kwds)