Symbolic package: Difference between revisions
Jump to navigation
Jump to search
(Remove notes about needed rewrite) |
No edit summary |
||
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 13: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]