octave-maintainers
[Top][All Lists]
Advanced

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

Re: merging functions from octave-forge


From: David Bateman
Subject: Re: merging functions from octave-forge
Date: Tue, 16 May 2006 07:27:39 +0200
User-agent: Mozilla Thunderbird 1.0.6-7.6.20060mdk (X11/20050322)

As requested I'm resending a mail I sent during the period the lists
were down. However, note that I've advanced a little more and so the
contents of tis version of the message has a few more functions ported.

John W. Eaton wrote:

>For Octave 3.0 (or perhaps a later 3.x release) I'd like to aim for
>including most of the functions that are currently in Octave forge for
>compatibility with core Matlab functionality (i.e., those in the list
>http://www.mathworks.com/access/helpdesk/help/techdoc/ref/refbookl.html).
>  
>
Ok, seeing as there are still a large number of the functions on your
list unconverted I've taken a try and doing some of them.

>I did a quick count, and found that the list of functions in Matlab is
>approximately 1066.  Octave includes 390 of those, and Octave forge
>contains 172 of them.  We have the following overlap between Octave
>and Octave forge
>
>  cellstr char chol deal detrend double fieldnames gammaln grid hankel
>  isa isfield isunix lin2mu mu2lin ndims polyder rand randn rmfield
>  struct toeplitz tril triu unix
>  
>
These all seem to now be treated and removed or disabled in octave-forge

>so that leaves about 150 functions to merge:
>
>  addpath betaln blkdiag brighten builtin calendar clf complex
>  contourf conv2 convhull convhulln cplxpair csvread csvwrite cumtrapz
>  datenum datestr datevec del2 delaunay delaunay3 delaunayn demo
>  dlmread dlmwrite dos drawnow edit ellipj ellipke eomday expm1 factor
>  factorial fill fill3 filter2 fminbnd fplot full funm fzero getfield
>  ginput gradient griddata gtext hadamard ifftshift imread imwrite
>  inputname interp1 interp2 interpft intersect isdir isequal ismember
>  isprime issparse legend legendre magic mat2str meshc mkpp nchoosek
>  nnz nonzeros now nthroot ode23 ode45 optimset orient pareto pascal
>  patch pcg pchip pcolor peaks peaks perms pie plot3 polyarea ppval
>  primes print psi quadl quiver rat rats regexp rmpath rosser rref
>  scatter setdiff setfield setxor sortrows sound soundsc sparse
>  spdiags speye spfun spline spones sprand sprandn spy stem str2double
>  strcmpi strfind strmatch strncmp strncmpi strtok strvcat surf surfc
>  tar text textread trapz tsearch unique unmkpp view voronoi voronoin
>  waitbar wavread wavwrite weekday wilkinson xlsread xmlread xmlwrite
>  zoom
>  
>
Of those that haven't been converted yet I attach a patch to convert 16
more of them to the octave coding style. After these I see that there
are about 90 entries from this list that are not yet converted, these being

Easy to Port:
 factor isprime primes

Hard to Port:
  brighten contourf convhull convhulln csvread csvwrite del2 delaunay
  delaunay3 delaunayn dlmread dlmwrite drawnow edit ellipj ellipke expm1
  fill fill3 fminbnd funm fzero rat rats

* To port rat/rats need to convert to C++ include in pr-output.cc to
  allow "format rat" to work.

* Combine funm with thfm for trig precision, but how to deal with function
  handles and inline functions?

Unclassified:
  ginput gradient griddata gtext hadamard imread imwrite
  inputname interp1 interp2 interpft intersect
  legend legendre magic mat2str meshc mkpp nchoosek
  nthroot ode23 ode45 optimset orient pareto pascal
  patch pcg pchip pcolor peaks perms pie plot3 polyarea ppval
  psi quadl quiver rosser rref scatter sortrows sound soundsc
  spline stem str2double strtok surf surfc
  text textread tsearch unmkpp view voronoi voronoin
  waitbar wavread wavwrite wilkinson xlsread xmlread xmlwrite
  zoom

Some of these will disappear with th Grapics Handle stuff. Also note
that intersection.m should probably also be depreciated and replaced wih
a version that calls intersect.m.

Regards
David

Attachment: patch.gz
Description: application/gzip


reply via email to

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