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 <[email protected]> wrote:
> 
> On Tue, Mar 31, 2015 at 10:13 AM, Mark Adams <[email protected]> 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 <[email protected]> wrote:
> On Tue, Mar 31, 2015 at 5:44 AM, Mark Adams <[email protected]> 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

Reply via email to