bug-libmatheval
[Top][All Lists]
Advanced

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

[Bug-libmatheval] Re: request for new feature inside libmatheval


From: Aleksandar B. Samardzic
Subject: [Bug-libmatheval] Re: request for new feature inside libmatheval
Date: Fri, 6 Aug 2004 09:57:45 +0200
User-agent: Mutt/1.4.2.1i

On Thu, Aug 05, 2004 at 10:36:10PM +0200, Frank Vanden Berghen wrote:
> Hi Aleksandar,
> 
> My name is Frank Vanden Berghen. I am currently using libmatheval inside a 
> mathematical funtion optimizer which is under the GNU public license: the 
> CONDOR optimizer (see the web pages: 
> http://iridia.ulb.ac.be/~fvandenb/thesis/ and 
> http://iridia.ulb.ac.be/~fvandenb/work/optimization/index.html 
> to have an overview of CONDOR). I still have to write a complete site 
> dedicated to CONDOR. This optimizer is currently among the fastest optimizer 
> available (fastest in terms of number of function evaluations). I am using 
> libmatheval as an easy way to submit mathematical function to optimize (to be 
> more specific I am using libmatheval to define the aggregation function used 
> for multi-objective optimization).
> 
> Could you extend the libmatheval library so that it understand the following 
> expression: (a?b:c)
> It's the standard ternary operator defined in C. 'a' is a boolean expression. 
> 'b' and 'c' are standard mathematical expressions returning doubles. The 
> result of the evalution of the expression (a?b:c) is 'b' if 'a' is true and 
> 'c' if 'a' is false. It's necessary to define boolean expressions. It should 
> be great to be able to use the classical boolean operators: <, >, >=, <=, <>, 
> !, &, |, ^,=.
> 
> An other improvement is matrix notation (note the transpose sign: ' ):
> [x y]' *[ 1 2 ; 3 4 ] * [ x y ]
> stands for:
> [x y] * [ 1  2 ]   [x]
>           [ 3  4 ]* [y]
> the scalar product of 2 vectors is simply:
> [x y]'*[a b]
> Addition and substraction of matrices are also welcome.
> 
> If you don't have the time required to code these improvements, I can do it. 
> But I think it's better to coordonnate our efforts.
> 
> All the best,
> 
> Frank
> 
> ================================================
> Dr. Ir. Frank Vanden Berghen
> IRIDIA - Université Libre de Bruxelles
> Avenue Franklin Roosevelt 50
> B-1050 Brussels - Belgium
> Phone: + 32 2 - 6503167
> Fax: + 32 2 - 6502715
> GSM: + 32 479 - 992768
> email: address@hidden
> web: http://iridia.ulb.ac.be/~fvandenb/
> 


Thanks for your message.  My thoughts: Extensions you are suggesting are
not hard to code (at least except for parsing support for matrix
operations), but my concern is that these extensions don't fit well with
intended libmatheval purpose.  As I imagined it and as people are using
it, libmatheval should be small library with fast parser accepting
syntax of common mathematical expression; it should not be either C
expressions parser or Matlab-like expressions parser.  So, at the moment
I wouldn't be ready to extend libmatheval as you are suggesting, but am
open to do so if more libmatheval users asking for.  I'm Cc-ing this
message to bug-libmatheval mailing list and am also Bcc-ing to some
libmatheval users that I know are not on mailing list; I hope they won't
mind this, I really would like to hear if there exist more people
thinking that suggested extensions would be good to have.  If enough
interest arise, I'll add requested features in libmatheval; otherwise,
I'd suggest adding needed extensions yourself in your private
libmatheval branch/fork or using code from some other alike open source
project, Octave for example.

Regards,
Alex





reply via email to

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