Using a Variable calculated in a parfor loop

1 回表示 (過去 30 日間)
Alessandro
Alessandro 2015 年 11 月 25 日
コメント済み: Walter Roberson 2015 年 12 月 14 日
I am calculating the internal forces of the finite elements in a mesh inside a parfor loop:
parfor iel=1:nel
id_1 = Connect(iel,1); % ID of 1st Node
id_2 = Connect(iel,2); % ID of 2nd Node
area = Connect(iel,3); % extract cross-sectional area
el_disp = [U(gdl_n*id_1-(gdl_n-1):gdl_n*id_1,1); U(gdl_n*id_2-(gdl_n-1):gdl_n*id_2,1)]; % Element Displacement Vector [U_i U_j]
[qi{iel,1}] = Internal_Forces(id_1,id_2,el_disp,area,mechanical_parameters];
end
I am storing the internal forces 'qi' in a cell. This operation is performed correctly, but then I am unable to use the so calculated variable outside such loop (I am trying to use it as the input for a function). Any ideas?
  3 件のコメント
Alessandro
Alessandro 2015 年 12 月 14 日
Yes, I am. I receive an error saying that the variable cannot be used outside the parfor loop (will give you more details when I get back to work)!
Walter Roberson
Walter Roberson 2015 年 12 月 14 日
Does the problem change if you use
qi{iel,1} = Internal_Forces(id_1,id_2,el_disp,area,mechanical_parameters];
without the []?
Also, in the code you posted you have a carriage return between mechanical_parameters and the ] that follows it.

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by