Skip to content

incompatibility with PETSc in complex mode #17

Description

@francesco-ballarin

I tried to run the testsuite with a complex PETSc installation, and got

FAILED test_eps.py::test_eps_ghep_eigfuncs - ZeroDivisionError: float division by zero
FAILED test_ksp.py::test_ksp_preonly_lu - assert 0.5333333333319396 < 0.0001
FAILED test_ksp.py::test_ksp_cg_gamg - assert 0.5333333333319396 < 0.0001
FAILED test_pc.py::test_pc_gamg - assert 0.5333333333319396 < 0.0001
FAILED test_pc.py::test_pc_hiptmaier_xu_sor - netgen.libngpy._meshing.NgException: BaseVector::operator/=: division by zero
FAILED test_pc.py::test_pc_hiptmaier_xu_bjacobi - netgen.libngpy._meshing.NgException: BaseVector::operator/=: division by zero
FAILED test_snes.py::test_snes_toy_newtonls - assert -6 in [4, 3, 2]

plus one of the SNES tests getting stuck at

7822 SNES Function norm 8.626434292221e-01 
7823 SNES Function norm 8.626434292221e-01 
7824 SNES Function norm 8.626434292221e-01 
7825 SNES Function norm 8.626434292221e-01 
7826 SNES Function norm 8.626434292221e-01 
7827 SNES Function norm 8.626434292221e-01 
7828 SNES Function norm 8.626434292221e-01 
7829 SNES Function norm 8.626434292221e-01 
7830 SNES Function norm 8.626434292221e-01 
7831 SNES Function norm 8.626434292221e-01 
7832 SNES Function norm 8.626434292221e-01 
7833 SNES Function norm 8.626434292221e-01 
7834 SNES Function norm 8.626434292221e-01 

and forcing me to interrupt the test session.

I do realize that I may sound like a fool trying to use a complex PETSc since (to my limited understanding) ngsolve only uses real numbers. However, I am doing that because ngsPETSc is also employed as a dependency of other libraries (firedrake and FEniCSx), which may legitimately employ PETSc in complex mode.

Possible course of actions:

  1. support complex PETSc, or
  2. clarify which parts of ngsPETSc are supposed to work with complex PETSc (I guess, all parts interfacing firedrake and FEniCSx), and which parts are not supposed to work (I guess, those interfacing ngsolve).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions