Solve Poisson Problem with Finite Difference using parallelization

3 ビュー (過去 30 日間)
Kilian Thomas
Kilian Thomas 2014 年 8 月 8 日
コメント済み: Kilian Thomas 2014 年 8 月 8 日
Hi, I am trying to solve the poisson problem with finite difference. However, depending on the grid size, the calculation may take time. That's why I want to using parallelism. I already solved this problem using and I would like to do it on matlab. Is there any way in matlab to solve two subproblems in parallel that need to communicate with each other?
Thank you

採用された回答

Edric Ellis
Edric Ellis 2014 年 8 月 8 日
You might consider using SPMD blocks within MATLAB - these run blocks of code in parallel, and allow communication using the labSend / labReceive family of functions.
  1 件のコメント
Kilian Thomas
Kilian Thomas 2014 年 8 月 8 日
thank you. I think it could work with this. I only need to have the parallel tool now.
thank you :)

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

その他の回答 (1 件)

Ahmet Cecen
Ahmet Cecen 2014 年 8 月 8 日
Poisson equation boils down to a simple Ax=b problem. If you have the parallel computing toolbox, using mldivide (or the plain \ operator) will automatically exploit all available threads. Otherwise, I would look into 3rd party MP/MPI implementations for MATLAB.
  3 件のコメント
Ahmet Cecen
Ahmet Cecen 2014 年 8 月 8 日
Gauss Seidel is an iterative method to solve LINEAR problems of the exact form Ax=b. Your problem is very much linear. The choice of not using mldivide is I am guessing due to the fact that you are interested in a transient solution rather than steady state, which was not clear in your question.
Kilian Thomas
Kilian Thomas 2014 年 8 月 8 日
Yes sorry. You are totally right. I will have a look at your solution too. It could be much faster. Thank you :)

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

カテゴリ

Help Center および File ExchangeProgramming についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by