logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

math::rationalfunctions - Polynomial functions

Bugs, Ideas, Feedback

       This document, and the package it describes, will undoubtedly contain bugs and  other  problems.   Please
       report    such    in    the    category    math::rationalfunctions   of   the   TcllibTrackers
       [http://core.tcl.tk/tcllib/reportlist].  Please also report any ideas for enhancements you may  have  for
       either package and/or documentation.

       When proposing code changes, please provide unifieddiffs, i.e the output of diff-u.

       Note  further  that  attachments  are strongly preferred over inlined patches. Attachments can be made by
       going to the Edit form of the ticket immediately after its creation, and then using the left-most  button
       in the secondary navigation bar.

Category

       Mathematics

Description

       This package deals with rational functions of one variable:

       •      the basic arithmetic operations are extended to rational functions

       •      computing the derivatives of these functions

       •      evaluation through a general procedure or via specific procedures)

Keywords

       math, rational functions

Name

       math::rationalfunctions - Polynomial functions

Procedures

       The package defines the following public procedures:

       ::math::rationalfunctions::rationalFunctionnumden
              Return an (encoded) list that defines the rational function. A rational function

                           1 + x^3
                 f(x) = ------------
                        1 + 2x + x^2

              can be defined via:

                 set f [::math::rationalfunctions::rationalFunction [list 1 0 0 1]  [list 1 2 1]]

              list num
                     Coefficients of the numerator of the rational function (in ascending order)

              list den
                     Coefficients of the denominator of the rational function (in ascending order)

       ::math::rationalfunctions::ratioCmdnumden
              Create  a  new  procedure  that  evaluates  the  rational  function.  The  name of the function is
              automatically generated. Useful if you need to evaluate the function many times, as the  procedure
              consists of a single [expr] command.

              list num
                     Coefficients of the numerator of the rational function (in ascending order)

              list den
                     Coefficients of the denominator of the rational function (in ascending order)

       ::math::rationalfunctions::evalRatiorationalx
              Evaluate the rational function at x.

              list rational
                     The rational function's definition (as returned by the rationalFunction command).  order)

              float x
                     The coordinate at which to evaluate the function

       ::math::rationalfunctions::addRatioratio1ratio2
              Return a new rational function which is the sum of the two others.

              list ratio1
                     The first rational function operand

              list ratio2
                     The second rational function operand

       ::math::rationalfunctions::subRatioratio1ratio2
              Return a new rational function which is the difference of the two others.

              list ratio1
                     The first rational function operand

              list ratio2
                     The second rational function operand

       ::math::rationalfunctions::multRatioratio1ratio2
              Return a new rational function which is the product of the two others.  If one of the arguments is
              a scalar value, the other rational function is simply scaled.

              list ratio1
                     The first rational function operand or a scalar

              list ratio2
                     The second rational function operand or a scalar

       ::math::rationalfunctions::divRatioratio1ratio2
              Divide  the  first  rational  function  by the second rational function and return the result. The
              remainder is dropped

              list ratio1
                     The first rational function operand

              list ratio2
                     The second rational function operand

       ::math::rationalfunctions::derivPolynratio
              Differentiate the rational function and return the result.

              list ratio
                     The rational function to be differentiated

       ::math::rationalfunctions::coeffsNumeratorratio
              Return the coefficients of the numerator of the rational function.

              list ratio
                     The rational function to be examined

       ::math::rationalfunctions::coeffsDenominatorratio
              Return the coefficients of the denominator of the rational function.

              list ratio
                     The rational function to be examined

Remarks On The Implementation

       The implementation of the rational functions relies on the math::polynomials package. For further remarks
       see the documentation on that package.

Synopsis

       package require Tcl?8.59?

       package require math::rationalfunctions?1.0.2?::math::rationalfunctions::rationalFunctionnumden::math::rationalfunctions::ratioCmdnumden::math::rationalfunctions::evalRatiorationalx::math::rationalfunctions::addRatioratio1ratio2::math::rationalfunctions::subRatioratio1ratio2::math::rationalfunctions::multRatioratio1ratio2::math::rationalfunctions::divRatioratio1ratio2::math::rationalfunctions::derivPolynratio::math::rationalfunctions::coeffsNumeratorratio::math::rationalfunctions::coeffsDenominatorratio

________________________________________________________________________________________________________________

See Also