Using 'subs' in parallel for more than one equation

1 vue (au cours des 30 derniers jours)
Tejas Adsul
Tejas Adsul le 6 Juil 2018
Commenté : Tejas Adsul le 11 Juil 2018
I have 5 equations in an array: E = [E1;E2;E3;E4;E5]. Each equation is made of symbolic variables x1,y1. I now want to substitute these variables with x2,y2. Right now, I have this simple loop:
for i = 1:5
E(i) = subs(E(i),[x1,y1],[x2,y2]);
end
I was wondering if these substitutions could be carried out simultaneously for each equation, since they are independent of each other. Can I use parfor here, and if so, how should I modify my code?

Réponses (1)

Piotr Balik
Piotr Balik le 8 Juil 2018
Repmat is one of solutions:
E = subs(E,repmat([x1 y1],5,1),repmat([x2 y2],5,1))
Where 5,1 are 5-row 1-column copies of array [x1 y1].
  1 commentaire
Tejas Adsul
Tejas Adsul le 11 Juil 2018
This worked faster than the for loop. However, I tried removing the for loop:
E = subs(E,[x1,y1],[x2,y2]);
This works faster than repmat.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Produits


Version

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by