> On Sep 9, 2018, at 4:54 AM, Stefano Zampini <[email protected]> wrote:
>
> I just noticed a strange behaviour in master. Take mat/examples/ex1.c
There is no such example and the examples in the tutorials and tests
subdirectories don't work with the given arguments so where is this example?
>
> ./ex1 -h -mat_type mpiaij
>
> does not print the help for the specific MPIAIJ options, only the MPIAIJ
> options header
>
> ....
> Matrix (Mat) options -------------------------------------------------
> -mat_block_size <-1>: Set the blocksize used to store the matrix
> (MatSetBlockSize)
> -mat_type <aij>: Matrix type (one of) mffd mpimaij seqmaij maij is shell
> composite mpiaij seqaij mpiaijperm seqaijperm seqaijcrl mpiaijcrl mpibaij
> seqbaij mpisbaij seqsbaij mpidense seqdense mpiadj scatter blockmat nest
> mpisell seqsell preallocator dummy hypre (MatSetType)
> -mat_is_symmetric: Checks if mat is symmetric on MatAssemblyEnd()
> (MatIsSymmetric)
> -mat_is_symmetric <0.>: Checks if mat is symmetric on MatAssemblyEnd()
> (MatIsSymmetric)
> -mat_null_space_test: <FALSE> Checks if provided null space is correct in
> MatAssemblyEnd() (MatSetNullSpaceTest)
> MPIAIJ options
> -mat_new_nonzero_location_err: <FALSE> Generate an error if new nonzeros
> are created in the matrix structure (useful to test preallocation)
> (MatSetOption)
>
> Instead, if you run e.g. MFFD, it works
>
> Matrix (Mat) options -------------------------------------------------
> -mat_block_size <-1>: Set the blocksize used to store the matrix
> (MatSetBlockSize)
> -mat_type <aij>: Matrix type (one of) mffd mpimaij seqmaij maij is shell
> composite mpiaij seqaij mpiaijperm seqaijperm seqaijcrl mpiaijcrl mpibaij
> seqbaij mpisbaij seqsbaij mpidense seqdense mpiadj scatter blockmat nest
> mpisell seqsell preallocator dummy hypre (MatSetType)
> -mat_is_symmetric: Checks if mat is symmetric on MatAssemblyEnd()
> (MatIsSymmetric)
> -mat_is_symmetric <0.>: Checks if mat is symmetric on MatAssemblyEnd()
> (MatIsSymmetric)
> -mat_null_space_test: <FALSE> Checks if provided null space is correct in
> MatAssemblyEnd() (MatSetNullSpaceTest)
> Matrix-free Finite Differencing (MatMFFD) options
> -------------------------------------------------
> -mat_mffd_type <(null)>: Matrix free type (one of) ds wp (MatMFFDSetType)
> -mat_mffd_err <1.49012e-08>: set sqrt relative error in function
> (MatMFFDSetFunctionError)
> -mat_mffd_period <1>: how often h is recomputed (MatMFFDSetPeriod)
> -mat_mffd_check_positivity: <FALSE> Insure that U + h*a is nonnegative
> (MatMFFDSetCheckh)
> -mat_new_nonzero_location_err: <FALSE> Generate an error if new nonzeros
> are created in the matrix structure (useful to test preallocation)
> (MatSetOption)
> -mat_new_nonzero_allocation_err: <FALSE> Generate an error if new nonzeros
> are allocated in the matrix structure (useful to test preallocation)
> (MatSetOption)
>
> What is the proper fix? remove the PetscOptionsBegin call and replace
> PetscOptionsEnd() with PetscOptionsTail()?
>
> --
> Stefano