def make_conn(self, x): assert bm.ndim(x) == 1 x_left = bm.reshape(x, (-1, 1)) x_right = bm.repeat(x.reshape((1, -1)), len(x), axis=0) d = self.dist(x_left - x_right) Jxx = self.J0 * bm.exp( -0.5 * bm.square(d / self.a)) / (bm.sqrt(2 * bm.pi) * self.a) return Jxx
def test_fix_type(self): duration = 10. dt = 0.1 for jit in [True, False]: for run_method in [bp.ReportRunner, bp.StructRunner]: ds = ExampleDS() runner = run_method(ds, inputs=('o', 1.), monitors=['o'], dyn_vars=ds.vars(), jit=jit, dt=dt) runner(duration) length = int(duration / dt) assert bm.array_equal(runner.mon.o, bm.repeat(bm.arange(length) + 1, 2).reshape((length, 2)))
def make_conn(self): x_left = bm.reshape(self.x, (-1, 1)) x_right = bm.repeat(self.x.reshape((1, -1)), len(self.x), axis=0) d = self.dist(x_left - x_right) conn = self.J0 * bm.exp(-0.5 * bm.square(d / self.a)) / (bm.sqrt(2 * bm.pi) * self.a) return conn