Package ca.nengo.ui.test

Source Code of ca.nengo.ui.test.TestUtil

package ca.nengo.ui.test;

import ca.nengo.math.Function;
import ca.nengo.math.impl.ConstantFunction;
import ca.nengo.model.SimulationException;
import ca.nengo.model.StructuralException;
import ca.nengo.model.Termination;
import ca.nengo.model.Units;
import ca.nengo.model.impl.FunctionInput;
import ca.nengo.model.impl.NetworkImpl;
import ca.nengo.model.nef.NEFEnsemble;
import ca.nengo.model.nef.NEFEnsembleFactory;
import ca.nengo.model.nef.impl.NEFEnsembleFactoryImpl;
import ca.nengo.ui.lib.util.Util;
import ca.nengo.util.Probe;


public class TestUtil {
  public static float tau = .05f;
  public static void buildNetwork(NetworkImpl network) throws StructuralException,
      InterruptedException, SimulationException {
    network.setName("Integrator");

    Util.debugMsg("Network building started");

    Function f = new ConstantFunction(1, 1f);
    FunctionInput input = new FunctionInput("input", new Function[] { f },
        Units.UNK);

    // uiViewer.addNeoNode(uiInput);

    NEFEnsembleFactory ef = new NEFEnsembleFactoryImpl();
    NEFEnsemble integrator = ef.make("integrator", 500, 1, "integrator1",
        false);
    Termination interm = integrator.addDecodedTermination("input",
        new float[][] { new float[] { tau } }, tau, false);
    Termination fbterm = integrator.addDecodedTermination("feedback",
        new float[][] { new float[] { 1f } }, tau, false);

    network.addNode(integrator);
    Thread.sleep(1000);
    network.addNode(input);
    Thread.sleep(1000);
    // UINEFEnsemble uiIntegrator = new UINEFEnsemble(integrator);
    // uiViewer.addNeoNode(uiIntegrator);
    // uiIntegrator.collectSpikes(true);

    // UITermination uiInterm =
    // uiIntegrator.showTermination(interm.getName());
    // UITermination uiFbterm =
    // uiIntegrator.showTermination(fbterm.getName());

    network.addProjection(input.getOrigin(FunctionInput.ORIGIN_NAME),
        interm);
    Thread.sleep(500);
    network.addProjection(integrator.getOrigin(NEFEnsemble.X), fbterm);
    Thread.sleep(500);

    /*
     * Add probes
     */
    Probe integratorXProbe = network.getSimulator().addProbe("integrator",
        NEFEnsemble.X, true);
    Thread.sleep(500);
    /*
     * Test adding removing probes
     */
    network.getSimulator().removeProbe(integratorXProbe);
    Thread.sleep(500);
    // add the probe back
    network.getSimulator().addProbe("integrator", NEFEnsemble.X, true);
    Thread.sleep(500);

   

    Util.debugMsg("Network building finished");

  }
}
TOP

Related Classes of ca.nengo.ui.test.TestUtil

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.