Index: scientific_library/tvb/simulator/monitors.py IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- scientific_library/tvb/simulator/monitors.py (revision Local version) +++ scientific_library/tvb/simulator/monitors.py (revision Shelved version) @@ -298,18 +298,23 @@ svars = [sv['value'] for sv in simulator.model.trait['variables_of_interest'].interface['options']] # handle transforms, "expressions of interest" - if self.pre_expr or self.post_expr: - pre, post = self.pre_expr, self.post_expr - else: - # TODO convert voi to pre expr - if self.variables_of_interest.size == 0: - self.voi = numpy.array([simulator.model.state_variables.index(var) - for var in simulator.model.variables_of_interest]) - else: - self.voi = self.variables_of_interest + # TODO convert voi to pre expr + if self.variables_of_interest.size == 0: + self.voi = numpy.array([simulator.model.state_variables.index(var) + for var in simulator.model.variables_of_interest]) + else: + self.voi = self.variables_of_interest + + if self.pre_expr: + pre = self.pre_expr + else: pre = ';'.join([svar for i, svar in enumerate(svars) if i in self.voi]) - post = '' + if self.post_expr: + post = self.post_expr + else: + post = ';'.join(['mon' for _ in self.voi]) + self._transforms = mt = MonitorTransforms(pre, post, svars) self.voi = numpy.r_[:len(mt.pre)] LOG.info('%r - pre %r, post %r, svars %r', self, mt.pre, mt.post, svars) @@ -1194,6 +1199,7 @@ Set up stock arrays """ + self.post_expr = 'mon' super(Bold, self).config_for_sim(simulator) self.compute_hrf() # now we have self.hemodynamic_response_function