Mathematica 7 を実行しており、.Do
を使用して単純なループを並列に実行しようとしていParallelDo
ます。次の標準的なシーケンシャル コードは正常に動作します。
len = 10;
A = Table[0, {len}];
Do[
A[[i]] = i*10;
, {i, 1, len}]
ただし、ParallelDo
標準の代わりに使用するとDo
、次のコードでエラー メッセージが表示されます。
len = 10;
A = Table[0, {len}];
ParallelDo[
A[[i]] = i*10;
, {i, 1, len}]
表示されるエラー メッセージは次のとおりです。
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
General::stop: Further output of Set::noval will be suppressed during this calculation.
General::stop: Further output of Set::noval will be suppressed during this calculation.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
Set::noval: Symbol A in part assignment does not have an immediate value.
このDoループを並行して実行するためにできることはありますか?
ありがとうございました!
アンドリュー・デヤング
カーネギーメロン大学