| def apply_passion(raw, passion): | |
| """ | |
| Radial amplification around neutral (0.5) | |
| Only affects V, A, D | |
| """ | |
| amplified = {} | |
| for k in raw: | |
| if k in ["V", "A", "D"]: | |
| delta = raw[k] - 0.5 | |
| magnitude = abs(delta) | |
| gain = 1 + passion * magnitude | |
| amplified[k] = max(0.0, min(1.0, 0.5 + delta * gain)) | |
| else: | |
| amplified[k] = raw[k] | |
| return amplified | |