how to use PetscMap?

Yixun Liu yxliu at fudan.edu.cn
Thu Nov 2 07:46:51 CST 2006


Hi,

I want to change the code, which is based on old version PETSC to version 2.3.2. The old petsc code are,

PetscMap map;
ierr = PetscMapCreateMPI(PETSC_COMM_WORLD,PETSC_DECIDE,n,&map);CHKERRQ(ierr);
ierr = PetscMapGetLocalRange(map,&Istart,&Iend); CHKERRQ(ierr);
ierr = PetscMapDestroy(map); CHKERRQ(ierr);

If 2.3.2 does not support PetscMap, which class should I use?

Best,

Yixun



----- Original Message ----- 
From: "Matthew Knepley" <knepley at gmail.com>
To: <petsc-users at mcs.anl.gov>
Sent: Thursday, November 02, 2006 9:07 PM
Subject: Re: how to use PetscMap?


> No, in 2.3.2 PetscMap no longer exists.
> 
>   Matt
> 
> On 11/2/06, Yixun Liu <yxliu at fudan.edu.cn> wrote:
>>
>>
>> Hi,
>>
>> I reveive the error as,
>>
>> [0]PETSC ERROR:
>> ------------------------------------------------------------------------
>> [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation,
>> probably memory access out of range
>> [0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
>> [0]PETSC ERROR: or see
>> http://www.mcs.anl.gov/petsc/petsc-as/documentation/troubleshooting.html#Signal[0]PETSC
>> ERROR: or try http://valgrind.org on linux or man libgmalloc on Apple to
>> find memory corruption errors
>> [0]PETSC ERROR: likely location of problem given in stack below
>> [0]PETSC ERROR: ---------------------  Stack Frames
>> ------------------------------------
>> [0]PETSC ERROR: Note: The EXACT line numbers in the stack are not available,
>> [0]PETSC ERROR:       INSTEAD the line number of the start of the function
>> [0]PETSC ERROR:       is given.
>> [0]PETSC ERROR: [0] PetscMapInitialize line 41
>> src/vec/vec/impls/mpi/d:\MyVC\PETSC-~1.2-P\src\vec\vec\impls\mpi\pmap.c
>> [0]PETSC ERROR: --------------------- Error Message
>> ------------------------------------
>> [0]PETSC ERROR: Signal received!
>> [0]PETSC ERROR:
>> ------------------------------------------------------------------------
>> [0]PETSC ERROR: Petsc Release Version 2.3.2, Patch 3, Fri Sep 29 17:09:34
>> CDT 2006 HG revision:
>> 9215af156a9cbcdc1ec666e2b5c7934688ddc526
>> [0]PETSC ERROR: See docs/changes/index.html for recent updates.
>> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
>> [0]PETSC ERROR: See docs/index.html for manual pages.
>> [0]PETSC ERROR:
>> ------------------------------------------------------------------------
>> [0]PETSC ERROR: Unknown Name on a cygwin-cx named DMRC-6700512 by DMRC-user
>> Thu Nov 02 16:22:47 2006
>> [0]PETSC ERROR: Libraries linked from
>> /cygdrive/D/MyVC/petsc-2.3.2-p3/lib/cygwin-cxx-debug
>> [0]PETSC ERROR: Configure run at Wed Nov  1 10:08:10 2006
>> [0]PETSC ERROR: Configure options
>> --with-mpi-dir=/cygdrive/d/MPICH2 --with-cc="win32fe cl"
>> --with-fc=0 --with-cxx="win32fe cl" --with-clanguage=cxx
>> --with-blas-lapack-dir=/cygdrive/D/MyVC/petsc-2.3.2-p3/externalpackages/w_mkl_serial_p_8.1.001/mkl_serial_8.1/mkl_8.1_serial/ia32/lib
>> COPTFLAGS="-MD -Z7" CXXOPTFLAGS="-MD -Z7" --useThreads=0 --with-shared=0
>> [0]PETSC ERROR:
>> ------------------------------------------------------------------------
>> [0]PETSC ERROR: User provided function() line 0 in unknown directory unknown
>> file
>> unable to read the cmd header on the pmi context, Undefined dynamic error
>> code.
>>
>> job aborted:
>> rank: node: exit code[: error message]
>> 0: dmrc-6700512: 59: application called MPI_Abort(MPI_COMM_WORLD, 59) -
>> process 0
>>
>> I think this error maybe caused by these codes,
>>
>>  PetscMap *map;
>>  ierr = PetscMapInitialize(PETSC_COMM_WORLD, map);
>>  CHKERRQ(ierr);
>>  ierr = PetscMapSetSize (map, n);
>>  ierr = PetscMapGetLocalRange(map,&Istart,&Iend);
>> CHKERRQ(ierr);
>>
>> Is it correct to use the PetscMap like this?
>>
>> Best,
>>
>> Yixun
>>
>>
>>
>>
> 
> 
> -- 
> "Failure has a thousand explanations. Success doesn't need one" -- Sir
> Alec Guiness
>




More information about the petsc-users mailing list