示例#1
0
            # Perform some random transformations of the graded potential neuron
            # data:
            # temp = np.random.randint(0, 5, self.N_in_gpot)
            # for i in in_gpot_dict.keys():
            #     temp += np.random.randint(-1, 1, 1)*in_gpot_dict[i][0]
            # out_gpot[:] = temp
            out_gpot[:] = np.random.rand(self.N_gpot)

            # Randomly select neurons to emit spikes:
            # out_spike[:] = \
            #     sorted(set(np.random.randint(0, self.N_in_spike,
            #                                  np.random.randint(0, self.N_in_spike))))
            out_spike[:] = np.arange(self.N_spike)

    logger = base.setup_logger()

    man = Manager(get_random_port(), get_random_port())
    man.add_brok()

    N1_gpot = N1_spike = 1
    N2_gpot = N2_spike = 2
    m1 = man.add_mod(MyModule(N1_gpot, N1_spike, man.port_data, man.port_ctrl))
    m2 = man.add_mod(MyModule(N2_gpot, N2_spike, man.port_data, man.port_ctrl))
    # m3 = MyModule(N, 'unconnected', man.port_data, man.port_ctrl)
    # man.add_mod(m3)
    # m4 = MyModule(N-2, 'unconnected', man.port_data, man.port_ctrl)
    # man.add_mod(m4)

    conn1 = Connectivity(N1_gpot, N1_spike, N2_gpot, N2_spike, 1, m1.id, m2.id)
    # c1to2['all',:,'all',:,0,'+'] = \
示例#2
0
        pat12['/a/out/spike0', '/b/in/spike0'] = 1
        pat12['/a/out/spike1', '/b/in/spike1'] = 1
        pat12['/b/out/spike0', '/a/in/spike0'] = 1
        pat12['/b/out/spike1', '/a/in/spike1'] = 1
        man.connect(m1, m2, pat12, 0, 1)

        # To set the emulation to exit after executing a fixed number of steps,
        # start it as follows and remove the sleep statement:
        man.start(steps=steps)
        # man.start()
        # time.sleep(2)
        man.stop()
        return m1

    # Set up logging:
    logger = setup_logger(screen=False)
    steps = 100

    # Emulation 1
    start_time = time.time()
    size = 2
    m1 = emulate(size, steps)
    print('Simulation of size {} complete: Duration {} seconds'.format(
        size,
        time.time() - start_time))
    # Emulation 2
    start_time = time.time()
    size = 100
    emulate(size, steps)
    print('Simulation of size {} complete: Duration {} seconds'.format(
        size,
示例#3
0
            # Perform some random transformations of the graded potential neuron
            # data:        
            # temp = np.random.randint(0, 5, self.N_in_gpot)
            # for i in in_gpot_dict.keys():
            #     temp += np.random.randint(-1, 1, 1)*in_gpot_dict[i][0]            
            # out_gpot[:] = temp
            out_gpot[:] = np.random.rand(self.N_gpot)
            
            # Randomly select neurons to emit spikes:
            # out_spike[:] = \
            #     sorted(set(np.random.randint(0, self.N_in_spike,
            #                                  np.random.randint(0, self.N_in_spike))))
            out_spike[:] = np.arange(self.N_spike)
            
    logger = base.setup_logger()

    man = Manager(get_random_port(), get_random_port())
    man.add_brok()

    N1_gpot = N1_spike = 1
    N2_gpot = N2_spike = 2
    m1 = man.add_mod(MyModule(N1_gpot, N1_spike, 
                              man.port_data, man.port_ctrl))
    m2 = man.add_mod(MyModule(N2_gpot, N2_spike, 
                              man.port_data, man.port_ctrl))
    # m3 = MyModule(N, 'unconnected', man.port_data, man.port_ctrl)
    # man.add_mod(m3)
    # m4 = MyModule(N-2, 'unconnected', man.port_data, man.port_ctrl)
    # man.add_mod(m4)    
示例#4
0
        pat12['/a/out/spike0', '/b/in/spike0'] = 1
        pat12['/a/out/spike1', '/b/in/spike1'] = 1
        pat12['/b/out/spike0', '/a/in/spike0'] = 1
        pat12['/b/out/spike1', '/a/in/spike1'] = 1
        man.connect(m1, m2, pat12, 0, 1)

        # To set the emulation to exit after executing a fixed number of steps,
        # start it as follows and remove the sleep statement:
        man.start(steps=steps)
        # man.start()
        # time.sleep(2)
        man.stop()
        return m1
        
    # Set up logging:
    logger = setup_logger(screen=False)
    steps = 100

    # Emulation 1
    start_time = time.time()
    size = 2
    m1 = emulate(size, steps)
    print('Simulation of size {} complete: Duration {} seconds'.format(
        size, time.time() - start_time))
    # Emulation 2
    start_time = time.time()
    size = 100
    emulate(size, steps)
    print('Simulation of size {} complete: Duration {} seconds'.format(
        size, time.time() - start_time))
    logger.info('all done')
示例#5
0
import os
import pickle
from importlib import import_module

import attrdict

from setting import CUSTOM_SCR
from base import setup_logger

custom = import_module(CUSTOM_SCR)
logger = setup_logger(name=__name__)


class Dataset:
    """
    Data Manager

    Parameters
    ----------
    load_set : LoadSet or None
        log file path and load function
    datas : list of data
        data list
    """
    def __init__(self, load_set=None, datas=None):
        assert load_set is None or datas is None
        self.load_set = load_set
        self.datas = list()
        self.globals = attrdict.AttrDict()
        self.param = None