# Difference between revisions of "Symbolic package"

Jump to navigation
Jump to search

(Remove notes about needed rewrite) |
|||

Line 2: | Line 2: | ||

[[Category:Octave-Forge]] | [[Category:Octave-Forge]] | ||

+ | |||

+ | Demo of Anonymous function to symbolic function and back to anonymous function | ||

+ | and then the use of the interval pkg. | ||

+ | |||

+ | % this is just a formula to start with | ||

+ | |||

+ | % have fun and change it if you want to. | ||

+ | |||

+ | f=@(x) x.^2 +3*x-1 + 5*x.*sin(x); | ||

+ | |||

+ | % the next 2 line take the Anonymous function into a symbolic formula | ||

+ | |||

+ | syms x; | ||

+ | |||

+ | ff=formula(f(x)); | ||

+ | |||

+ | % now calculate the derivative of the function | ||

+ | |||

+ | ffd=diff(ff); | ||

+ | |||

+ | % and convert it back to an Anonymous function | ||

+ | |||

+ | df=function_handle(ffd) | ||

+ | |||

+ | |||

+ | % this uses the interval pkg. to find all the roots between -15 an 10 | ||

+ | |||

+ | fzero (f, infsup (-15, 10), df) | ||

+ | |||

+ | ans ⊂ 4×1 interval vector | ||

+ | |||

+ | [-5.743488743719015, -5.743488743719013] | ||

+ | [-3.0962279604822407, -3.09622796048224] | ||

+ | [-0.777688831121563, -0.7776888311215626] | ||

+ | [0.22911205809043574, 0.2291120580904359] |

## Revision as of 05:17, 29 June 2015

The symbolic package is part of the octave-forge project.

Demo of Anonymous function to symbolic function and back to anonymous function and then the use of the interval pkg.

% this is just a formula to start with

% have fun and change it if you want to.

f=@(x) x.^2 +3*x-1 + 5*x.*sin(x);

% the next 2 line take the Anonymous function into a symbolic formula

syms x;

ff=formula(f(x));

% now calculate the derivative of the function

ffd=diff(ff);

% and convert it back to an Anonymous function

df=function_handle(ffd)

% this uses the interval pkg. to find all the roots between -15 an 10

fzero (f, infsup (-15, 10), df)

ans ⊂ 4×1 interval vector

[-5.743488743719015, -5.743488743719013] [-3.0962279604822407, -3.09622796048224] [-0.777688831121563, -0.7776888311215626] [0.22911205809043574, 0.2291120580904359]