コード例 #1
0
def test_lattice(config=None, n_agents=1, end_time=10):
    if config is None:
        config = make_lattice_config()
    # configure the compartment
    compartment = Lattice(config)

    # set initial agent state
    if n_agents:
        agent_ids = [str(agent_id) for agent_id in range(n_agents)]
        body_config = {'agent_ids': agent_ids}
        if 'multibody' in config and 'bounds' in config['multibody']:
            body_config.update({'bounds': config['multibody']['bounds']})
        initial_agents_state = agent_body_config(body_config)
        initial_state = {'agents': initial_agents_state}

    # configure experiment
    experiment_settings = {
        'compartment': config,
        'initial_state': initial_state
    }
    experiment = compartment_in_experiment(compartment, experiment_settings)

    # run experiment
    timestep = 1
    time = 0
    while time < end_time:
        experiment.update(timestep)
        time += timestep
    data = experiment.emitter.get_data()

    # assert that the agent remains in the simulation until the end
    assert len(data[end_time]['agents']) == n_agents
    return data
コード例 #2
0
def test_static_lattice(config=get_static_lattice_config(), end_time=10):

    # configure the compartment
    compartment = StaticLattice(config)

    # configure experiment
    experiment_settings = {'compartment': config}
    experiment = compartment_in_experiment(compartment, experiment_settings)

    # run experiment
    timestep = 1
    time = 0
    while time < end_time:
        experiment.update(timestep)
        time += timestep
    return experiment.emitter.get_data()
コード例 #3
0
def test_lattice(config=None, end_time=10):
    if config is None:
        config = get_lattice_config()
    # configure the compartment
    compartment = Lattice(config)

    # configure experiment
    experiment_settings = {'compartment': config}
    experiment = compartment_in_experiment(compartment, experiment_settings)

    # run experiment
    timestep = 1
    time = 0
    while time < end_time:
        experiment.update(timestep)
        time += timestep
    data = experiment.emitter.get_data()
    return data