self.p_out = self.dist_types[parameter](*self.dist_args[parameter]) if type(self.p_out) == 'numpy.ndarray': self.outputs += p_out.tolist() else: self.outputs.append(self.p_out) else: self.p_out = self.dist_types['Default'](*self.dist_args['Default']) self.outputs.append(self.p_out) else: #parameters is none: default to num_parameters and utilize defaults self._args = self.dist_args['Default'][:] self._args.append(self.num_parameters) self.outputs = self.dist_types['Default'](*self._args) self._outputs = array(self.outputs) return self._outputs else: raise StopIteration() if __name__ == "__main__": from numpy import random from montecarlo import MonteCarlo _test = MonteCarlo() _test.num_parameters = 7 _test.parameters = ['x','y','z','u'] _test.num_samples = 10 _test.dist_types = {'Default':random.uniform,'y':random.standard_normal} _test.dist_args = {'Default':[0,1],'y':[]} for iters in _test: A = iters print(A)
self.outputs += p_out.tolist() else: self.outputs.append(self.p_out) else: self.p_out = self.dist_types["Default"](*self.dist_args["Default"]) self.outputs.append(self.p_out) else: # parameters is none: default to num_parameters and utilize defaults self._args = self.dist_args["Default"][:] self._args.append(self.num_parameters) self.outputs = self.dist_types["Default"](*self._args) self._outputs = array(self.outputs) return self._outputs else: raise StopIteration() if __name__ == "__main__": from numpy import random from montecarlo import MonteCarlo _test = MonteCarlo() _test.num_parameters = 7 _test.parameters = ["x", "y", "z", "u"] _test.num_samples = 10 _test.dist_types = {"Default": random.uniform, "y": random.standard_normal} _test.dist_args = {"Default": [0, 1], "y": []} for iters in _test: A = iters print(A)