def test_support_to_activity(self): """ :return: """ duty_cycle = 0.75 support_phases = [-0.25, 0.25, -1.25, -0.75] # activity_phases = [0, 0.5, -1.0, -0.5] activity_phases = configs.support_to_activity_phases( support_phases, duty_cycle ) print('S->A:', activity_phases) self.assertEqual(activity_phases[0], 0) self.assertEqual(activity_phases[1], 0.5) self.assertEqual(activity_phases[2], -1.0) self.assertEqual(activity_phases[3], -0.5)
def load_activity_phases(settings: dict) -> limb.Property: """ Returns the loaded activity phases as defined by the settings object :param settings: Configuration for the simulation trial """ if 'activity_phases' in settings: settings['activity_phases'] = configs.to_phases_list( settings['activity_phases'] ) else: out = configs.support_to_activity_phases( settings['support_phases'], settings['duty_cycle'] ) # Zero the calculated settings around the lowest pes phase settings['activity_phases'] = [x - min(out[:2]) for x in out] if 'support_phases' in settings: settings['support_phases'] = configs.to_phases_list( settings['support_phases'] ) else: out = configs.activity_to_support_phases( settings['activity_phases'], settings['duty_cycle'] ) # Zero the calculated settings around the lowest pes phase settings['support_phases'] = [x - min(out[:2]) for x in out] out = limb.Property() source = settings['activity_phases'] if isinstance(source, (list, tuple)): return out.assign(*source) return out.assign(**source)