It should be > call MatNullSpaceCreate( PETSC_COMM_WORLD, PETSC_TRUE, 0, dummyVecs, > nullspace, ierr)
If this doesn't work please send your test code that I can compile myself and figure out what is going on. Barry > On Feb 26, 2018, at 4:18 PM, frank <hengj...@uci.edu> wrote: > > Hello, > > I have a question of the Fortran interface of subroutine MatNullSpaceCreate. > > I tried to call the subroutine in the following form: > > Vec :: dummyVec, dummyVecs(1) > MatNullSpace :: nullspace > INTEGER :: ierr > > (a) call MatNullSpaceCreate( PETSC_COMM_WORLD, PETSC_TRUE, > PETSC_NULL_INTEGER, dummyVec, nullspace, ierr) > > (b) call MatNullSpaceCreate( PETSC_COMM_WORLD, PETSC_TRUE, > PETSC_NULL_INTEGER, dummyVecs, nullspace, ierr) > > (a) and (b) gave me the same error during compilation: no specific subroutine > for the generic MatNullSpaceCreate. > > I am using the latest version of Petsc. I just did a "git pull" and re-build > it. > How can I call the subroutine ? > > In addition, I found two 'petscmat.h90' : > petsc/include/petsc/finclude/ftn-auto/petscmat.h90 and > petsc/src/mat/f90-mod/petscmat.h90. > The former defines a subroutine MatNullSpaceCreate in the above form (b). The > latter provides generic interface for both (a) and (b). > I am not sure if this relates to the error I get. > > Thank you. > > Frank