예제 #1
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT+'.')
    modules.append(make_cached_subloader_module(steps.super_load, prefix=INSTRUMENT+'.'))
    modules.append(make_cached_subloader_module(steps.ncnr_load, prefix=INSTRUMENT+'.'))
    
    # Define data types
    refldata = df.DataType(INSTRUMENT+".refldata", ReflData)
    poldata = df.DataType(INSTRUMENT+".poldata", PolarizationData)
    deadtime = df.DataType(INSTRUMENT+".deadtime", DeadTimeData)
    footprint = df.DataType(INSTRUMENT+".footprint.params", FootprintData)

    #import json
    #import os
    #from pkg_resources import resource_string, resource_listdir
    #template_names = [fn for fn in resource_listdir('dataflow', 'templates') if fn.endswith(".json")]
    #templates = [json.loads(resource_string('dataflow', 'templates/' + tn)) for tn in template_names]
    #template_path = resource_path("../dataflow/templates")
    #template_names = [fn for fn in os.listdir(template_path) if fn.endswith(".json")]
    #templates = [json.loads(open(os.path.join(template_path, tn), 'r').read()) for tn in template_names]
    
    # Define instrument
    refl1d = df.Instrument(
        id=INSTRUMENT,
        name='NCNR reflectometer',
        menu=[('steps', modules)],
        datatypes=[refldata, poldata, deadtime, footprint],
        template_defs = templates.get_templates(INSTRUMENT),
        )

    # Register instrument
    df.register_instrument(refl1d)
    return refl1d
예제 #2
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT+'.')

    # Define data types
    sans2d = df.DataType(INSTRUMENT+".sans2d", SansData)
    sans1d = df.DataType(INSTRUMENT+".sans1d", Sans1dData)
    params = df.DataType(INSTRUMENT+".params", Parameters)
    #offset_data = df.DataType(INSTRUMENT+".offset_data", dict)
    
    # Define instrument
    sans = df.Instrument(
        id=INSTRUMENT,
        name='NCNR SANS',
        menu=[('steps', modules)],
        datatypes=[sans2d, sans1d, params],
        template_defs = templates.get_templates(INSTRUMENT),
        )

    # Register instrument
    df.register_instrument(sans)
    return sans
예제 #3
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT + '.')

    # Define data types
    sans2d = df.DataType(INSTRUMENT + ".sans2d", SansData)
    sans1d = df.DataType(INSTRUMENT + ".sans1d", Sans1dData)
    params = df.DataType(INSTRUMENT + ".params", Parameters)
    #offset_data = df.DataType(INSTRUMENT+".offset_data", dict)

    # Define instrument
    sans = df.Instrument(
        id=INSTRUMENT,
        name='NCNR SANS',
        menu=[('steps', modules)],
        datatypes=[sans2d, sans1d, params],
        template_defs=templates.get_templates(INSTRUMENT),
    )

    # Register instrument
    df.register_instrument(sans)
    return sans
예제 #4
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT+'.')

    # Define data types
    ospec2d = df.DataType(INSTRUMENT+".ospec2d", FilterableMetaArray)
    ospec1d = df.DataType(INSTRUMENT+".ospec1d", FilterableMetaArray)
    params = df.DataType(INSTRUMENT+".params", Parameters)
    #offset_data = df.DataType(INSTRUMENT+".offset_data", dict)
    
    # Define instrument
    ospec = df.Instrument(
        id=INSTRUMENT,
        name='NCNR offspecular',
        menu=[('steps', modules)],
        datatypes=[ospec2d, ospec1d, params],
        template_defs = templates.get_templates(INSTRUMENT),
        )

    # Register instrument
    df.register_instrument(ospec)
    return ospec
예제 #5
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT+'.')

    # Define data types
    dcsraw = df.DataType(INSTRUMENT+".raw", RawData)
    eqdata = df.DataType(INSTRUMENT+".eq", EQData)
    ef2thetadata = df.DataType(INSTRUMENT+".ef2th", EfTwoThetaData)
    eq1ddata = df.DataType(INSTRUMENT+".eq1d", DCS1dData)
    #params = df.DataType(INSTRUMENT+".params", Parameters)

    # Define instrument
    dcs = df.Instrument(
        id=INSTRUMENT,
        name='NCNR Disk Chopper Spectrometer',
        menu=[('steps', modules)],
        datatypes=[dcsraw, eqdata, eq1ddata, ef2thetadata], # params],
        template_defs=templates.get_templates(INSTRUMENT),
        )

    # Register instrument
    df.register_instrument(dcs)
    return dcs
예제 #6
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT + '.')

    # Define data types
    ospec2d = df.DataType(INSTRUMENT + ".ospec2d", FilterableMetaArray)
    ospec1d = df.DataType(INSTRUMENT + ".ospec1d", FilterableMetaArray)
    ospecnd = df.DataType(INSTRUMENT + ".ospecnd", FilterableMetaArray)
    params = df.DataType(INSTRUMENT + ".params", Parameters)
    #offset_data = df.DataType(INSTRUMENT+".offset_data", dict)

    # Define instrument
    ospec = df.Instrument(
        id=INSTRUMENT,
        name='NCNR offspecular',
        menu=[('steps', modules)],
        datatypes=[ospec2d, ospecnd, params],
        template_defs=templates.get_templates(INSTRUMENT),
    )

    # Register instrument
    df.register_instrument(ospec)
    return ospec
예제 #7
0
def define_instrument():
    # Define modules
    modules = make_modules(steps.ALL_ACTIONS, prefix=INSTRUMENT + '.')
    modules.append(
        make_cached_subloader_module(steps.super_load,
                                     prefix=INSTRUMENT + '.'))
    modules.append(
        make_cached_subloader_module(steps.ncnr_load, prefix=INSTRUMENT + '.'))

    # Define data types
    refldata = df.DataType(INSTRUMENT + ".refldata", ReflData)
    poldata = df.DataType(INSTRUMENT + ".poldata", PolarizationData)
    deadtime = df.DataType(INSTRUMENT + ".deadtime", DeadTimeData)
    footprint = df.DataType(INSTRUMENT + ".footprint.params", FootprintData)
    flux = df.DataType(INSTRUMENT + ".flux.params", FluxData)

    #import json
    #import os
    #from pkg_resources import resource_string, resource_listdir
    #template_names = [fn for fn in resource_listdir('dataflow', 'templates') if fn.endswith(".json")]
    #templates = [json.loads(resource_string('dataflow', 'templates/' + tn)) for tn in template_names]
    #template_path = resource_path("../dataflow/templates")
    #template_names = [fn for fn in os.listdir(template_path) if fn.endswith(".json")]
    #templates = [json.loads(open(os.path.join(template_path, tn), 'r').read()) for tn in template_names]

    # Define instrument
    refl1d = df.Instrument(
        id=INSTRUMENT,
        name='NCNR reflectometer',
        menu=[('steps', modules)],
        datatypes=[refldata, poldata, deadtime, footprint, flux],
        template_defs=templates.get_templates(INSTRUMENT),
    )

    # Register instrument
    df.register_instrument(refl1d)
    return refl1d