[petsc-users] Errors in running

Barry Smith bsmith at mcs.anl.gov
Fri May 9 08:00:29 CDT 2014


On May 9, 2014, at 7:29 AM, Antonios Mylonakis <ant_mil at hotmail.com> wrote:

> Dear Sir or Madam
> 
> I am a new PETSc user. I am using PETSc library with fortran. 
> I have the following problem. I want to use the matrix-free form of krylov solvers. So I am starting by using the example ex14f.F.
> In this example, within subroutine mymult()  I try call another subroutine which calculates the vector I need as the result of the matrix-vector multiplication.In this second subroutine the vector is defined as a simple array. (Is this the problem?) 

   A PETSc Vec is NOT a simple array you cannot do something like

      myroutine( x)
      double x(*)
      ….


     anotherroutine(y)
      Vec y
      call myroutine(y)

      to access local entries in PETSc Vec directly you need to call VecGetArray() or VecGetArrayF90()

  Barry

 
> The problem is that I receive errors when I'm attempting to run the program.   The problem seems to be related with memory, but I am not sure.
> 
> The first line of errors can be seen below:
> "Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range"
> 
> 
> Could you help me?
> 
> Thanks in advance



More information about the petsc-users mailing list