[petsc-dev] PETSC_COMM_SELF == 0

Barry Smith bsmith at mcs.anl.gov
Tue Mar 31 11:14:50 CDT 2015


PetscErrorCode PetscInitializeFortran(void)
{
  MPI_Fint c1=0,c2=0;

  if (PETSC_COMM_WORLD) c1 =  MPI_Comm_c2f(PETSC_COMM_WORLD);
  c2 =  MPI_Comm_c2f(PETSC_COMM_SELF);
  petscsetcommonblock_(&c1,&c2);

Note that this routine is called automatically by the Fortran petscinitialize function.

  Barry

> On Mar 31, 2015, at 10:19 AM, Matthew Knepley <knepley at gmail.com> wrote:
> 
> On Tue, Mar 31, 2015 at 10:13 AM, Mark Adams <mfadams at lbl.gov> wrote:
> No, I don't have a C main program (like the doc says).
> 
> I can see COMM_WORLD set in the Fortran initialize wrapper, but where is COMM_SELF set?
> 
>    MAtt
>  
> On Tue, Mar 31, 2015 at 11:05 AM, Matthew Knepley <knepley at gmail.com> wrote:
> On Tue, Mar 31, 2015 at 5:44 AM, Mark Adams <mfadams at lbl.gov> wrote:
> I'm finding that my fortran code on OSX has PETSC_COMM_SELF == 0.
> 
> I can not find where PETSC_COMM_SELF is created.
> 
> Its set in PetscInitializeFortran(). Did you call that?
> 
>   Matt
>  
> 
> Mark
> 
> 
> 
> -- 
> 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
> 
> 
> 
> 
> -- 
> 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




More information about the petsc-dev mailing list