Ah, I see what's happened.z should be recipSorry.
It should be: zeta =. +/"_ @: recip NB. sum all> From: [email protected]
> Date: Sun, 9 Mar 2014 13:41:18 -0400
> To: [email protected]
> Subject: Re: [Jprogramming] Zeta Function as Tacit Verb
>
> But what is z?
>
> Thanks,
>
> --
> Raul
>
>
> On Sun, Mar 9, 2014 at 1:38 PM, Jon Hough <[email protected]> wrote:
>
> > Sorry, The verb zeta is dyadic.for example 2 zeta i.100 gives an
> > estimation of the functionzeta(x), for x =2,where zeta(x) is the Riemann
> > zeta function defined for positive integers > 1.
> >
> > > From: [email protected]
> > > Date: Sun, 9 Mar 2014 13:32:54 -0400
> > > To: [email protected]
> > > Subject: Re: [Jprogramming] Zeta Function as Tacit Verb
> > >
> > > Hypothetically speaking, you can get J to tell you how to build tacit
> > verb.
> > >
> > > Practically speaking... here's the definitions you gave:
> > >
> > > pwr =. ^~ NB. this is y to the power x (dyadic tacit verb)
> > > recip =. %@ pwr NB. take the reciprocal
> > > zeta =. +/"_ @: z NB. sum all
> > >
> > > And here's how I would examine them:
> > >
> > > First, enable linear represenation of verbs:
> > >
> > > 9!:3]5
> > >
> > > Second, resolve the names in your definition:
> > >
> > > zeta f.
> > > |value error: z
> > >
> > > (oops)
> > >
> > > It looks like you left out a part of your definition. I've not worked
> > with
> > > zeta before, and I don't actually know which zeta function you were
> > trying
> > > to compute. At a guess, though, you were using one that happens to work
> > > nicely with this kind of implementation.
> > >
> > > If you could supply the rest of the definition, though, I think one of us
> > > could go into how it works.
> > >
> > > Thanks,
> > >
> > > --
> > > Raul
> > >
> > >
> > >
> > > On Sun, Mar 9, 2014 at 1:22 PM, Jon Hough <[email protected]> wrote:
> > >
> > > > I have created a tacit verb to calculate the Zeta function for any
> > integer
> > > > greater than 1.
> > > > http://mathworld.wolfram.com/ZetaFunction.html
> > > > My verb was built up step by step as follows:
> > > > pwr =. ^~ NB. this is y to the power x (dyadic tacit verb)
> > > > recip =. %@ pwr NB. take the reciprocal
> > > > zeta =. +/"_ @: z NB. sum all
> > > >
> > > > I tested it
> > > > 2 zeta >: i.100
> > > > 1.63498
> > > > This seems about right (should be about pi*pi/6)
> > > > My first question is: I would like to make my verb in only one line,
> > not
> > > > using my step-by-step approach. But every time I tried this I got all
> > kinds
> > > > of errors or the calculation results were hopelessly wrong. How can I
> > write
> > > > this verb in a single line?
> > > > Secondly, I'm still not entirely sure how this works.
> > > > If I do 2 pwr 3 then that is 3*3, which is fine, but then doing "recip"
> > > > afterwards, I'm not sure how J parses the recip verb as monadic (it
> > takes
> > > > the reciprocal instead of "2 over". How does J do this?
> > > > Lastly, I am not sure why I needed to make +/ to be rank _. That was
> > just
> > > > a guess. Why is this? I understand it is the way @: and @ interact
> > with the
> > > > verbs but I'm struggling to see the cause.
> > > > Thanks.
> > > > Jon
> > > > ----------------------------------------------------------------------
> > > > For information about J forums see http://www.jsoftware.com/forums.htm
> > > >
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm