You're right. The formula below won't work because in WOW, a formula can't call itself, as you said.
((2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )*c)+((1-( (2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )))*ref(fml("Vidya"),-1))
I tried copying the whole thing and creating Vidya2, and then attempted to call ref(fml("Vidya2",-1), but that won't work either. Because Vidya2 would then be calling itself.
The only way it would work is if you made the last bit: *ref(c,-1) instead of ref(fml("Vidya"),-1), but that isn't Vidya, is it? Another idea might be to create a variant of Vidya (what use it could have, I don't really know) in which the first formula calls Vidya2 at the end, as I said, but where Vidya2 ends with ref(c,-1), and not by calling itself. It would look like this:
((2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )*c)+((1-( (2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )))*ref(c,-1))
And the first one would be:
((2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )*c)+((1-( (2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )))*ref(fml("Vidya2"),-1))
It plots, but wot it is I know not wot.
Pers, by the way, is 12, and pers2 is 9.
But, all in all, it's like you said. It simply can't call itself, so an accurate translation, a real Vidya, can't be done in WOW.
CMO appears to work, though, and it appears to be a useful formula. I say "appears to be" because I'm waiting for corrections if anyone has any. .
Here's CMO for WOW (I hope):
100*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))))
Vid1: if (c>ref(c,-1), c- ref(c,-1),0)
Vid2: abs(if (c<ref(c,-1),c - ref(c,-1),0))
And this is my bogus Vidya, if anyone's interested in seeing if it has any use:
Vidya (sort of):
((2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )*c)+((1-( (2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )))*ref(fml("Vidya2"),-1))
Vidya2:
((2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )*c)+((1-( (2/(pers+1))*(abs((sum(fml("Vid1"),pers2)-sum(fml("Vid2"),pers2))/ (sum(fml("Vid1"),pers2)+sum(fml("Vid2"),pers2))) )))*ref(c,-1))
Where pers is 12 and pers2 is 9
You can do both bands in one formula:
1. ref(fml("Vidya"),-1)+var*ref(fml("Vidya"),-1) 2. ref(fml("Vidya"),-1)-var*ref(fml("Vidya"),-1)
where var is the percent vertical shift for the bands, and the default is .01 (try .03 for small caps)
Brooke |