[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: anonymous functions?

From: Etienne Grossmann
Subject: Re: anonymous functions?
Date: Wed, 20 Dec 2000 15:20:00 +0000
User-agent: WEMI/1.13.7 (Shimada) FLIM/1.13.2 (Kasanui) Emacs/20.7 (i386-debian-linux-gnu) (with unibyte mode)


From: Han-Wen Nienhuys <address@hidden>
#  Please bear with me, I'm a newbie user. I want to build a simple
#  meshless PDE solver in octave, but right at the start I get stuck.
#  I'm trying to write a function to compute a gram-matrix, but I can't
#  figure out how to pass an anonymous function to the quad procedure.

#  What I am hoping|trying to do:

#          function G =  grammatrix (funcs)
#            l = length (funcs)
#            G = zeros (l,l)
#            i = 0
#            j = 0
#            for f = funcs
#              for g =  funcs
#                function p = prod(t)
#                  p = f(t) * g(t)
#                endfunction
#                G(i,j) = quad (prod,0, 1, [0, 0.01], [])
#                j++
#                endfor
#              i++
#            endfor
#          endfunction

  for f = funcs

  loops over the columns of funcs :

octave:52> for ii = reshape (1:6,2,3), ii, end
ii =


ii =


ii =


  which may not be what you expected.

  You may do 

  eval (["function p = my_prod(t)ŠÜn"ŠÜ
          "  p = f(t) * g(t);ŠÜn"ŠÜ

  but f(t) will not be visible (see the man pages on local and global
variables); by default, all vars are local.

  Also, you don't get an anonymous func : it's called "my_prod". (note
that "prod" is a builtin function). Do you usually program in perl (a
good language for anonymous functions)?

  Sorry for not being very helpful,


Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:
How to fund new projects:
Subscription information:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]