Vectorize a code that finds the roots of polynomials stored in matrices
Afficher commentaires plus anciens
I need some tips on how to vectorize a code that finds the roots of polynomials stored in matrices. What I have is a multidimensional array that contains 100 matrices of 100-by-3 size. I'm pasting the code below
one = ones ( 100, 100 );
poly.struc = reshape( [ one; gr_fac1; - gr_fac2 ], 100, 3, [] );
poly_roots_select = zeros ( 100, 100);
for j = 1:1:100
poly_matrices = poly.struc ( :, :, j );
for i = 1:1:100
poly_select = poly_matrices ( i, : );
poly_roots = roots ( poly_select );
poly_roots_select ( i , j) = poly_roots ( real ( poly_roots) > 0 , 1 ) ;
end
end
I would like to remove both for loops. At minimum I like to be able to access the matrices stored in poly.struc array without putting a loop for this. Is there also any other way to be able to pass a row vectors from a matrix to roots function without needing a loop?
Thanks in advance
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Polynomials dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!