[petsc-users] Output question for ex29.
Matthew Knepley
knepley at gmail.com
Thu Jun 9 18:18:28 CDT 2011
On Thu, Jun 9, 2011 at 6:01 PM, <zhenglun.wei at gmail.com> wrote:
> Dear Sir/Madam,
> I'm still studying on the ex29 of /src/ksp/ksp/example/tutorial. Before I
> met a problem on VecView_VTK in parallel computation. I'm trying to modify
> it in order to output some data from the computation.
>
> 1) My first questions is that what does this section do in VecView_VTK:
>
> 272: MPI_Comm_rank(comm, &rank);
> 273: MPI_Comm_size(comm, &size);
> 274: MPI_Reduce(&n, &maxn, 1, MPIU_INT, MPI_MAX, 0, comm);
> 275: tag = ((PetscObject) viewer)->tag;
> 276: if (!rank) {
> 277: PetscMalloc((maxn+1) * sizeof(PetscScalar), &values);
> 278: for(i = 0; i < n; i++) {
> 279: PetscViewerASCIIPrintf(viewer, "%G\n", PetscRealPart(array[i]));
> 280: }
> 281: for(p = 1; p < size; p++) {
> 282: MPI_Recv(values, (PetscMPIInt) n, MPIU_SCALAR, p, tag, comm, &status);
> 283: MPI_Get_count(&status, MPIU_SCALAR, &nn);
> 284: for(i = 0; i < nn; i++) {
> 285: PetscViewerASCIIPrintf(viewer, "%G\n", PetscRealPart(array[i]));
> 286: }
> 287: }
> 288: PetscFree(values);
> 289: } else {
> 290: MPI_Send(array, n, MPIU_SCALAR, 0, tag, comm);
> 291: }
>
> What I understand is: it gather all the data from different process in
> parallel computation, and output it to the 'viewer'. I comment out
> everything in VecView_VTK except this part, there is no error message coming
> up in my parallel computation so far.
>
> 2) however, I really don't know how did it split the domain for parallel
> computation. For example, if I use 4 processes, is the domain split like:
>
The DMDA describes the domain splitting.
Matt
> a)
> |
> 0 | 1
> |
> ---------------|--------------
> |
> 2 | 3
> |
>
> b)
> |
> 0 | 2
> |
> ---------------|--------------
> |
> 1 | 3
> |
>
> c)
> | | | |
> | | | |
> 0 | | 2 | |
> | 1 | | 3 |
> | | | |
> | | | |
>
> d)
> 0
> ------------------------
> 1
> ------------------------
> 2
> ------------------------
> 3
>
> thanks in advance,
> Alan
--
What most experimenters take for granted before they begin their experiments
is infinitely more interesting than any results to which their experiments
lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110609/e298b5bf/attachment.htm>
More information about the petsc-users
mailing list