[petsc-users] petsc4py bool type
Zhang, Hong
hongzhang at anl.gov
Tue Apr 25 13:36:54 CDT 2017
PetscBool is indeed an int. So there is nothing wrong. PETSc does not use bool in order to support C89.
Hong (Mr.)
> On Apr 25, 2017, at 11:48 AM, Garth N. Wells <gnw20 at cam.ac.uk> wrote:
>
> I'm seeing some behaviour with bool types in petsc4py that I didn't
> expect. In the Python interface, returned Booleans have type '<class
> 'int'>', where I expected them to have type ' <class 'bool'>'. Below
> program illustrates issue. Seems to be related to bint in cython. Am I
> doing something wrong?
>
> Garth
>
>
> from petsc4py import PETSc
> A = PETSc.Mat()
> A.createAIJ((2, 2))
> A.setOption(PETSc.Mat.Option.SYMMETRIC, True)
> symm = A.isSymmetricKnown()
> print("Symmetry set:", symm[0] is True)
> print("Symmetry set:", symm[0] == True)
> print("Bool type:", type(symm[0]))
More information about the petsc-users
mailing list