[petsc-users] PetscOptionsGetRealArray command line format
Xiangdong
epscodes at gmail.com
Fri Feb 14 16:21:56 CST 2014
I have a simple script (see below) by just
calling PetscOptionsGetRealArray. I run the program like this: mpirun -np
1 runarraytest -myarray 1,2,3,4,5. However, the output is always "the
length of input myarray is 0".
Can you produce the correct result? Thank you.
Below is the script I use:
#include <petsc.h>
int main(int argc, char **argv)
{
PetscInitialize(&argc, &argv, PETSC_NULL, PETSC_NULL);
double myarray[10];
int nmax;
PetscBool flg;
PetscOptionsGetRealArray(NULL,"-myarray",myarray,&nmax,&flg);
printf("the length of input myarray is %d \n",nmax);
int i;
for(i=0;i<nmax;++i)
{
printf(" %g\n",myarray[i]);
}
PetscFinalize();
return 0;
}
On Fri, Feb 14, 2014 at 3:47 PM, Jed Brown <jed at jedbrown.org> wrote:
> Xiangdong <epscodes at gmail.com> writes:
> > Now I see some random behavior. After compiling the code, for the same
> > command line input, the output sometimes are correct (print values
> > 1,2,3,4,5 with nmax=5), but sometime output all zeros (nmax is zero). I
> did
> > not change anything, but just running same input many times.
> >
> > Any hints for this random behavior? Thank you.
>
> Run with valgrind. It is probably some other memory corruption
> interfering.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140214/7b1eed4b/attachment.html>
More information about the petsc-users
mailing list