From: David Knezevic <david.knezevic@ba...>  20060723 13:35:23

Hi all, I'm solving a PDE using an ADIlike method (which is possible because the PDE is amenable to operatorsplitting) in which I store the solution of the PDE in a matrix and sequentially pick out either a row or column of the matrix, load this vector into a libMesh equation system, update it and then store it again in the matrix. This reduces the problem I'm solving from a single 6dimensional problem to a series of 3D problems, which is a significant gain. Anyway, I have this working well in a singleprocessor libMesh implementation, but as you can imagine it's a very computationally intensive exercise so I'd like to move to implementing this in parallel. My main stumbling block is how to implement this loading and storing of solution vectors in parallel. It looks to me like the function "update_global_solution" in System would enable me to store the solution computed on multiple processors in a localized vector, which solves the "storing" part of my problem. However, I can't see an easy way of broadcasting a localized solution vector to the various processors. Is there functionality for this kind of thing in libMesh, or would it require specialized MPI code? Thanks for the help. Regards, David 