Steffen Müller > Math-SymbolicX-NoSimplification > Math::SymbolicX::NoSimplification

Download:
Math-SymbolicX-NoSimplification-1.01.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 1.01   Source  

NAME ^

Math::SymbolicX::NoSimplification - Turn off Math::Symbolic simplification

SYNOPSIS ^

  use Math::SymbolicX::NoSimplification qw(:all);
  # ... code that uses Math::Symbolic ...
  # Won't use the builtin simplification routines.
  # ...
  do_simplify();
  # ... code that uses Math::Symbolic ...
  # Will use the builtin simplification routines.
  # ...
  dont_simplify();
  # ... you get the idea ...

DESCRIPTION ^

This module offers facilities to turn off the builtin Math::Symbolic simplification routines and replace them with routines that just clone the objects. You may want to do this in cases where the simplification routines fail to simplify the Math::Symbolic trees and waste a lot of CPU time. (For example, calculating the first order Taylor polynomial of a moderately complex test function was sped up by 100% on my machine.)

A word of caution, however: If you turn off the simplification routines, some procedures may produce very, very large trees. One such procedure would be the consecutive application of many derivatives to a product without intermediate simplification. This would yield exponential growth of nodes. (And may, in fact, still do if you keep the simplification heuristics turned on because most expressions cannot be simplified significantly.)

USAGE

Just load the module to turn off simplification. To turn it back on, you can call Math::SymbolicX::NoSimplification-do_simplify()> and to turn it off again, you may call Math::SymbolicX::NoSimplification-do_simplify()>. Since the module's name is quite long, you may choose to import do_simplify() and/or dont_simplify() into your namespace using standard Exporter semantics. See below.

CLASS METHODS

do_simplify

Turn simplification back on.

dont_simplify

Turn simplification off.

EXPORT

None by default, but you may choose to import either the routines do_simplify() and/or dont_simplify() or both by using the :all exporter group. See also: Exporter

AUTHOR ^

Steffen Mueller, <smueller@cpan.org>

Please send feedback, bug reports, and support requests to the Math::Symbolic support mailing list: math-symbolic-support at lists dot sourceforge dot net. Please consider letting us know how you use Math::Symbolic. Thank you.

If you're interested in helping with the development or extending the module's functionality, please contact the developers' mailing list: math-symbolic-develop at lists dot sourceforge dot net.

COPYRIGHT AND LICENSE ^

Copyright (C) 2005-2006 Steffen Mueller

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

New versions of this module can be found on http://steffen-mueller.net or CPAN.

Math::Symbolic,

syntax highlighting: