Function simpleRoots() finds a roots of polynomial input. Function works very effective for polynomes in form [a 0 0 0 0 0 ... 0 0 0 b] or [a a a a .... a a a a], also for very large polynomes ( approx 30 000 coefficients ).
For polynome with 3000 or more coefficients, it is more than 500-times faster than standard roots() function (for specific form of polynomes).
Function also solves a 2 specific situations:
- removing irrelevant starting zeros in polynome (simpleRoots([0 a b c]) -> simpleRoots([a b c]))
- solving a roots, which are located in zero point (simpleRoots([a b c 0 0]) -> [0.0; 0.0; SimpleRoots([a b c]) ] )
For polynomes, which are not in specific form, this function calls standard roots() function.
Example script (which demonstrate a speed-up in compare with roots() function ) is also attached (scriptRoots.m).
引用格式
Peter Krammer (2024). function simpleRoots for finding a roots of polynome (https://www.mathworks.com/matlabcentral/fileexchange/134177-function-simpleroots-for-finding-a-roots-of-polynome), MATLAB Central File Exchange. 检索时间: .
MATLAB 版本兼容性
创建方式
R2023a
兼容任何版本
平台兼容性
Windows macOS Linux标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!版本 | 已发布 | 发行说明 | |
---|---|---|---|
0.9.1 |