help-octave
[Top][All Lists]
Advanced

[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)

  Hello,

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
     ....
  end

  loops over the columns of funcs :

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

  1
  2

ii =

  3
  4

ii =

  5
  6

  which may not be what you expected.

  You may do 

  eval (["function p = my_prod(t)ŠÜn"ŠÜ
          "  p = f(t) * g(t);ŠÜn"ŠÜ
          "endfunctionŠÜ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,

  Etienne









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

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------



reply via email to

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