AddFunction - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

MultiSeries

 add new function definition to MultiSeries
 RemoveFunction
 remove function definition from MultiSeries
 GetFunction
 get function definition from MultiSeries
 FunctionSupported
 check if a function definition is supported in MultiSeries

 Calling Sequence AddFunction(g, f) RemoveFunction(g) GetFunction(g) FunctionSupported(g)

Parameters

 g - function name f - procedure

Description

 • The AddFunction(g, f) command, a library extension mechanism, adds a definition related to the function g to MultiSeries, where f is a user-defined procedure which handles multiseries containing the function g.
 For example, let f be a user-defined function for g.  To add this information to the multiseries function, use AddFunction(g, eval(f,1)).
 • For example, after issuing AddFunction(g, f), the function call $\mathrm{multiseries}\left(f\left(x\right),x,3\right)$ will invoke $g\left(s,\mathrm{scale},\mathrm{varlist},3\right)$ to compute the multiseries. The arguments are the multiseries expansion of the argument of $f$, the scale in which the expansion is performed, the variable with respect to which the expansion is computed, and the order (see multiseries). Note that the function g must return a SERIES data structure or 0, not just a polynomial (see type[SERIES]).
 • The RemoveFunction(g) command removes a definition related to the function g from the multiseries function.
 For example, to remove the information from the multiseries function, use RemoveFunction(g).
 • The GetFunction(g) command returns a procedure related to the function g, provided that such a procedure exists. Otherwise, it returns NULL.
 • The FunctionSupported(g) command returns true if a definition of the function g is known to the multiseries function. It returns false otherwise.

Examples

 > $\mathrm{with}\left(\mathrm{MultiSeries}\right):$

MultiSeries does not know about function mysin:

 > $\mathrm{series}\left(\mathrm{mysin}\left(x\right),x\right)$
 ${\mathrm{mysin}}{}\left({0}\right){+}{\mathrm{D}}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{x}{+}\frac{{1}}{{2}}{}{{\mathrm{D}}}^{\left({2}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{2}}{+}\frac{{1}}{{6}}{}{{\mathrm{D}}}^{\left({3}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{3}}{+}\frac{{1}}{{24}}{}{{\mathrm{D}}}^{\left({4}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{4}}{+}\frac{{1}}{{120}}{}{{\mathrm{D}}}^{\left({5}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{5}}{+}{O}{}\left({{x}}^{{6}}\right)$ (1)

Let the function mysin act as sin (using AddFunction and GetFunction):

 > $\mathrm{AddFunction}\left(\mathrm{mysin},\mathrm{eval}\left(\mathrm{GetFunction}\left(\mathrm{sin}\right)\right)\right)$

Try MultiSeries[series] on mysin

 > $\mathrm{series}\left(\mathrm{mysin}\left(x\right),x\right)$
 ${\mathrm{mysin}}{}\left({0}\right){+}{\mathrm{D}}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{x}{+}\frac{{1}}{{2}}{}{{\mathrm{D}}}^{\left({2}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{2}}{+}\frac{{1}}{{6}}{}{{\mathrm{D}}}^{\left({3}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{3}}{+}\frac{{1}}{{24}}{}{{\mathrm{D}}}^{\left({4}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{4}}{+}\frac{{1}}{{120}}{}{{\mathrm{D}}}^{\left({5}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{5}}{+}{O}{}\left({{x}}^{{6}}\right)$ (2)

Now remove the knowledge of sin from MultiSeries (using function RemoveFunction)

 > $\mathrm{FunctionSupported}\left(\mathrm{sin}\right)$
 ${\mathrm{true}}$ (3)
 > $\mathrm{RemoveFunction}\left(\mathrm{sin}\right)$
 > $\mathrm{FunctionSupported}\left(\mathrm{sin}\right)$
 ${\mathrm{false}}$ (4)

Get back to original state:

 > $\mathrm{AddFunction}\left(\mathrm{sin},\mathrm{eval}\left(\mathrm{GetFunction}\left(\mathrm{mysin}\right)\right)\right)$
 > $\mathrm{RemoveFunction}\left(\mathrm{mysin}\right)$
 > $\mathrm{FunctionSupported}\left(\mathrm{sin}\right)$
 ${\mathrm{true}}$ (5)
 > $\mathrm{FunctionSupported}\left(\mathrm{mysin}\right)$
 ${\mathrm{false}}$ (6)
 > $\mathrm{series}\left(\mathrm{sin}\left(x\right),x\right)$
 ${x}{-}\frac{{1}}{{6}}{}{{x}}^{{3}}{+}\frac{{1}}{{120}}{}{{x}}^{{5}}{+}{O}{}\left({{x}}^{{7}}\right)$ (7)
 > $\mathrm{series}\left(\mathrm{mysin}\left(x\right),x\right)$
 ${\mathrm{mysin}}{}\left({0}\right){+}{\mathrm{D}}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{x}{+}\frac{{1}}{{2}}{}{{\mathrm{D}}}^{\left({2}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{2}}{+}\frac{{1}}{{6}}{}{{\mathrm{D}}}^{\left({3}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{3}}{+}\frac{{1}}{{24}}{}{{\mathrm{D}}}^{\left({4}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{4}}{+}\frac{{1}}{{120}}{}{{\mathrm{D}}}^{\left({5}\right)}{}\left({\mathrm{mysin}}\right){}\left({0}\right){}{{x}}^{{5}}{+}{O}{}\left({{x}}^{{6}}\right)$ (8)