Is this the sort of thing you wanted?
It's worth noting that _1 |. y and 2 0 1 { y yield the same result, so
you don't need to use both forms in ytodel
deltoya =: (*_1&|.)%+/ NB. not tested for edge
effects.....
ytodela=: ( +/@:* %] ) _1&|.
deltoya ytodela 1j2 2j1 3
1j2 2j1 3
ytodela deltoya 1j2 2j1 3
1j2 2j1 3
Mike
On 26/10/2013 04:36, Don Kelly wrote:
I have written a couple of explicit verbs for Y-delta network
transforms and would like advice on how to express them in a tacit form.
This is for my learning benefit as the use of these comes up only
occasionally and input and output are always only 3 numbers.
deltoy=:3 : '(y*_1|.y)%+/y' from Delta to Wye
ytodel =:3 : '(+/(y*_1|.y))% 2 0 1{y' Wye to Delta
input and output are of the form zij =: a b c where a bc may be real
or complex
my problem is getting around the multiple use of y I suspect that a
train of forks might work but haven't got it yet.
In addition is there an easier way to obtain pairs a*b b*c and c*a
than what I have used?
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm