octave-maintainers
[Top][All Lists]
Advanced

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

Re: ode45 inclusion into core


From: Olaf Till
Subject: Re: ode45 inclusion into core
Date: Wed, 7 Oct 2015 09:02:55 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

On Tue, Oct 06, 2015 at 11:03:04PM +0100, Richard Crozier wrote:
> On 06/10/15 17:52, Olaf Till wrote:
> >On Tue, Oct 06, 2015 at 04:09:54PM +0000, Carlo De Falco wrote:
> >>
> >>On 6 Oct 2015, at 18:02, Richard Crozier <address@hidden> wrote:
> >>
> >>>I know this is deprecated, but I much prefer it to the recommended
> >>>anonymous function method. Please don't remove it if it already
> >>>exists.
> >>>
> >>>I unfortunately can't remember the exact reasons, but there are
> >>>issues with saving anonymous functions and their data to files
> >>>that make this way much less efficient in my application
> >
> >The (probably sole) issues are:
> >
> >http://savannah.gnu.org/bugs/?45972
> >
> >http://savannah.gnu.org/bugs/?45969
> >
> >both of which have supplied patches, so there is hope for next release
> >series.
> >
> >>(I use
> >>>the multicore package, or rather a slightly modified version of
> >>>it).
> >>>
> >>>Richard
> >
> >With parcellfun, only the results, which probably don't contain
> >anonymous functions, need to be saved (over a pipe, not to
> >files). Since your problem obviously concerns additional arguments,
> >not results, it would be absent if you used parcellfun. Which, I
> >think, you really should do ...
> >
> 
> Prcelfun, as far as I can tell, does not allow me to utilise multiple
> separate computers on a network with access to a common directory, whereas
> multicore does. It also won't work in both Octave and ML which is a goal for
> me. I've also modified multicore to do a few things, like run a
> preprocessing function, and a function between iterations of checking for
> results (which I use to monitor slave resource availability for instance on
> an HTCondor cluster), my version also provides a mechanism to kill slaves by
> deleting certain files in the multicore shared directory, and also lets you
> run a pool of slaves continuously and have more than one master process
> submit jobs to the same pool without mixing them up. It also easily lets you
> see which slave process is working on which job as jobs and slaves have a
> unique ID. Multicore is also helpful in that it resubmits jobs that don't
> complete within a pre-specified time limit, or have the master process do
> them when the don't complete within the time limit.
> 
> So parcelfun is much too limited for my use case I'm afraid.

Thanks for the explanation Richard, I probably have mistaken that
package with that which previously had been in Octave Forge under
'extra', and now understand the need better.

> >>OK, if this feature has a reason to be I won't remove it from where
> >>it is implemented already, but I think we should not insist that new
> >>implementations of other ode solvers also implement it.
> >>
> >>c.
> 
> I suppose this is reasonable, since it's not documented.
> 
> >
> >The feature is ugly and should be weeded out where possible,
> >IMO. Sorry.
> >
> >Olaf
> >
> 
> Beauty is in the eye of the beholder.
> 
> Richard

I still wan't to explain my view a bit better than just shouting
'ugly':

- I think anonymous functions, being a general mechanism, are to be
  prefered over explicite extra arguments, which would have to be
  implemented separately for each case.

- The only issue seems to be that currently there are bugs preventing
  anonymous functions from always being saved correctly. It may be
  acceptable for external packages to work around such bugs. But
  within core Octave, the right way is to fix the bugs (which should
  be feasible in these cases, the code is there), instead of working
  around them at other places.

This should not negatively affect you (Richard) (except for a need to
alter your code to use anonymous functions for extra arguments), since
at the time Octave is released with the new ODE functions, the above
bugs should also be fixed.

Olaf

-- 
public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net

Attachment: signature.asc
Description: Digital signature


reply via email to

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