params = {} params["mu"] = 0.5 params["w"] = np.array([2.0]) params["A"] = np.array([[0]]) oscillator.setParams(params) elif test == 1: x0 = np.array([0, 0.8]) # , 0.7, 0.5, 0, 0 oscillator = PolContainer() elif test == 2: x0 = np.array([6, 5.4, 6.8]) oscillator = LinearContainer() elif test == 3: x0 = np.array([0.3, 0.5]) oscillator = XYContainer() dataGen = GenerateTestData(oscillator, x0.size) pltWorker = extPlot() numSamples = 10 samplingTime = 10.0 / float(numSamples) dt = 0.001 dtf = 0.001 procs = 0.01 obs = 0.01 (x, y) = dataGen.generateSamplePointsGG(samplingTime, numSamples, dt, x0, procs, obs) print "samplePoints generated" finalTime = samplingTime * (numSamples - 1) pf = ParticleFilter(oscillator, x0.size) pf.runFilter(y, samplingTime, dtf, procs, obs) pltWorker.plotPath(x, finalTime, 0.5) pltWorker.plotMarkers(y, finalTime, mk="*", ms=10, a=0.4)
''' Created on Jan 11, 2013 @author: tiago ''' from functionContainer import FunctionContainer from generateTestData import GenerateTestData from extPlotter import extPlot import numpy as np params = {} params['mu'] = 0.1 params['w'] = np.array([2.0, 1.0, 2.0]) params['A'] = np.array([[0, 2, 0], [5, 0, 0], [0, 3, 0]]) x0 = np.array([0, 1.0, 2.0, 2.0, 0, 0]) oscillator = FunctionContainer(params) dataGen = GenerateTestData(oscillator, x0.size) pltWorker = extPlot() samplingTime = 1 numSamples = 10 dt = 0.01 (x, y) = dataGen.generateSamplePointsGG(samplingTime, numSamples, dt, x0, 0.1, 0) print 'samplePoints generated' finalTime = samplingTime * (numSamples - 1)
params = {} params['mu'] = 0.5 params['w'] = np.array([2.0]) params['A'] = np.array([[0]]) oscillator.setParams(params) elif test == 1: x0 = np.array([0, 0.8]) #, 0.7, 0.5, 0, 0 oscillator = PolContainer() elif test == 2: x0 = np.array([6, 5.4, 6.8]) oscillator = LinearContainer() elif test == 3: x0 = np.array([0.3, 0.5]) oscillator = XYContainer() dataGen = GenerateTestData(oscillator, x0.size) pltWorker = extPlot() numSamples = 10 samplingTime = 10.0 / float(numSamples) dt = 0.001 dtf = 0.001 procs = 0.01 obs = 0.01 (x, y) = dataGen.generateSamplePointsGG(samplingTime, numSamples, dt, x0, procs, obs) print 'samplePoints generated' finalTime = samplingTime * (numSamples - 1) pf = ParticleFilter(oscillator, x0.size) pf.runFilter(y, samplingTime, dtf, procs, obs) pltWorker.plotPath(x, finalTime, 0.5)